significado - vim store
vim: mapeo ctrl-0 a ctrl-9? (2)
¿Por qué no puedo asignar mediante ninguno de los * comandos de mapa (nmap, imap, etc.) de las teclas Ctrl 0 a Ctrl 9 ? De hecho, parece que algunos de ellos, como Ctrl 3 , están vinculados a ^[
en el nivel de X-Window. ¿Cómo puedo hacer que vim anule esos enlaces predeterminados?
es decir, si imap <C-3> fancystuffhere
, al presionar Ctrl 3 en el modo de inserción me imap <C-3> fancystuffhere
en modo normal, en lugar de insertar ''fancystuffhere''.
Estoy en Linux / X11.
Debido a que tanto vim como gvim usan la cola de bytes en lugar de la cola de eventos de pulsación de tecla, entonces los valores de 0x40
(@) a 0x5F
(_) (incluido el rango de 0x41-0x5A (AZ)) tienen caracteres de control correspondientes (puede obtener sus códigos restando 0x40 a partir de su valor), no se pueden utilizar caracteres por encima de este rango junto con C-
. También es la razón por la que CS-
para claves alfanuméricas no funciona incluso en gvim (las claves funcionales generan más de un byte, por lo que <CS-F1>
puede funcionar). El reemplazo de <C-3>
con <ESC>
se realiza por terminal, puede intentar mapearlo en casi cualquier aplicación de GUI y ver que <Esc>
no se asigna.
La forma en que lo logro en Windows es usar Autohotkey y reasignar CTRL + 1 , CTRL + 2 , etc. a CTRL + F1 , CTRL + F2 , etc.
Sé que estás en Linux, así que no es aplicable para ti, pero pensé que lo mencionaría para cualquier otra persona interesada