もちろん、多くのアプリケーション、特にすべての最高のゲームタイトルは、マウスとキーボードを同時に使用します。それはゲームを難しくて楽しいものにします。ただし、プログラムのようなテキストファイルを使用する場合は、より多くの頭脳を投資し、デバイスではなくコードとロジックに集中する必要があります。
Vimを使用すると、ユーザーは1つの入力デバイスだけに集中できるため、プロコミュニティ、特にプログラマーに非常に人気があります。タイトルが示すように、このガイドでは、さまざまなVimショートカットの基本的な使用法と高度な使用法について説明します。また、カスタムショートカットを設定して、究極のVimチャンピオンになる方法についても説明します。
Vimのショートカット
エクスペリエンスを向上させるために知っておく必要のある、人気のあるVimショートカットをすべて紹介します。
Vimを起動する
ターミナルを起動し、次のコマンドを実行します。
私が来た
これにより、エディターのみが起動します。 Vimでテキストファイルを編集する場合は、次のコマンドを実行します。
私が来た <ファイル名>>
ファイルのパスを含めることもできます。
私が来た /道/に/ファイル
複数のファイルを開きたいですか?次の構造を使用します。
私が来た <file_1>> <file_2>>..。<file_n>>
Vimを終了する
最初は、Vimから抜け出す方法がわからずに行き詰まってしまいました。ファイルの編集を最初から始めたほうがよい場合もありますよね? Vimは従来の方法で終了しません。 Ctrl + Cは機能しませんが、Ctrl + Zは機能します。
Vimで次のコマンドを入力します。
: 何
変更を加えた場合、Vimは終了させません。次のコマンドを使用します。
: 何!
ファイルの編集
基本的に挿入モードを切り替えて、iを押して編集モードに入ります。
私
挿入モードを終了する場合は、Escキーを押します。
挿入モードを開始する特別な方法のいくつかを次に示します。
a-カーソルの直後にテキストを挿入しますA –現在の行の最後にテキストを挿入します
o –カーソルの下の改行
O –カーソルの上の改行
さて、他のソースからのデータを含めたいですか?たとえば、コマンドの出力や別のテキストファイルの内容? Vimでは、これらの組み込みショートカットを使用してこれを行うことができます。
次のコマンドを使用して、他のテキストファイルの内容をカーソルの現在の位置に挿入します。
:NS<ファイル名>>
コマンドの出力が必要ですか?これを使用してください。
:NS! <指図>>
ファイルの保存
次のコマンドは、バッファを元のファイルに書き込みます。
:の
quitコマンドで追加できます。
:wq
既存のファイルにバッファを追加する場合は、次のファイルを使用してください。
:の>> /道/に/ファイル
ナビゲーション
テキストファイルで作業しているときは、必要な場所に移動する必要があります。たとえば、visudoを使用している場合、ファイルの特定の部分で編集する必要があるのは2、3だけです。
動き回るために、Vimは以下のホットキーを許可します。矢印キーは含まれていないことに注意してください。加えて、
h –1文字左に移動しますl –1文字右に移動します
j、Ctrl + J –1行下に移動
k、Ctrl + P –1行上に移動
0 –行の先頭に移動します
$-行末に移動します
w –次の英数字の単語に移動します
W –次の単語に移動します(スペースで区切られます)
5w –5ワード先に進む
b –1文字の英数字を逆方向に移動します
B – 1つの単語に戻ります(スペースで区切られます)
5b –5ワード戻る
G –ファイルの終わり
gg –ファイルの先頭
次に、大きなジャンプショートカットを取得しました。これらはまだナビゲーションショートカットですが、ファイル全体のナビゲーションを高速化するために非常に興味深いものです。
(–前の文に移動します)–次の文に移動
{-前の段落に移動します
} –次の段落に進む
]] –次のセクションに進む
[[-前のセクションに移動します
コピーペースト
これは、テキストエディタで習得しなければならないもう1つの重要な機能です。例外なく、常にどこにでもコピーして貼り付けています。
yy –現在の行をコピーしますp –現在の行の後に貼り付けます
P –現在の行の前に貼り付けます
Undo & redo
これは、知っておく必要のあるもう1つの重要な機能です。いくつかの手順を台無しにしたとき、私たちは常にその立場にあり、修正する必要があるのは、いくつかの手順を元に戻すことだけです。同じことがやり直しにも当てはまります。残念ながら、Vimは従来のCtrl + ZまたはCtrl + Yを使用したものを処理しません。
u –最後の操作を元に戻すCtrl + r –最後の元に戻すをやり直します
検索中
Vimは柔軟で強力な検索方法を提供します。たとえば、基本的な検索は次のようになります。
/<search_text>>?<search_text>>
検索しているときは、ある一致から別の一致に移動する必要がありますよね?以下のキーを使用してください。
n –次の試合に進むN –前の試合に移動します
コンテンツの置き換え
場合によっては、類似したパターンの特定のパーツを別のパーツに変更する必要があります。たとえば、ファイル全体で変数の名前を変更します(プログラミング時)。このようなシナリオでは、置換機能が非常に便利です。シンプルですが、仕事を完璧にこなすには十分に複雑です。
:<範囲> /<search_pattern> /<交換> /NSたとえば、すべてのオカレンスを置き換えるには、次のオカレンスを使用します。
:%NS/NS/-置き換えられました/NS
次の1つは、各交換の許可を求めています。
:%NS/NS/-置き換えられました/gc
ビジュアルモード
デフォルトでは、Vimはマウスとの対話を許可していません。ただし、テキストを簡単に選択できるビジュアルモードがあります。実際、これがVimがキーボードショートカットなしでテキストを選択できる唯一の方法です。
注:この機能はViではなくVimで利用できます。
ビジュアルモードに入るには、次のホットキーを使用します。
v –キャラクターごとにビジュアルモードに入るV –行ごとにビジュアルモードに入る
挿入モードと同じように、外に出たい場合は、Escキーを押すだけです。
カスタムショートカット
これは私のお気に入りの部分です。特定のアクションを実行するためのカスタムキーボードショートカットとコマンドを設定できます。さまざまなアクションを単純なキーコンボにバインドして、これらの機能にすばやくアクセスできます。個人的には、頻繁に使用するアクションのみをバインドすることをお勧めします。
カスタムキーコンボの場合、Vimはvimrcファイルを使用します。
構造はこんな感じ。
<map_command>> <map_argument>> {{lhs} {{rhs}これらの意味を調べてみましょう。
- –マップを追加/削除/一覧表示するかどうか、マッピングを再帰的/非再帰的にするかどうか、およびどのモードで適用するかを定義します。
- –オプションです。これにより、1つ以上の引数をカスタムマッピングと組み合わせて組み合わせることができます。
- {lhs} –使用するショートカットまたはキーを定義します。
- {rhs} – {lhs}キーが押されたときに置き換え/実行されるショートカット/コマンドを定義します。
この例では、:nohlsearchコマンドをスペースバーにバインドします。念のため、前の検索結果のハイライトを削除する場合は常に:nohlsearchを使用します。
nnoremap、<スペース>>:nohlsearch<CR>>
これにより、通常モードで押すたびに:nohlsearchと入力し、Enter()で終了するようにVimに指示します。コマンドはコマンドラインにエコーされません。
Vimのカスタムマッピングの詳細なドキュメントについては、Vimで次のコマンドを実行してください。
:ヘルプマッピング
最終的な考え
習熟度によっては、Vimが最も効率的で最速の作業方法になります。これらのショートカットをマスターすることで、Vimを他のどのテキストエディタよりも簡単に生産性を高めることができると思います。たぶん、同僚/友人の前であなたのスキルを曲げることさえできますか?
楽しみ!