質問

私は簡単なの目標地図Ctrl-Cコマンドとは思わない私を殺すのにも使われvim、自動的に挿入する行の先頭の文字をコメントがlineによるファイルのfiletype.

きっかけになるかもしれないと思を使用autocommandの認識のファイルの種類や設定、用語集vim変数を正しいコメント文字のファイルが開きます。ましたが、かっこいいようなもの:

" Control C, which is NEVER used. Now comments out lines!
autocmd BufNewFile,BufRead *.c let CommentChar = "//"
autocmd BufNewFile,BufRead *.py let CommentChar = "#"
map <C-C> mwI:echo &CommentChar<Esc>`wll

この地図マークの現在の場所への行の先頭に挿入モードでは、 エコーのコメント文字(s)で, 入力コマンドモードの設定マーク、二つの文字の右側に挿入されコメント文字と仮定してCスタイルのコメント).

の斜部分をうまく、でありがとうございました。場としてホルダーを表すのにしたいと思います。きっかけにして、自分にはどのように実現する。ボーナスポイントご利用の場合はstrlen(CommentChar)ステップと、正しい数の空間に。追加ボーナスポイントのvim-マスターがどのようなブロックスタイルのコメントの場合はビジュアルモード!!

まだかなり新しいvimでスクリプティング;my.vimrcはmeasly98線の長い場合が力を貸してください説明任意の答えをお受けします。感謝。

役に立ちましたか?

解決

利用できる <C-r> こちら:

noremap <C-c> mwI<C-r>=g:CommentChar<CR><Esc>`wll

:h i_CTRL-R.

もう NERDCommenter プラグインは、マッピングのようなものです:

" By default, NERDCommenter uses /* ... */ comments for c code.
" Make it use // instead
let NERD_c_alt_style=1
noremap <C-c> :call NERDComment(0, "norm")<CR>

まとめて定義コメント文字ます。

他のヒント

まったところを見計らいこのvim wikiのヒントもポイントを利用でやっている。にあったスペースの最後にライン(s)は、何らかの理由だろうか小さい。

" Set comment characters for common languages
autocmd FileType python,sh,bash,zsh,ruby,perl,muttrc let StartComment="#" | let EndComment=""
autocmd FileType html let StartComment="<!--" | let EndComment="-->"
autocmd FileType php,cpp,javascript let StartComment="//" | let EndComment=""
autocmd FileType c,css let StartComment="/*" | let EndComment="*/"
autocmd FileType vim let StartComment="\"" | let EndComment=""
autocmd FileType ini let StartComment=";" | let EndComment=""

" Toggle comments on a visual block
function! CommentLines()
    try
        execute ":s@^".g:StartComment." @\@g"
        execute ":s@ ".g:EndComment."$@@g"
    catch
        execute ":s@^@".g:StartComment." @g"
        execute ":s@$@ ".g:EndComment."@g"
    endtry
endfunction

" Comment conveniently
vmap <Leader>c :call CommentLines()<CR>
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top