Vimリーダーキーとは何ですか

Vimridakitoha Hedesuka



Vim では、リーダー キーはショートカットの作成とコマンドの実行に使用されます。 Vim のスラッシュ (\) キーはデフォルトのリーダー キーですが、必要に応じて変更できます。

私はドキュメントの編集には Vim を使用することが好きですが、その多くの未発見の機能にはいつも驚かされます。リーダーキーもその1つです。 Mac ユーザーの場合は、リーダー キーとも呼ばれるコマンド キーを認識する必要があります。 Vim のリーダー キーの機能は Mac のコマンド キーとよく似ています。

リーダーキーの目的

Vim のキー マッピング機能を認識しておく必要があります。カスタム ショートカット キーを設定して、さまざまな Vim コマンドや機能をアクティブにすることができます。ただし、多くのキーにはすでに何らかのコマンド ライン機能が備わっているため、それらをショートカット キーとして設定することはできません。ここでリーダーキーが役に立ちます。







リーダー キーは、Vim 機能のショートカットをマップするために別のキーの前に追加されるプレフィックス キーです。多くのプラグイン開発者は、プラグインのショートカットにリーダー キーも使用します。



リーダーキーの使用

リーダー キーを使用するには、まずリーダー キー (\) を押してから、マップされたキーまたはコマンドを押します。たとえば、マッピングした場合、 <リーダー> 、次を使用してこれを実行できます \+s Vim NORMAL モードのキー。



リーダー キー (\) を押した後、他のキーを押すかコマンドを入力できる時間は 1 秒 (1000 ミリ秒) だけであることに注意することが重要です。デフォルトでは、Vim ウィンドウでは、キーが押されたかどうかを確認できません。





ただし、Vim のカスタマイズのおかげで、Vim ウィンドウでリーダー キーを表示したり、ポスト リーダー キーを押す時間を変更したりすることができます。 Vim ウィンドウの下部にコマンドを表示するには、次のようにします。 showcmd を設定します のコマンド vimrc ファイル。

セット showcmd

時間を変更するには、次を使用します。 タイムアウトレン=[値] 、 どこ [価値] ミリ秒単位です。



タイムアウト = [ 価値

たとえば、設定するには タイムアウト 2 秒までの場合は、値として 2000 を使用します。

showcmd と タイムアウト 使用 :ヘルプ showcmd そして :ヘルプタイムアウト Vim のコマンド。

リーダーキーの変更

バックスラッシュ (\) は Vim のデフォルトのリーダーですが、一部のユーザーはこれを不便に感じています。リーダー キーは簡単に変更できますが、通常はリーダー キーとしてカンマ (,) キーが推奨されます。

Vim リーダー キーを変更するには、 vimrc ファイルと場所 let mapleader= Vim のレガシー バージョンの場合。

させて マップリーダー = 「、」

Vim バージョン 9 以降を使用している場合は、 g:mapleader= も使用できます。

g: マップリーダー = 「、」

ここ、 g は、Vim でグローバル コンテキストを示すために使用される接頭辞です。

注記: Vim バージョン 9 を使用している場合でも、リーダー キーを定義する従来の方法を引き続き使用できます。

変更を加えた後、保存します vimrc を押してファイルを作成する シフト+zz キーまたはタイピング :wq 指示。

これは、Vim リーダー キーをカンマ (,) に変更する方法ですが、個人の好みやワークフローに応じて、任意のキーに変更することもできます。

キーと引出線のマッピング

Vim の機能をリーダー キーにマップするには、次を使用します。 map <リーダー>{キー} [コマンド/関数] 構文:

地図 < リーダー > { } : [ 指示 / 関数

行番号付け機能をマップしてみましょう <リーダー>n キー。

ノアマップ < リーダー > n : セット番号 < CR >

上記のコマンドを vimrc ファイルを作成して保存します。

ノアマップ NORMAL モードの非再帰マッピングを示します。 <リーダー>n は、リーダーとカスタム キーの組み合わせです。コロン (:) の後に、任意の vim コマンドまたは関数を配置してマッピングできます。の キャリッジリターンまたは 入力 鍵。

これで、 を押すたびに、 ,+n Vim ドキュメント内で キーを押すと、行番号機能が有効になります。

Vim スクリプト関数をマップするには、まず、Vim スクリプト関数を vimrc ファイルを指定し、関数名を指定して call コマンドを使用します。

ノアマップ < リーダー > m :トグルマウスを呼び出します ( ) < CR >

さらに、多くのプラグインには長いコマンドが付属しています。必ずショートカットを作成する必要があります。そのためにリーダーキーを使用することをお勧めします。

ローカルリーダーキー

Vim には、ローカル リーダーと呼ばれる別のリーダーが付属しています。これは、リーダーに似ていますが、バッファー固有です。たとえば、特定の種類のファイルを特定の設定で作業していて、そのファイルに別のリーダー キーが必要な場合は、ローカル リーダーと呼ばれるセカンダリ リーダーを作成できます。

リーダーキーと同様に任意のキーに設定することができます。ダッシュ (-) キーをローカル リーダーとして設定するには、次のように追加します。 let Maplocalleader=”-” の中に vimrc ファイル。

させて マップローカルリーダー = 「-」

ローカル リーダー キーの唯一の目的は、特定のファイル タイプのショートカットを定義することです。たとえば、NERDTree は、ファイルを探索するためのよく知られた Vim プラグインです。 NERDTree ファイル エクスプローラーを開くには、:NERDTree コマンド全体を入力したくありません。さて、リーダーキーの助けを借りてください noremap <リーダー>n :NERDTree

複数のリーダー キーの使用

複数のリーダー キーを定義できます。 vimrc ファイル。ただし、複数のリーダー キーを使用するかどうかは、それらをどのように定義するかによって異なります。 vimrc ファイル。たとえば、2 つのリーダー キーを設定し、1 つはカンマ (,)、もう 1 つはピリオド (.) であるとします。カンマ (,) で定義されたリーダー キーの下のすべてのマッピングはそれをリーダーとして使用し、ピリオド (.) の下のすべてのマッピングはそれをリーダーとして使用します。

させて マップリーダー = 「、」

ノアマップ < リーダー > m:タブニュー

させて マップリーダー = 「。」

ノアマップ < リーダー > m:タブ閉じる

,+m キーを押すと Vim にタブが作成されますが、 .+m 閉じます。

以下が私の最終です vimrc これらの変更を加えた後のファイル構成。

結論

Vim リーダー キーは、Vim のユーザー定義またはプラグイン定義のショートカットの名前空間です。バックスラッシュ (\) は Vim のデフォルトのキーですが、次のコマンドを使用して変更できます。 let Mapleader=[somekey] 指示。ローカル リーダーは、ファイル固有のリーダー キーとして機能する別のリーダー キー Vim です。さらに、複数のリーダー キーを定義できます。 vimrc ファイル。全体として、リーダー キーは Vim の機能を強化するための機能であり、ワークフローをより効率的に行うためにさまざまな方法で使用できます。