Шаг 1 в vim:

:map o iinsert<CR>some<CR>lines<ESC>

В обычной настройке, такой как debian, нажатие o сейчас вставит это по желанию:

insert
some
lines

Но в vim на cygwin <CR> не анализируется правильно, поэтому нажатие o вставит это:

insert<CR>some<CR>lines<ESC>

Как я могу заставить этот вид сопоставления работать правильно в cygwin?

(Примечание: вывод: verbose map идентичен на debian и cygwin)

1 ответ1

2

Вам, вероятно, нужно сначала либо " :set nocompatible ", либо создать ~/.vimrc (наличие vimrc автоматически делает эквивалент :set nocompatible).

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

Это также отвечает на ваш вопрос о « :se cpoptions=aABceFs » - вы удаляете символ «<» из этой опции, которая, когда она присутствует, отключает распознавание <...> кодов в отображениях и т.д.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .