ウェブサイト検索

Vimの使い方: 基礎ガイド


Linux用のvimテキストエディタを使用する予定ですか?始めるために必要なすべてのコマンドを紹介します - 数分でvimの使い方を学びましょう!

VimはUnix系システム向けの最も強力で多用途なコードエディタです。これは、ビル・ジョイによって開発されたViエディタの拡張です。VimはほとんどのLinuxおよびBSDシステムでデフォルトで利用可能です。

そのため、すべてのシステムやリモートマシンで同じエディタを使用できます。Vimの厳格な語彙は、非常に効率的で表現力豊かです。

Vimはどのように動作しますか?

Vimは従来のLinuxテキストエディタとは異なります。Unixの哲学、すなわち1つのことを正しく行うことを維持しています。プログラマーとしての根本的な考えは、私たちがコードを書くのではなく、主にコードを編集する時間を過ごすということです。

Vimはこれに対処するためにいくつかのモードを提供しています。それぞれのモードは異なる動作をし、キーストロークで制御されます。基本的なVimモードは、ノーマルモード、ビジュアルモード、挿入モード、コマンドモードです。

コードレビューや迅速な操作には通常モードを使用します。視覚モードはテキストセクションをハイライトするために使用され、挿入モードはテキストを追加するためのものです。さまざまなvimコマンドを入力するにはコマンドモードを使用します。

挿入モードでVimを使用する方法

Vimを開くと、ノーマルモードで始まります。iキーを入力することで挿入モードに切り替えることができます。これにより、カーソルの位置で挿入モードが呼び出されます。左下隅に何らかの表示が見えるはずです。

今、どんなテキストでも入力でき、vimはそれをバッファにコピーします。進行状況を保存するには、エスケープキー<ESC>を押して通常モードに戻ります。次に、以下のvimコマンドを入力してください。

:w

挿入モードに入る他の方法もあります。たとえば、ノーマルモードでoを押すことで、現在の行のすぐ下にテキストを挿入できます。現在の行の上にテキストを挿入するには、Oを使用します。

現在の行の先頭にテキストを挿入するにはIを使用してください。カーソルのすぐ後ろにテキストを追加するにはaキーを利用できます。行の末尾にテキストを追加するにはAを使用してください。

現在のファイルを保存して終了するには、コマンドモードに切り替えて、次のように入力します。

:wq

ノーマルモードでVimを使う方法

Vimのユーザーは、ほとんどの時間を通常モードで過ごします。ここでは、テキストを移動したり、素早い編集を行ったりできます。どのモードからでもエスケープキー<ESC>を押すと、通常モードに移行します。

標準の矢印キーの代わりに、vimはナビゲーションのためにhjkl(hは左、jは下、kは上、lは右)を使用します。最初は逆効果に思えるかもしれません。しかし、vimはユーザーがキーボード上の矢印キーに到達するのにかかる時間を節約するためにこれを行っています。

また、多くのコンソールベースのエディタと同様に、vimはユーザーにマウスを使わないように促します。ただし、マウスサポートを有効にするためにvimを設定することもできます。

テキストを単語ごとに移動することもできます。例えば、ノーマルモードでwを押すと、カーソルが次の単語の始まりに移動します。現在の単語の始まりにはbを使用し、終わりにはeを使用できます。

0を使用して行の先頭に移動し、$を使用して行の末尾に移動します。Hを押すとカーソルが画面の上部に移動し、Mは中央、Lは下部に移動します。Ctrl+uとCtrl+dを使って上にスクロールしたり、下にスクロールしたりできます。ノーマルモードでggを押すと、vimはカーソルをトップに移動させます。おわりに移動するにはGを押してください。

ノーマルモードで移動するのに慣れたら、vimの編集コマンドを学ぶことができます。文字を削除するにはxを、置換にはsを使います。テキストを削除するにはdオペレーターを使用します。それは動作を引数として取ります。以下にこの構文を示します。

d{motion}

動作は何でも可能です。たとえば、通常モードでdwを押すと、現在の単語が削除されます。もしd$と入力すると、vimは行の末尾までのすべてを削除します。同様に、d0と入力すると行の先頭まで削除されます。行全体を削除するにはddを使用してください。

ただし、変更を加えるために何かを削除して置き換えモードに入る必要はありません。c 演算子を使用すると、通常モードから直接 vim モーションに変更を加えることができます。

c{motion}

つまり、cwを押すと、vimは現在の単語を削除し、挿入モードに入ります。カーソルは単語の始まりにある必要があります。なぜなら、vimは現在の位置から削除するからです。この問題を回避するにはciwを使用します。これにより、現在の単語の内部を変更できます。全行を変更するにはccを使用してください。

yを使って動作をコピーし、pを使ってそれを貼り付けます。つまり、ywは現在の単語をコピーし、yyは行全体をコピーします。前のコマンドを繰り返すにはドット.演算子を使用し、変更を元に戻すにはuを使用し、やり直すにはCtrl+rを使用します。

コード内で何かを見つけたい場合は、Linuxで次のvimコマンドを使用してください。

/{regex}

ここで、regexは正規表現です。次の一致に進むにはnを押し、前の一致に戻るにはNを押してください。

Vimのビジュアルモードの使い方

vimのビジュアルモードを使用すると、移動キーを使ってテキストのブロックを選択できます。これがパワーユーザーがvimでコードブロックを移動させる方法です。通常モードでvを押してビジュアルモードに切り替えます。

今、ナビゲーションキーhjklを使ってテキストやコードの部分を強調表示できるようになりました。ビジュアルブロックモードに切り替えるにはCtrl+vを使用します。ここでは、テキストのブロックを選択できます。ビジュアルラインモードに入ることで行を強調表示できます。ビジュアルラインモードを選択するにはVを使用してください。

これにより、一度にテキストのブロックを編集することができるようになります。たとえば、テキストブロックを選択してyを押すと、そのテキストがvimのバッファにコピーされます。

Vimコマンドモードの使い方

通常モードで : と入力することでコマンドモードにアクセスできます。これにより、カーソルが画面の一番下に移動し、その後にコロンが表示されます。以下は、Linuxでの最も便利なvimコマンドのいくつかです。

  • :w ファイルに変更を保存する
  • :wq 保存して終了
  • :saveas FILE 現在のファイルを FILE として保存します
  • :q vimを終了する
  • :q! 終了して変更を破棄します
  • :e ファイルを編集のために開く
  • :ヘルプ ヘルプを開く

このvimチートシートをブックマークして、便利なvimコマンドに素早くアクセスできるようにしましょう。

Vimの基本をマスターする

Vimは、思考と編集のギャップをなくす堅牢なエディタです。Vimに習熟すると、コードを書くことは非常にエキサイティングになります。完全にマスターするには何年もの練習が必要ですが、Vimの基本を理解することで、正しい道を歩み始めることができるでしょう。

関連記事: