Чтобы расширить то, что сказал ZyX:
Такие клавиши, как <C-kMultiply>
, будут нормально работать в GVim, который получает ввод с клавиатуры из среды графического интерфейса, но их невозможно представить в потоке, который служит вводом терминала Vim, из-за почтенного способа определения в нем управляющих символов:
Как управляющие символы отображаются на клавиатуре (Википедия)
Модификатор управления просто обнуляет два старших бита, так что, например, G (1000111) становится BEL
(0000111 ). Это означает, что он может работать только с однобайтовыми символьными кодами: его невозможно применить к многобайтовым escape-последовательностям, таким как то, что на самом деле отправляет <kMultiply>
.
(Вот почему вы обычно не можете комбинировать Ctrl с Shift в терминале: и <C-G>
, и <C-g>
становятся одним и тем же управляющим символом после обнуления старших битов. .)
Что происходит с такой непредставимой комбинацией клавиш, зависит от терминала к терминалу: xterm
, например, проигнорирует модификатор и отправит <C-kMultiply>
как <kMultiply>
, а gnome-terminal
вообще откажется отправлять нажатие клавиши.
person
Pi Delport
schedule
26.07.2012
<C-kDivide>
? - person sidyll   schedule 07.06.2012<C-A>
отправляется как символ^A
и, вероятно, он не знает ни о каком символе, который подходит<C-kMultiply>
… - person sidyll   schedule 07.06.2012<C-
, потому что может представлять только управляющие коды ASCII. Если вы используете vim, управление отключается до того, как оно достигнет vim, поэтому не имеет значения, сможет ли vim его обработать. - person ZyX   schedule 07.06.2012