2013-08-16 3 views
0

У меня есть Nmap в моем .vimrc:..ВИМ птар очень странное поведение

nnoremap (()<Esc>i 
nnoremap [ []<Esc>i 
nnoremap { {}<Esc>i 

«(» работает отлично Если я типа «(» я получаю «()» Но если я типа '[' или '{' Я получу 3 дополнительных пробела между '[' и ']'.

Я понятия не имею, из-за чего такое поведение. Я блуждаю, как я могу отследить процесс nmap Я могу поймать ошибку.

+3

Как это работает? Вы используете 'nnoremap' не' inoremap'. –

+0

Извините за ошибку imap для nmap! :) –

ответ

0

Вы, скорее всего, имеете пробел в своих командах nnoremap (или inoremap). Удалите их.

Вы можете проверить это, выполнив :set list и посмотрев, где находится $ или символ конца строки.

Завершающее пробельное пространство является частью отображения, и, поскольку отображение должно помещать курсор в середину скобок, там добавляется лишний пробел.

Смежные вопросы