Я не уверен, что это возможно. Пожалуйста, прочитайте обновление ниже.
Да, вы можете даже в терминале vim, но нет реального catch all ответа. В основном вы должны выполнить два шага:
, и точно укажите, какие входы вашего терминала (^[
является символом escape): $ cat
^[d
$
" in your .vimrc
execute "set =\ed"
" you have to use double quotes!
noremap :echo "m-d works!"
Понимая, как это работает, вы можете расширить этот «трюк» на другие «странные» комбинации, например, Я использую термит, и vim не распознает
, используя cat, я получаю ^[[1;2P
. Затем, в моем vimrc я делаю: execute "set
, а затем я могу отобразить его на что угодно.
Примечание: я не знаю почему, но для некоторых людей, использующих \
, работает вместо \e
.
Обновление (февраль 2016)
В зависимости от terminfo ваш терминал запускается, может быть, вы могли бы ... в большинстве терминалов, например, «alt + h» отображается на ^[h
, а именно: «escape + h». Поэтому он может перезаписывать ключи. Я просто попробовал (снова), и, похоже, это работает, но я считаю, что это очень сложная и ошибочная реализация.
Тем не менее, для достаточно храбрых, вот экспериментальный плагин: