一連のテキストを選択してコメントアウトするにはどうすればよいですか?
現在、最初の行に移動し、挿入モードに移動して#
と入力します left-arrowdown-arrow 次に、そのシーケンスを繰り返します。おそらく、.
繰り返し機能を使用して各行を実行することにより、いくつかのキーストロークを節約します。
とにかく、(たとえば)ビジュアルモードで複数の行を選択するか、行の範囲とex( 'colon')コマンドを使用して、その範囲に対して#
ですべての行をコメント化して、それらは「ブロックコメント」です。
ブロックコメントをすばやく「コメント解除」する(#
を削除する)機能もいいでしょう。
次のコマンドで実行できます。
コメント用:
:66,70s/^/#
コメントを外す場合:
:66,70s/^#/
明らかに、ここでは66行目から70行目までを含めてコメントしています。
まず、コメントを付けるブロックコードの最初の行の最初の文字にカーソルを移動し、次のように入力します。
Ctrl + v
その後、vimはVISUAL BLOCK
モードに入ります。 j
を使用して、コードブロックの最終行に到達するまでカーソルを下に移動します。次に、次のように入力します。
Shift + i
vimはINSERT
モードになり、カーソルは最初の行の最初の文字にあります。最後に、#
を入力してからESC
を入力すると、コードブロックにコメントが付けられます。
コメントを解除するには、同じことを行いますが、Shift + I
と入力する代わりに、x
と入力して、#
モードでハイライト表示した後、VISUAL BLOCK
をすべて削除します。
完全を期すために、ここに別の方法があります。
v
を押してビジュアルモードに入りますup
/down
矢印またはj
/k
):s/^/# /
これは次のように変換されます:選択中(:
)行頭の置換(^
)「#」付き次の手順は、コマンドモードで実行されます。
mt
でマーカーを設定します:'t,.s/^/#/
を発行しますm#
、ここで#
は任意の文字を示し、現在の場所にマーカーを配置します。場所は後で'#
を使用して参照できます。ここで、#
は以前と同じ文字です。私たちのケースでは、t
という文字を使用しました:'t,.s/^/#/
は次のように読み取ります::
複雑なコマンドの接頭辞't,.
は、次のコマンドが適用される範囲を定義します。この例では、マーカー't
から現在の行.
までです。s/^/#/
は、すべての行頭^
をリテラル文字#
に置き換える置換式です。前述のいずれかのNERDCommenterを使用しますが、それが利用できない場合は、ビジュアルモードを使用します。私はVisual Lineモードに入り、選択を行います。多くの場合、空白のブロックなので、 V{ 次に、ビジュアルブロックモードに変更します。 Ctrl+Q 次に、行の先頭にコメント記号を挿入します I、テキストのブロックをコメントアウトするには、私はやります
V{<C-Q>I#<Esc>