O que eu quero
Para alterar temporariamente o valor do tempo limite para determinados comandos de tecla
Para onde eu olhei
De :help 'timeout'
eu tenho:
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).
Não sei ao certo como implementaria isso em um comando de chave ou como verificar a configuração atual do tempo limite.
Por exemplo, eu queria tentar definir hh
o início de uma linha, mas queria que o tempo limite desse comando de tecla específico fosse bem rápido, digamos 100 milissegundos.
O que eu tentei
:set timeout timeoutlen=100 ttimeoutlen=100
nmap hh <S-^>
:set timeoutlen=1000 ttimeoutlen=1000
vimrc
key-bindings
vimscript
baxx
fonte
fonte
'timeoutlen'
são usadas no momento em que o mapeamento é chamado , não criado.Respostas:
A
'timeoutlen'
opção é global e se aplica à chamada de mapeamento , não durante a definição .Posso entender sua motivação (usando um especial
hh
mapeamento enquanto ainda é capaz de se mover rapidamente viah
,h
), mas eu gostaria, no entanto aconselhar contra esses truques. Melhor escolha outro mapeamento que não se sobreponha a um comando interno.Se você realmente precisa, dê uma olhada no plug-in do arpejo . Ele executa alguns truques para mapear as teclas pressionadas simultaneamente.
fonte