テクノロジー
2024年11月21日Vimの使い方を学ぶ
Vimとは、AtomやVS Codeなどのエディタの仲間で、CUIで使われることを前提に設計されています。そのため、すべての操作をマウスを使わず、コマンドから実行できます。
著者プロフィール
IT分野における教育の先駆者として、多くのエンジニアを育成するプログラミングスクールの運営、Web開発やAI研修を行なっています。幅広いレベルの受講生に対して実践的なスキルを提供。生徒の成長を第一に考え、効果的で魅力的な教育プログラムの設計に情熱を注いでいます。
ゴール
- Vimとはなにかを理解する
- Vimの使い方を知る
Vimとはなにか
Vimとは、AtomやVS Codeなどのエディタの仲間で、CUIで使われることを前提に設計されています。そのため、すべての操作をマウスを使わず、コマンドから実行できます。
なぜVimを学ぶのか
AWSなどのサービスを利用するには、Vimでの操作を行う必要があります。
VScodeやAtomといったGUIを使ったエディタはメモリ消費が多い上、必要性もないことから、通常サーバにはこれらのエディタはインストールされていません。
Vimの特徴
- すべての操作をコマンドを使って実行できるため、作業の高速化が可能。
- メモリ消費量が少ないことから、スペックの低いPCでも快適に利用できる。
以下の表に、他のエディタとの違いをまとめています。
比較項目 | Vim | VScode |
---|---|---|
日本語入力 | △ | ○ |
インデント | ○ | ○ |
複数タブ表示 | ◎ | ○ |
Zipファイル編集 | ○ | × |
手軽さ | × | ○ |
Vimのモード
Vimには4つのモードがあり、行いたい操作によってモードを使い分けます。
モード | 代表的な機能 |
---|---|
ノーマルモード | カーソル移動、コピー、貼り付け、削除など |
インサートモード | 入力、貼り付け、入力補完、単語削除など |
ビジュアルモード | 範囲選択、コピー、削除、フィルターなど |
コマンドラインモード | 保存、終了、文字列置換など |
モードの切り替え
以下のようにコマンドを入力することで、モードを切り替えることができます。
このように、escキーを押した後、モードのキーを入力することでモードの切り替えが可能です。
Vimの基本操作
Vimを使って、実際にファイルの編集作業を行なうことで、コマンドの使い方を理解しましょう。
任意の作業ディレクトリに移動し、サンプル用のファイルを作成します。
以下のコマンドを実行することで、ファイルの作成と編集を同時に行うことができます。
$ vim sample.md
上記のコマンドを実行すると、以下の画面が表示されます。
以下の内容をコピーし、作成したファイルに貼り付けてください。
[sample.md]
#2sample_text
sample_text
sample_text
sample_text
start_text
sample_text
sample_text
sample_text#1
sample_text
sample_text
sample_text
sample_text
end_text
sample_text
sample_text
sample_text
#3#5sample_text#4
編集した内容を保存するため:
を入力し、コマンドラインモードに切り替えます。
コマンドラインモードに切り替わると、画面の左下に:
が表示されます。
保存する場合はw
キーを入力し、エンターキーを押します。
保存できたので、画面を閉じます。再びコマンドラインモードに切り替え、q
キーを入力しエンターキーを押すことで、画面が閉じます。
上記ではコマンドを分けて入力していますが、wq
と入力することで、保存と画面を閉じる作業を同時に行うことができます。
次に、作成したファイルを使って、移動コマンドをいろいろと試してみましょう。
もう一度以下のコマンドを実行してファイルを開きます。
$ vim sample.md
コマンドを駆使して、「#1」から「#5」までを順に削除していきましょう。
vimでは、h, j, k, l
キーを使って移動することができます。
h | j | k | l |
---|---|---|---|
左 | 下 | 上 | 右 |
ノーマルモードのままh, j, k, l
キーを使って移動し、インサートモードに切り替え、「#1」を削除しましょう。
次にコマンドを使って移動してみましょう。以下のコマンドはすべてノーマルモードに切り替えてから実行してください。
gg
を入力すると、ファイルの先頭に移動できます。
「#2」を削除しましょう。
G
を入力すると、ファイルの最終行に移動できます。
「#3」を削除しましょう。
A
を入力すると、行末に移動し、インサートモードに切り替わります。
「#4」を削除しましょう。
I
を入力すると、行頭の非空白文字に移動し、インサートモードに切り替わります。
「#5」を削除しましょう。
dd
を入力すると、カーソルのある行を削除できます。任意の行を削除してみましょう。
最後にビジュアルモードを使って、start_text
からend_text
までのテキストを削除してみましょう。
start_text
の行頭に移動し、ノーマルモードの状態でv
を入力し、ビジュアルモードに切り替えます。すると、左下にVISUAL
と表示されます。
この状態で、end_text
の行末まで進み、d
を入力します。するとハイライトされていた文章がすべて削除されます。
このように、ビジュアルモードを使用することで、指定した範囲の削除やコードの追記などができます。
ちなみに、ビジュアルモードには、この他にビジュアルラインモードとビジュアルブロックモードがあります。Vimについて詳しく知りたい方は、以下の公式ドキュメントを参照してください。
Vimチュートリアル
Vimの基礎知識を深めたい方は、Vimのチュートリアルレッスンで学びましょう。ターミナルでvimtutor
と入力するとレッスンが始まります。
$ vimtutor
終了する場合は、コマンドモードでq!
を入力し、エンターキーを押してください。
まとめ
- Vimはすべての操作をコマンドから実行できることから、使い方を習得することで作業を高速化することができる。
- モードを使い分けることで、マウスでの操作をコマンドから実行することができる。