VIM: установите термин = xterm изменяется <BS>на <Del>, это обратимо? - PullRequest
0 голосов
/ 14 декабря 2018

Я добавил set term=xterm к своему vimrc, чтобы иметь возможность использовать 256-цветовые схемы vim в терминале, но это стоит своей цены (по крайней мере, для меня).Он также заменяет (вроде) BackSpace на Delete (то есть BackSpace начинает удалять вперед, как это делает Delete) в режиме вставки и делает его «BackSpace» вместо перемещения влево (или h)в обычном режиме.Я ничего не имею против Ctrl-H как способа «возврата», но я просто не хочу иметь две кнопки удаления и возможность «вернуться назад» (удалить назад) в обычном режиме.

Как я могуотменить это изменение, сохранив нужную настройку?

PS Я прочитал :h CTRL-h и немного :h xterm, но не смог найти решение.

1 Ответ

0 голосов
/ 16 декабря 2018
Команды

inoremap и nnoremap Vim могут использоваться для настройки интерпретации ключей в Vim.

Здесь описано решение для вашего конкретного контекста: https://conemu.github.io/en/VimXterm.html

соответствующая цитата: «Если у вас есть проблемы с BS в Vim (BS действует как клавиша Delete) в ConEmu, когда term=xterm, вы можете попробовать переназначить ключ BS:

inoremap <Char-0x07F> <BS> 
nnoremap <Char-0x07F> <BS>

»

В общем, когда ключ не выполняет то, что вы хотите, уловка состоит в том, чтобы выяснить, что он на самом деле отправляет в Vim.Иногда можно нажать Ctrl-V, а затем нажать эту клавишу в режиме вставки.Затем можно использовать inoremap и nnoremap, как показано выше, чтобы переназначить их в соответствии с желаемым поведением в режиме вставки и обычном режиме соответственно.

...