テキストファイルやコードのテキスト行にコメントを付けたくありません。ブロックコメントを挿入しようとしています。.vimrc文書。たとえば、次のようにして行コメントを挿入します"
。
" remove spaces and tabs as well at the end of line automatically while saving
autocmd BufWritePre * :%s/\s\+$//e
今、私は素晴らしい機能を追加するためにインターネットを検索し、長年にわたって収集した比較的大きな設定/設定/プラグインコレクションを持っています。私の.vimrcファイルに大きなコメントブロックを追加したいです。各行に追加する"
ことはオプションですが、ブロックコメント構文を探しています。/**/
Cに似ています。
//
同じような"
/* */
同じ_____?
Unix.SE、SO、およびインターネット検索はあまり役に立ちませんでした。
答え1
私のソリューションはコードをfunction
。
たとえば、vimrcではin-placeでうまく動作します。トレドック構文強調テストには、先行文字のない実際のブロックコメントも必要です。私のvimrcはheredocを設定した直後にこのようなブロックを使用します。構文範囲。
function! _blockcomment()
" free text comment
You can write free text here,
but vim will try to highlight it as vimscript!
" markdown heredoc
test <<MD
### Nevertheless ###
* for testing my fuzzy SyntaxRange heredocs
* having no leading chars is essential
* and the blockcomment function does the trick
MD
endfunction
このソリューションは@Stéphaneのトリックに似ていますif 0
が、私には効果がありませんでした。この関数を絶対に呼び出さないでください!
答え2
これは不可能だと思います。あなたができる最善の方法は、いくつかのテキストを選択し、s/^/"/
vimの最初の文字に対して検索/置換を実行して"
各行の先頭にaを挿入することです。
vimプラグインオタク解説者これを簡単にするのに役立ちます。
答え3
人生を変えるプラグインtpope
というものがあります。vim-commentary
https://github.com/tpope/vim-commentary
このプラグインは以下を提供します。:
- 理由
- 正しくインデントされたコメント
- 空または不要な行にコメントを付けないでください。
使用法:
- Vundle(または私の考えではPathogen)を介してインストールされます。
- テキストを強調表示して押すと、次のよう
:
に表示されます。:<,'>
- ここに説明を入力し
:<,'>Commentary
てEnterを押します。 - 状態。これで芽が終わりました。
答え4
tComment
Vimプラグインの使用:http://www.vim.org/scripts/script.php?script_id=1173
はい、Pythonをサポートしています(2011年に追加)。
説明:TCommentはトグルスイッチのように動作します。つまり、コメントアウトされていない行を含むテキストをコメントアウトし、コメントアウトされているテキスト(コメントアウトされていない行を含まないテキスト)のコメントを削除します。
ファイルタイプが正しく定義されている場合:TCommentは、&commentstringまたは&comments値に基づいて使用するコメント文字列を決定します。一部のファイル形式では、コメント定義が正しく定義されています。 |tcomment#DefineType()|独自の定義を追加できます。
TCommentは、vimスクリプトのruby / python / perl領域、phpコードのHTML、JavaScriptなど、基本的なファイル形式とは異なるファイル形式の埋め込みコードを処理する方法を知っています。
演算子として(g:tcommentMapLeaderOp1とg:tcommentMapLeaderOp2を介してプレフィックスをカスタマイズできます):
gc{motion} :: Toggle comments (for small comments within one line the &filetype_inline style will be used, if defined) gcc :: Toggle comment for the current line gC{motion} :: Comment region gCc :: Comment the current line
主キーマッピング:
<c-_><c-_> :: :TComment <c-_><space> :: :TComment <QUERY COMMENT-BEGIN ?COMMENT-END> <c-_>b :: :TCommentBlock <c-_>a :: :TCommentAs <QUERY COMMENT TYPE> <c-_>n :: :TCommentAs &filetype <QUERY COUNT> <c-_>s :: :TCommentAs &filetype_<QUERY COMMENT SUBTYPE> <c-_>i :: :TCommentInline <c-_>r :: :TCommentRight <c-_>p :: Comment the current inner paragraph
_をガイドとして使用する補助キーマッピングセットもあります(ターミナルで好む)。