2010-06-23 2 views
7

В моем случае кнопка с правым движением - ;vim mapping ctrl-;

Я хочу Ctrl;, чтобы переместить курсор на 7 символов вправо. Я попытался ниже отображение .vimrc, но он не работает:

nmap <c-;> 7;

ответ

11

Как и в предыдущем комментарии, кажется, что «;» не может быть в форме <C-;>.

Вы можете проверить, набрав Ctrl +V + последовательность клавиш.

Ctrl + V + ; дает лишь тогда ;Ctrl + V + л дают ^L.

Так что я полагаю, что vim не может признать <C-;>.

У вас есть больше информации о ключевых кодах страницах справки:

:help keycodes 
:help <C- 
5

Я не уверен, но это может быть потому, что <C-;> не отображает на ASCII символ. Только @, A-Z, [, \, ], ^ и _ отображение в ASCII символов (от 0 до 31 соответственно), когда в сочетании с Ctrl.

EDIT

Я сделал некоторые поиски и нашел this thread. В нем говорится, что gvim.exe работает так, как я предлагаю: используйте только допустимые управляющие символы, ни один другой. Интересно, что vim.exe работает по-разному, и вы можете сделать нужный вам сопоставление.

1

Как другие сказал <c-;> не может быть отображен. Лучшее решение:

nmap <C-l> 7l 
nmap <C-h> 7h 

Вы можете переназначить обычные клавиши управления курсором вместо этого.
что-то вроде этого, также будет работать:

nmap <C-Right> 7l 
nmap <C-Left> 7h 

другой стороне пример для изменения размера окна:

" resize horzontal split window 
nmap <C-Up> <C-W>-<C-W>- 
nmap <C-Down> <C-W>+<C-W>+ 
" resize vertical split window 
nmap <C-Right> <C-W>><C-W>> 
nmap <C-Left> <C-W><<C-W><