Сопоставление клавиш управления в GVim без ‹c-› и i_ctrl_v

У меня проблема, которую я уже решил на уровне X-сервера (кстати: я использую Ubuntu 12.04), но не в GVim.

У меня немецкая раскладка клавиатуры с буквами ö и ä, где [ и ] на qwerty-клавиатуре. Но теперь я хочу изменить сопоставления нормального режима vim, чтобы я мог набирать ö и Ctrl + ö, как если бы это было [ и CTRL + [ соответственно. Итак, я создал файл xmodmap и сопоставил Ctrl + ö с CTRL + [. Теперь xserver показывает правильный ответ (например, когда я сопоставляю Ctrl + ö с Ctrl + u, я могу стереть текущая строка в xterm).

Но почему-то это не работает в gVim, и, насколько я понимаю, с помощью gVim он обрабатывает escape-последовательности, такие как Ctrl + что-то особым образом (например, Ctrl + < kbd> ö в режиме вставки дает простой ö в отличие от поведения в xterm). Но я не понимаю, как это решить. Может кто-нибудь помочь мне?

РЕДАКТИРОВАТЬ:

Я заметил, что он работает, когда я запускаю Vim в эмуляторе терминала (это guake), но не в GVim (который я хочу заставить работать).


person jan    schedule 21.08.2012    source источник
comment
Да, GVim не делает разницы между <C-ö> и ö (то же самое с é и другими на моей французской клавиатуре). Хотите чего-нибудь странного? MacVim не заботится о том, где физически находится ]: <C-$> то же самое, что и <C-]>.   -  person romainl    schedule 21.08.2012
comment
Означает ли отсутствие в названии ‹c-› и i_ctrl_v решения, в которых используется команда :map в Vim? (Вы не хотите, чтобы vim знал, что вы что-то сделали.)   -  person idbrii    schedule 20.12.2012
comment
Что происходит, когда вы выполняете <C-v><C-ö> и <C-v><C-[> в Gvim? Выводит ли он тот же код символа? Как этот результат по сравнению с тем, когда вы делаете то же самое в Vim?   -  person Quinn Strahl    schedule 09.04.2013


Ответы (1)


Если я правильно понял, попробуйте использовать параметр langmap следующим образом:

:set langmap=ö[,ä]
person lollo    schedule 28.05.2013