map <C-Space>

и другие vi-подобные редакторы

Модератор: /dev/random

Ответить
Аватара пользователя
IronSnake
Сообщения: 8
ОС: Debian Lenny

map <C-Space>

Сообщение IronSnake »

Господа, такая проблема... В .vimrc прописан следующий мап:

Код: Выделить всё

imap <C-Space> <C-N>


однако, автодополнение не работает, а происходит что-то ни разу не понятное. Возможно, в этом треде уже был ответ, но все это прочитать я не осилю...
Спасибо сказали:
Аватара пользователя
Luinnar
Сообщения: 246
ОС: Solaris, Debian, Ubuntu

Re: map <C-Space>

Сообщение Luinnar »

Попробовал у себя, всё работает.
Ищите не замаплено ли в свою очередь сочитание <C-N>, ещё можете <C-P> вместо <C-N> попробовать.
Спасибо сказали:
Аватара пользователя
IronSnake
Сообщения: 8
ОС: Debian Lenny

Re: map <C-Space>

Сообщение IronSnake »

Сочетание <C-N> работает нормально, равно как <C-P>, а вот с <C-Space> не работают вообще никакие мапы :( Возможно, что-то перекрывает .vimrc из домашней папки?

Только что проверил, в gvim все работает, но пользуюсь-то я вимом консольным...
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5289
ОС: Gentoo

Re: map <C-Space>

Сообщение /dev/random »

Попробуйте imap <C-@> <C-N>
И нажимать Ctrl+Space.
ЕМНИП, терминал при нажатии Ctrl+Space генерирует "^@", так что должно помочь.
Спасибо сказали:
Аватара пользователя
IronSnake
Сообщения: 8
ОС: Debian Lenny

Re: map <C-Space>

Сообщение IronSnake »

Огромнейшее спасибо! Заработало. А кстати, что генерируется при нажатии на Tab?
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5289
ОС: Gentoo

Re: map <C-Space>

Сообщение /dev/random »

IronSnake писал(а):
13.01.2009 19:01
Огромнейшее спасибо! Заработало. А кстати, что генерируется при нажатии на Tab?

^I
Но об этом Vim знает, и в нём можно прописывать просто <Tab> вместо <C-i>
Спасибо сказали:
Аватара пользователя
IronSnake
Сообщения: 8
ОС: Debian Lenny

Re: map <C-Space>

Сообщение IronSnake »

/dev/random писал(а):
13.01.2009 19:29
^I
Но об этом Vim знает, и в нём можно прописывать просто <Tab> вместо <C-i>

Ничего подобного, однако. Не знает он <C-Tab>.

P.S. Черт, только сейчас заметил, что спросил не то, что спрашивал :) <C-Tab>, естественно, интересовал. Маппится как <C-i>
Спасибо сказали:
Аватара пользователя
IronSnake
Сообщения: 8
ОС: Debian Lenny

Re: map <C-Space>

Сообщение IronSnake »

А вот еще вопросец: какие виды мапов существуют?
Как я понимаю:

map - работает во всех режимах;
nmap - в нормальном режиме;
imap - в режиме редактирования;
vmap - в визуальном режиме.


А что такое cmap? И есть ли еще какие-нибудь?
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5289
ОС: Gentoo

Re: map <C-Space>

Сообщение /dev/random »

IronSnake писал(а):
13.01.2009 19:36
P.S. Черт, только сейчас заметил, что спросил не то, что спрашивал :) <C-Tab>, естественно, интересовал. Маппится как <C-i>

Терминал не видит разницы между <Tab> и <C-Tab>. И то, и другое генерирует ^I, и на них нельзя повесить разные действия.

IronSnake писал(а):
13.01.2009 19:52
А что такое cmap? И есть ли еще какие-нибудь?

:h map-commands
Спасибо сказали:
Ответить