テキスト エディタは、テキスト ファイルの内容を表示、作成、または変更できるアプリケーションです。テキスト エディターは、もともとソース コードでプログラムを記述するために作成されましたが、現在ではさまざまなテキスト ベースのファイルを編集するために使用されています。さまざまな種類のテキスト エディターが Linux と互換性があります。ただし、テキスト エディターは、ワープロが提供する書式設定オプションを常にサポートしているわけではありません。テキスト エディタは、CLI または GUI のいずれかで動作し、さまざまな操作モードを備えている場合があります。
Vi は、Unix 世界の 2 つの強力なテキスト エディターのうちの 1 つであり、もう 1 つは EMACS です。鈍感ですが、vi は非常に強力で効率的です。テキスト エディタが vi しかない場合もあるため、少なくとも基本を知っておくと役に立ちます。 Mac OS X (および Linux) では、vi は、より最新のフリー ソフトウェア バージョンである vim (vi の改良版) にシンボリック リンクされています。 Vim crontab を変更するときのデフォルトのエディターです。
vim コマンドは、Vim エディターを呼び出します。ただし、vi コマンドはユーザーを自動的に Vim にリダイレクトするため、この目的で使用することもできます。引数としてファイル名を指定せずに入力すると、vim コマンドはデフォルトでようこそ画面を開きます。ファイルを開くには、構文 vim {file name} を使用します。ファイルが存在しない場合、Vim は指定された名前でファイルを作成し、そのファイルを編集用に開きます。 Vim は、複数のファイルを同時に開くことをサポートしています。
注意 :この小さなガイドの一部は、ずっと前に見つけた Web ページからのものですが、場所を覚えていないので、適切なクレジットを与えることはできません。原文から加筆・修正しました。
vi[m] モード
Vi はモーダル エディタであり、さまざまなモードがさまざまなキーの機能を決定します。
| モード | ユーザーができること |
|---|---|
| 挿入 | 入力してテキストを挿入します。 |
| 実行 | エディタ内でコマンドを実行します。 |
| コマンド | 単一のキーストロークを使用して、さまざまな編集操作を実行します。 |
| ビジュアル | テキストを強調表示または選択して、コピー、削除などを行います。 |
モードの切り替え
コマンド モードは Vim のデフォルト モードですが、1 回のキーストロークでコマンド モードから他のモードに切り替えることができます。モードを切り替えるキーの一部をここにリストします。
| キー | 機能 |
|---|---|
| 私 | 挿入モードに切り替え、カーソルの左側にテキストを挿入します。 |
| あ | 挿入モードに切り替えて、行末にテキストを追加します。 |
| 私 | 挿入モードに切り替え、行頭にテキストを挿入します。 |
| o | 挿入モードに切り替え、カーソルの下の新しい行にテキストを挿入します。 |
| O | 挿入モードに切り替え、カーソルの上の新しい行にテキストを挿入します。 |
| v | ビジュアル モードに切り替えて、一度に 1 文字ずつ選択できるようにします。 V ビジュアル モードに切り替えて、一度に 1 行ずつ選択できるようにします。 |
| : | 実行モードに切り替えて、ユーザーがコマンドを入力できるようにします。 |
| Esc | コマンド モードに戻ります。 |
実行モード コマンド
コマンド モードでコロン (:) 演算子を入力すると、エディタの左下に小さなコマンド プロンプト セクションが表示されます。これは、実行モードにあり、Vim でサポートされているコマンドを実行できることを示しています。 Vim でサポートされているコマンドの一部を次の表に示します。
| コマンド | 機能 |
|---|---|
| :w {ファイル名} | 初めて保存する場合、ファイル名を付けてファイルを保存します。 |
| :q | 最後の保存後に変更が行われなかった場合に終了します。 |
| :q! | 行った変更を無視して終了します。 |
| :qa | 複数のファイルを終了します。 |
| :wq | 現在のファイルを保存して終了します。 |
| :e! | ファイルを閉じずに、最後に保存した形式に戻します。 |
| :!{任意の Linux コマンド} | コマンドを実行し、結果を Vim インターフェイスに表示します。 |
| :ヘルプ | Vim の組み込みヘルプ ドキュメントを開きます。 |
モーション
モーションは、コマンド モードでファイルをナビゲートするために使用される単一キー ショートカットです。これらのキーは、ドキュメント内の任意の場所にカーソルを配置します。これらは、カーソルを文字、単語、行、またはテキストの巨大なブロックに移動するために使用できます。
| ナビゲーションキー | 慣れている |
|---|---|
| 時 | 1 文字左に移動 |
| j | 1 行下に移動 |
| k | 1 行上に移動します。 |
| l | 1 文字右に移動します。 |
| ^ | 現在の行の先頭に移動します。 |
| $ | 現在の行の末尾に移動します。 |
| w | 次の単語に移動 |
| b | 前の単語に移動 |
| え | 現在の単語の末尾に移動するか、既に単語の末尾にいる場合は次の単語の末尾に移動します。 |
| Shift+L | カーソルを画面の一番下に移動します。 |
| Shift+H | カーソルを画面の最初の行に移動します。 |
| (行番号) Shift+G | 指定された行番号にカーソルを移動します。 |
| gg | カーソルをファイルの最初の行に移動します。 |
| Shift+G | カーソルをファイルの最終行に移動します。 |
矢印キーを使用したナビゲーション
h、j、k、および l キーを使用してエディター内を移動することに加えて、上、下、左、および右の矢印キーを使用することもできます。 Home、End、Page Up、Page Down などの従来のナビゲーション キーも Vim で機能します。
オペレータの編集
コマンド モードの編集演算子は、単純なキーストロークでテキストを操作できる強力なツールです。モーションと組み合わせて複数のキャラクターを編集することもできます。よく使用される編集演算子の一部をここにリストします。
| 編集オペレータ | 慣れ |
| x | カーソルで選択された文字を削除します。 |
| d | テキストを削除 |
| dd | 現在の行を削除します。 |
| p | カーソルのすぐ下の行にテキストを貼り付けます。 |
| P | カーソルのすぐ上の行にテキストを貼り付けます。 |
| /{テキスト文字列} | 文書内で特定のテキストを検索します。 |
| ?{テキスト文字列} | ドキュメント内で特定のテキストを逆方向に検索します。 |
| y | テキストをコピー |
| yy | カーソルのすぐ上の行をコピーします。 |
| c{行の範囲}c | 指定された範囲で変更を開始します。 |
| う | 最新の変更を取り消します。 |
| う | 現在の行のすべての変更を元に戻します。 |
| ZZ | 変更があった場合にのみファイルを書き込み、Vim エディターを終了します。 |
カウント
カウントは、Vim のキーストロークの効果を乗算する数値です。モーション、オペレータ、またはその両方と組み合わせて使用できます。モーションで使用すると、カーソルの移動は、指定されたカウントに従って乗算されます。編集演算子で使用すると、アクションは指定された回数だけ繰り返されます。
演算子とモーションでカウントを使用するための構文は次のとおりです:
[count] {motion}