Was ich möchte
Zum vorübergehenden Ändern des Timeout-Werts für bestimmte Tastenbefehle
Wo ich gesucht habe
Von habe :help 'timeout'
ich:
The timeout only happens when the 'timeout' and 'ttimeout' options
tell so. A useful setting would be >
:set timeout timeoutlen=3000 ttimeoutlen=100
(time out on mapping after three seconds, time out on key codes after
a tenth of a second).
Ich bin mir nicht sicher, wie ich dies in einem Schlüsselbefehl implementieren würde oder wie ich die aktuelle Einstellung des Zeitlimits überprüfen soll.
Ich wollte zum Beispiel versuchen hh
, an den Anfang einer Zeile zu gehen, aber ich wollte, dass das Zeitlimit für diesen bestimmten Tastenbefehl ziemlich schnell ist, beispielsweise 100 Millisekunden.
Was ich versucht habe
:set timeout timeoutlen=100 ttimeoutlen=100
nmap hh <S-^>
:set timeoutlen=1000 ttimeoutlen=1000
vimrc
key-bindings
vimscript
baxx
quelle
quelle
'timeoutlen'
zu dem Zeitpunkt verwendet , dass die Zuordnung wird aufgerufen , nicht erstellt.Antworten:
Die
'timeoutlen'
Option ist ein globaler, und es gilt bei Mapping - Aufruf , nicht während der Definition .Ich kann Ihre Motivation verstehen (mithilfe eines speziellen
hh
Mappings, während Sie sich dennoch schnell über bewegenh
könnenh
), aber ich würde trotzdem von solchen Tricks abraten. Wählen Sie besser eine andere Zuordnung, die sich nicht mit einem integrierten Befehl überschneidet.Wenn Sie wirklich müssen, schauen Sie sich das Arpeggio-Plugin an . Es werden einige Tricks ausgeführt, um gleichzeitig gedrückte Tasten zuzuordnen.
quelle