web-dev-qa-db-ja.com

.vimrcファイルの<leader>は何ですか?

多くの<leader>ファイルに.vimrcがありますが、どういう意味ですか?それは何のために使われますか?目的と使用方法の一般的な概要だけで素晴らしいことがあります。

937
Bob Martens

<Leader>キーはにマッピングされています \ デフォルトで<Leader>tのマップがあれば、デフォルトでそれを実行することができます。 \+t。詳細またはmapleader変数を使用した再割り当てについては、を参照してください。

リーダーを助ける

 "mapleader"変数を使用するマッピングを定義するために、特別な文字列
 "<Leader>"を使用することができます。 [mapleader]の文字列値に置き換えられます。
 "mapleader"が設定されていないか空の場合は、代わりにバックスラッシュが使用されます。 
例:
:map <Leader>その他の行<Esc> 
次のように機能します。
:map \その他の行<Esc> 
しかし、の後:
:let mapleader = "、" 
それは次のように動作します:
:map、Aその他の行<Esc> 
 
 "mapleader"の値は、マッピングが定義された時点で使用されます。その後に "mapleader"を変更しても、既に定義されている
マッピングには効果がありません。
 
 
862
Vereb

あなたがあなたの<leader>キーを押すと あなたがたった1000ms (デフォルトで) しか持っていないことに注意してください それに続いて。

<leader>キーを押してvimがコマンドを待っているというnovisual feedback(デフォルト))があり、この時間切れがいつ起こったかを知るための視覚的な方法もないため、これはさらに悪化します。

あなたがvimrcset showcmdを加えると、あなたは<leader>キーがvimの右下(カーソル位置の左側)に現れるのを見るでしょう、そしておそらくもっと重要なことにあなたはそれを見るでしょう消えるタイムアウトが起こるとき) 。

タイムアウトの長さはあなたのvimrcで設定することもできます。詳細は :help timeoutlen を参照してください。

227
dukedave

「リーダーキー」は、一連のキーを使用してコマンドを実行することによって、VIMのショートカットの機能を拡張する方法です。デフォルトのリーダーキーはバックスラッシュです。したがって、<Leader> Qのマップがある場合は、\ Qと入力してその操作を実行できます。

105
Mikeage

Vimの<leader>キーはあなたが定義したいコマンドの名前空間を作成する方法です。 Vimはすでにほとんどのキーとの組み合わせをマッピングしています Ctrl +(何らかのキー)、<leader>(some key)はあなた(またはプラグイン)がカスタム動作を追加できる場所です。

たとえば、3語7文字を頻繁に削除することが頻繁にある場合は、リーダーキーに続けてdを押すと3語7文字が削除されるように、nmap <leader>d 3dw7xを使用してコマンドをマップすると便利です。これはリーダーキーをプレフィックスとして使用するため、既存の動作に悩まされていないことが(比較的)確信できます。

<leader>のデフォルトのキーは\ですが、コマンド:let mapleader = ","を使用して別のキーにマップすることもできます(この場合は,)。

リーダーキーに関するUsevimのページ 詳細な情報があります。

81
Pete Schlette

私のシステムでは \ キー。これはコマンドに使用されるので、他の文字と組み合わせることができます。

7
Arkaitz Jimenez