¿Cómo reasigno Ctrl+o de Vim?

¿Cómo reasigno Ctrl+o de Vim?

Me gustaría usar Control+O(modo normal) para otra cosa en Vim y Alt+leftpara retroceder (lo que Control+Osuele hacer). Por lo general, simplemente mapeo Alt+leftcualquier comando al que solía estar vinculado Control+O, pero parece que no puedo encontrar ninguno (por ejemplo, no hay :back o :jumpback).

¿Cómo logro esto?

Respuesta1

Simplemente asigne la nueva clave a la clave anterior, pero use noremap (sin reasignación), de modo que el mapeo use el significado original de cualquier clave en el lado derecho del mapeo y no cualquier mapeo nuevo que le haya dado. llave.

Como ejemplo, si usted

:map a b
:map b c

y escribe a, ejecutará la función originalmente vinculada a c. Sin embargo, si usted

:noremap a b
:noremap b c

y escribe a, ejecutará la función originalmente vinculada a b.

Entonces, en su caso, su mapeo sería

:nnoremap <Alt-Left> <C-O>

o

:nnoremap <A-Left> <C-O>

Eso te permitirá mapear <C-O>a otra cosa.

Nota: Ninguna de esas asignaciones funciona para mí en el sistema que estoy usando actualmente, aunque la documentación de Vim sugiere que deberían hacerlo, pero esto sí:

:nnoremap <M-Left> <C-O>

información relacionada