私はVimで多くのPHPコードを編集しており、自分のにいくつかのマクロがあると思わぬ障害に遭遇しました.vimrc
。
現在、これら2つのマクロを使用して、Cスタイルでコメント/コメント解除します
"c-style (//) comment (press the [.] key)
au FileType php vnoremap . :s/^\(\s*\)\(.\+\)$/\1\/\/\2/<CR>:noh<CR>gv
"c-style (//) uncomment (press the [,] key)
au FileType php vnoremap , :s/^\(\s*\)\/\//\1/<CR>:noh<CR>gv
そして、これら2つはHTMLスタイルでコメント/コメント解除します
"html-style (<!-- -->) comment (press the [.] key)
au FileType html vnoremap . :s/^\(\s*\)\(.\+\)$/\1<!-- \2 -->/g<CR>:noh<CR>gv
"html-style (<!-- -->) uncomment (press the [,] key)
au FileType html vnoremap , :s/^\(\s*\)<!-- \(.*\) -->/\1\2/g<CR>:noh<CR>gv
これらのマクロは、目的のファイルタイプに適用すると問題なく機能しますが、PHPファイル内にHTMLが埋め込まれていることが多いため、PHPのコメントスタイルは役に立ちません。
VimがPHPファイル内のHTMLコードのチャンクで動作しているかどうかを検出し、正しいコメント動作を適用する方法はありますか?
編集:私は手動でファイルタイプを設定できること、そしてこれに使用できるプラグインがあることを知っています、より良いマクロを書くことについてもっと学びたいと思っていました。
2
あなたは、ソート探しのだだからVimのEmacsのMMMモードにアナログリードに、vim.wikia.com/wiki/...
—
ジル「SO-停止されて悪」