Как переназначить ctrl+o в Vim?

Как переназначить ctrl+o в Vim?

Я хотел бы использовать Control+O(нормальный режим) для чего-то еще в Vim, и Alt+leftдля перехода назад (что Control+Oобычно и происходит). Обычно я просто сопоставляю Alt+leftлюбую команду, которая была привязана к Control+O, но я не могу найти ни одной (например, нет :back или :jumpback).

Как мне этого добиться?

решение1

Просто сопоставьте новый ключ со старым ключом, но используйте noremap (без повторного сопоставления), чтобы сопоставление использовало исходное значение любого ключа в правой части сопоставления, а не какое-либо новое сопоставление, которое вы могли дать этому ключу.

Например, если вы

:map a b
:map b c

и вы вводите a, вы выполните функцию, изначально связанную с c. Однако, если вы

:noremap a b
:noremap b c

и вы вводите a, вы выполните функцию, изначально привязанную к b.

Итак, в вашем случае ваше отображение будет таким:

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

или

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

Это позволит вам сопоставить <C-O>что-то другое.

Примечание: Ни одно из этих сопоставлений не работает в системе, которую я сейчас использую, хотя в документации Vim говорится, что они должны работать, но это работает:

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

Связанный контент