d私がvimを押すと、私のステータスラインが言いd
、さらなる指示を無限に待ちます。
リーダーを押すと(,私にとって)、しばらく入力を待ってからタイムアウトします。
この機能を無効にして、次の指示を無期限に待機させるにはどうすればよいですか?
d私がvimを押すと、私のステータスラインが言いd
、さらなる指示を無限に待ちます。
リーダーを押すと(,私にとって)、しばらく入力を待ってからタイムアウトします。
この機能を無効にして、次の指示を無期限に待機させるにはどうすればよいですか?
差出人:help ttimeout
:
'timeout', 'to', 'notimeout', 'noto'
boolean (default on)
global
'ttimeout', 'nottimeout'
boolean (default off)
global
{not in Vi}
これらの2つのオプションは、マップされたキーシーケンスまたはキーボードコードの一部が受信されたときの動作を一緒に決定します。
タイムアウト | ttimeout | アクション |
---|---|---|
オフ | オフ | タイムアウトしないでください |
の上 | オンまたはオフ | :mappingsとキーコードでタイムアウト |
オフ | の上 | キーコードでタイムアウト |
両方のオプションがオフの場合、Vimは完全なマッピングまたはキーシーケンスが受信されるまで、または受信した文字のマッピングまたはキーシーケンスがないことが明らかになるまで待機します。例:「vl」をマッピングし、Vimが「v」を受け取った場合、「v」の後に「l」が続くかどうかを確認するために次の文字が必要です。オプションの1つがオンの場合、Vimは次のキャラクターが到着するまで約1秒待機します。その後、すでに受信した文字は単一文字として解釈されます。待機時間は「timeoutlen」オプションで変更できます。
低速の端末または非常にビジーなシステムでは、タイムアウトが発生するとカーソルキーが誤動作する可能性があります。両方のオプションがオフの場合、。で始まるキーコードがあると、Vimは入力後に永久に待機します。2回入力する必要があります。キーコードに問題はないが、:mappedキーシーケンスが1秒でタイムアウトしないようにしたい場合は、「ttimeout」オプションを設定し、「timeout」オプションをリセットします。
注:「互換性」が設定されている場合、「ttimeout」はリセットされます。
コメントから:
基本的に、ESCは矢印やその他の制御シーケンスの「リーダー」であるため、ESCを1回ではなく2回押す必要がある場合があります。– @Anton Kovalenko
実行して私の問題
set notimeout
を解決しました。set ttimeout
– @nightcracker