Я не могу найти способ сопоставления <control> period
и <control> comma
в Vim. Возможно ли это?
Есть ли способ отобразить период Ctrl и запятую Ctrl в Vim?
Ответ 1
В соответствии с часто задаваемыми вопросами вам кажется, что вам не повезло с <C-.>
и <C-,>
, так как эта комбинация клавиш отсутствует в списке Ctrl которые могут обнаружить Vim (Vim может отображать только на печатаемые аккорды ASCII).
Ответ 2
Из-за того, что ввод с клавиатуры осуществляется внутренне, к сожалению, сегодня это вообще невозможно, даже в GVIM. Некоторые комбинации клавиш, такие как Ctrl + non-alphabetic, не могут быть отображены, а Ctrl + letter vs. Ctrl + Shift + letter не может быть выделен. (Если ваш терминал не отправляет отдельный код termcap для него, чего больше всего нет.) В режиме ввода или командной строки попробуйте ввести комбинацию клавиш. Если ничего не происходит/не вставлено, вы не можете использовать эту комбинацию клавиш. Это также относится к <Tab>
/<C-I>
, <CR>
/<C-M>
/<Esc>
/<C-[>
и т.д. (Только исключение составляет <BS>
/<C-H>
.) Это известная точка боли и тема различных обсуждений vim_dev и канала #vim IRC.
Некоторые люди (прежде всего Пол ЛевНерд Эванс) хотят исправить это (даже для консоли Vim в терминалах, которые поддерживают это), и разместили различные предложения.
Но на сегодняшний день никаких патчей или добровольцев еще не вышли, хотя многие выразили желание иметь это в будущем выпуске Vim 8.
Ответ 3
Не будьте так пессимистичны в создании ярлыка. Есть внешние варианты. Попробуйте использовать следующий код в AutoHotKey. [Все, что вам нужно, это загрузить и установить AHK и запустить следующий код как script.]
#IfWinActive ahk_class Vim
^+!left:: send :s/{^}/`%/g{Enter}{$}o{enter} ; This is for commenting in tex files. you may change `% to be other symbles.
^,:: send ^ww
+^,:: send ^wW
Надеюсь, это поможет в вашей проблеме.