Linux
 Computer >> コンピューター >  >> システム >> Linux

Vimエディタで複数行をまとめてコメントアウトする4つの方法

Vimエディタで複数行をまとめてコメントアウトする4つの方法

Vimは、最も人気があり影響力のあるコマンドラインテキストエディタのひとつです。豊富な機能と高いカスタマイズ性を備えており、ターミナル上で作業する開発者にとって非常に強力なツールとなっています。一方で、Vimは初心者にとってとっつきにくいエディタでもあります。理由は「習得が難しいから」というよりも、ショートカット、モード、キーバインドといった独自の操作体系に慣れるまで時間がかかるためです。実際、「Vimの終了方法すらわからない」という新規ユーザーが多いことは有名な話です。

この記事では、複数のコードブロックを素早く簡単にコメントアウトする手順を解説し、Vimへの苦手意識を克服するお手伝いをします。

まず、複数行をコメント化する前に、1行だけをコメントアウトする基本操作を押さえておきましょう。ここを出発点として説明を進めます。

Vimで1行だけコメントアウトする方法

Vimで単一の行をコメントアウトするには、Ctrl + V を押してビジュアルモードに入ります。次に、コメントしたい行へ移動し、C キーを押します。

Vimの設定内容にもよりますが、これで選択した行がコメントアウトされるはずです。これだけで完了です。簡単ですね。

それでは、もう少し踏み込んで見ていきましょう。

複数行をコメントアウトする方法

複数行のコメントアウトの手順を解説するために、ここではシンプルなPythonスクリプトを使用します。

vim comments.py
Vimエディタで複数行をまとめてコメントアウトする4つの方法

方法1:行番号を指定してコメントする

1つ目の方法は、行番号を使ってコメントアウトする方法です。Vimでは、開始行と終了行を指定して、その範囲をまとめてコメント化できます。

まず、編集したいファイルをVimで開きます。

次に、ESC キーを押してコマンドモードに切り替えます。

そして、以下のコマンドを入力します。

:[start],[end]/s/^/#

[start]にはコメント開始の行番号、[end]にはコメント終了の行番号を指定します。

以下のスクリーンショットは、15行目から25行目までをこのコマンドでコメントアウトする例です。

:15,25s/^/#
Vimエディタで複数行をまとめてコメントアウトする4つの方法

方法2:範囲を選択(ハイライト)してコメントする

コメントアウトしたい箇所の行番号がわからない場合は、対象ブロックをハイライトで選択してからコメント化する方法が便利です。

この方法では、まずコメントを開始したい行へジャンプし、Shift + V を押します。

すると、カーソルがある行全体がハイライト表示されます。

続けて、上下の矢印キーでコメントアウトしたい行を選択していきます。

補足: マウスのスクロールホイールで行を選択することも可能です。

Vimエディタで複数行をまとめてコメントアウトする4つの方法

対象ブロックを選択できたら、RETURN キーを押してビジュアルラインモードを終了します。

次に ESC キーを押してコマンドモードに切り替え、以下のコマンドを入力します。

:s/^/#

Enterキーを押してコマンドを実行すると、選択していた行がすべてコメントアウトされます。

Vimエディタで複数行をまとめてコメントアウトする4つの方法

方法3:正規表現を使ってコメントする

Vimは正規表現もサポートしており、特定のキーワードを含む行だけをまとめてコメントアウトすることもできます。特定の語句を含む行をコメント化するコマンドは以下のとおりです。

:g/\keyword/s/^/#

このコマンドの「keyword」の部分には、コメントアウトしたい特定の語句を指定します。

以下の例では、キーワード「True」を含むすべての行をコメントアウトしています。

:g/\True/s/^/#
Vimエディタで複数行をまとめてコメントアウトする4つの方法

Vimはコマンド実行前に、対象となる語句を自動的にハイライト表示してくれるので安心です。

最後に ENTER キーを押してコマンドを実行します。

方法4:ビジュアルモードで一括挿入する

Vimのビジュアルモードを使えば、コードブロック全体を一度にコメントアウトすることもできます。

まず、コメントを開始したい行へカーソルを移動し、Ctrl + V を押してビジュアルモードを有効にします。

上下の矢印キーで、コメントアウトしたいすべての行を選択しましょう。各行の先頭にハイライトが表示され、その行が選択状態であることがわかります。

Vimエディタで複数行をまとめてコメントアウトする4つの方法

対象の行を選択したら、Shift + I を押して挿入モードに入ります。

次に、対象ファイル用のコメント記号を入力します。今回はPythonコードなので、シャープ記号(#)を挿入します。

最後に ESC キーを押せば、選択したすべての行にコメント記号が一括で挿入されます。

Vimエディタで複数行をまとめてコメントアウトする4つの方法

複数行のコメントを解除する方法

逆に、複数行のコメントを解除(アンコメント)したい場面もあるでしょう。その場合もビジュアルモードが活躍します。

まず、コメント解除したい行へカーソルを移動し、Ctrl + V を押してハイライトモードを起動します。

上下の矢印キーで、コメント解除したいすべての行を選択してください。範囲を選択できたら、X キーを押すことでコメント記号を削除できます。

もうひとつの方法として、コメント記号で始まる行を一括削除するコマンドを使うやり方もあります。

そのコマンドは以下のとおりです。

:%s/^<comment symbol>/
Vimエディタで複数行をまとめてコメントアウトする4つの方法 Vimエディタで複数行をまとめてコメントアウトする4つの方法

使用する際は、「comment symbol」の部分を、実際に削除したいコメント記号に置き換えることを忘れないでください。

まとめ

Vimは優れたテキストエディタであり、ターミナル上で快適かつ効率的にテキストファイルを扱うことができます。このチュートリアルでは、Vimで複数行をコメントアウトするさまざまな方法を紹介しましたが、これはVimの能力のごく一部にすぎません。例えば、Vimをワープロのように使うことも可能です。経験豊富なVimユーザーの方は、ぜひ他のVimの便利なTipsやトリックもチェックしてみてください。


  1. LinuxでVimエディターを終了する8つの方法を徹底解説

    Vimは非常に強力なテキストエディターとして知られていますが、その一方で学習曲線が急であることでも有名です。コマンドラインでの作業が多いなら、少なくとも基本操作は覚えておく価値があります。しかし、きちんと学んでいないと、Vimを終了するという単純な操作さえ難しく感じてしまうかもしれません。普段使っているキーボードショートカットはここでは役に立ちません。これまでのコンピューター経験で身につけた知識も通用しません。Vimは独自の世界を持つエディターであり、終了するだけであっても「Vim流」のやり方を学ぶ必要があるのです。Vimを誤って起動してしまったときの緊急脱出法別のコマンドを実行するつもりが、

  2. Windows 10で複数ディスプレイのタスクバーを非表示にする3つの方法

    マルチモニター環境は今や一般的になりつつあります。見た目が良いだけでなく、複数のアプリを同時に操作する際の作業効率向上にも大きく役立ちます。Windows 10には、1台のPCで複数のディスプレイを活用するための機能や設定が数多く用意されており、ユーザーは各ディスプレイに表示する内容を自由に選択できます。その中でも多くのユーザーが関心を持つのが、複数ディスプレイにおけるタスクバーの表示・非表示設定です。ただし、PCを複数人で共有している場合、他の標準ユーザーもタスクバーの表示設定を変更できてしまう点には注意が必要です。本記事では、複数ディスプレイのタスクバーを有効/無効にする方法と、他のユーザ