未分類 > vimの基本操作のまとめ
vimの基本操作方法
vim ⏎Enter vi ⏎Enter |
シェルコマンドラインからvimを起動 |
vimでファイルを開く
vim ファイル名までのパス ⏎Enter vi ファイル名までのパス ⏎Enter |
シェルコマンドラインから任意のファイル編集を前提にvimを立ち上げる。
(存在しないファイルをパスで指定した場合、パスで指定した箇所にファイルが新規作成されて開かれます) |
:e ファイル名までのパス ⏎Enter |
vimを単独で立ち上げている場合、vim内で任意のファイルを開く。
(存在しないファイルをパスで指定した場合、パスで指定した箇所にファイルが新規作成されて開かれます) |
vim終了の仕方
:wq ファイル名 ⏎Enter |
ファイル内容を任意のファイルに保存して終了 |
(指定したファイルが存在しない場合は新規作成されて保存される)
またノーマルモードから下記のようにタイプするのも有効です
Ctrl + z |
vimを中断。
gVimではタスクバーに最小化されますが、端末版ではプロセスがバックグラウンドに移行されます。fg でフォアグラウンドに復活させられます。
|
vimのモード
vimにはたくさんのモードがあり、モードを切り替えることでキーの割り当てが変化し、多種多様な処理が行えます。
たくさんあるモードの中でも下記4つのモードが中心的な役割をはたしており、vimを習得する場合、特に注目するべきポイントとなります。
ノーマルモード |
カーソル移動やテキストの削除、コピー、ペーストなどの操作が行えるモード |
ビジュアルモード |
テキスト範囲を選択できるモード |
挿入モード |
テキスト入力モード |
コマンドラインモード |
ファイルを開く、検索・置換・保存・終了などの操作を行うモード |
ノーマルモード
ノーマルモードにおける各キーの割り当て。
ノーマルモード(編集コマンドとの併用)
dw |
カーソル位置から空白を含む単語の終わりまでを削除 |
de |
カーソル位置から空白を含まない単語の終わりまでを削除 |
d0(ディーゼロ) |
カーソル位置から行の先頭までを削除 |
他のモード中に「Esc」、「Ctrl + c」、「Ctrl +[」のいずれかをタイプすることでこのノーマルモードに戻ることができます。
指の移動距離を考えると、「Ctrl + c」でノーマルモードに戻るのが効率が良さそうです。
挿入モード
このモードではタイプするテキストをそのまま入力することが出来ます。
ノーマルモードから 「i」「I」「a」「A」「o」「O」などをタイプすることで挿入モードに移行します。
c^ |
カーソル位置から空白を除く行の先頭までを削除してインサートモードへ |
o(オー小文字) |
カーソルの下に空行を作ってその先頭から挿入 |
O(オー大文字) |
カーソルの上に空行を作ってその先頭から挿入 |
ビジュアルモード
選択領域のコピーや削除を始めとしたテキスト処理を行う事が出来るモードです。
ノーマルモードから下記の操作でこのモードに移行することができます。
コマンドラインモード
コマンドや関数の実行、検索、置換処理などを行うことができるモードです。
ノーマルモードから 「:」、「/」、「?」のいずれかをタイプするとコマンドラインモードに入ることができます。
:! |
「:!」に続けて外部コマンドをタイプで実行(EXモード) |
冒頭のほうで紹介した終了時の「:q!」や「:wq」も、「:」をタイプすることでコマンドラインモードに入り、続けて「q!」や「wq」とタイプすることで終了処理を実行しているわけです。
前方に向かって検索を行うには「/」とタイプし、「/」の後に検索対象をタイプしてEnterで検索を開始します。
/検索文字
検索対象が複数ヒットした場合、各値を移動する際は、「n」で次のヒット値へ、「N」で前のヒット値へと移動することができます。
後方に向かって検索を行うには「?」とタイプし、「?」の後に検索対象をタイプしてEnterで検索を開始します。
?検索文字
後方検索においては「n」「N」の移行順序が前方検索の時と逆になります。
予めオプションをセットすることで検索条件、処理結果に変化を与えることができます。
:set ic
とタイプしてから検索をかけると大文字、小文字を区別せずに検索対象がヒットします。
「大文字、小文字を区別する」に戻したいならオプションの先頭に「no」を付けてセットします。
:set noic
デフォルトのオプション値は「~/.vimrc」の設定内容によります。
:set hls
とタイプしてから検索するとヒット値を強調表示させることが出来ます。
強調表示をやめたいときは
:set nohls
とタイプします。
部分マッチしている部分を表示させたいなら
:set is
やめるときは
:set nois
各オプションを組み合わせてセットすることも可能です。
:set ic hls
上の例は大文字、小文字を区別せずに検索し、ヒット値を強調表示させます。
複数のオプションを一括で無効にするには
:set noic nohls
vim操作がある程度、身についてしまえば、モードの切り替えは、それほど意識しなくても済むようになります。
vim操作の応用としては、vimのチュートリアルに従い、様々なシチュエーションで操作してみることをお奨めします。
チュートリアルを実践することで、vimに対する漠然とした考えが消え、その後のvim操作をよりスムーズに行うことが出来るようになるはずです。
シェルプロンプトからvimのチュートリアルを立ち上げるには下記のようにタイプします。