Não é possível remapear combinações de ctrl ou alt para comandos

Não é possível remapear combinações de ctrl ou alt para comandos

No Vim, estou tentando os seguintes remapeamentos:

nnoremap <A-1> :make<CR>
inoremap <A-1> <Esc>:make<CR>i

Basicamente, quero remapear alt+1 para: make. No entanto, esse remapeamento falha e não consigo entender por quê.

O mapa

nnoremap q :make<CR>

funciona. Por que é que? <A-1> não é a maneira correta de descrever alt+1?

Editar: estou usando o terminal vim.

Responder1

<A-1>é uma maneira correta de descrever <M-1>, mas duvido que seu emulador de terminal o envie quando você pressiona Alt-1. Muito provavelmente ele envia <esc>1, então você pode mapear:

:nnoremap <esc>1 :make<CR>
:inoremap <esc>1 <C-o>:make<CR>

informação relacionada