Tenho tentado mapear Ctrl + F8 de várias maneiras diferentes, mas simplesmente não consigo fazer funcionar. Depois de fazer algumas pesquisas, descobri que o vim não suporta todos os códigos-chave do terminal e tenho que atribuir o código-chave do terminal a um código-chave vazio do vim (como F13). eu seguiesseguia passo a passo sem sucesso.
O que eu fiz foi:
- Encontre o código-chave do terminal (URxvt) para Ctrl + F8 usando cat. O resultado é: ^[[19^
- Adicionadas as seguintes linhas ao meu arquivo de plugin:
set <F13>=^[[1;2B nnoremap <F13> :call foobar
Alguma sugestão?
Responder1
[Após o teste, transferi meu comentário para uma resposta.]
Seu set
comando não está usando o mesmo valor do seu scancode. Além disso, você precisa ter certeza de que está usando um caractere de escape em vez dos dois caracteres ^
e [
. Para facilitar isso sem "codificar" um caractere de escape, eu usaria :execute
:
:exe "set <F13>=\e[19^"
:nnoremap <F13> :echo "It works!"<CR>