Я пытаюсь использовать командную кнопку в MacVim вместо Ctrl и других кнопок.
Я попробовал что-то вроде :imap <D-space> <Esc>, чтобы переопределить обычную функциональность Command-space в MacVim, но он все равно выполняет прожектор.
Любые идеи?
Я пытаюсь использовать командную кнопку в MacVim вместо Ctrl и других кнопок.
Я попробовал что-то вроде :imap <D-space> <Esc>, чтобы переопределить обычную функциональность Command-space в MacVim, но он все равно выполняет прожектор.
Любые идеи?
В этих случаях обычно оконный менеджер перехватывает нажатие клавиши до того, как приложение его увидит. Может быть возможность отключить определенные глобальные привязки клавиш, когда указанное приложение активно, но я не смог найти его в 10.5 — оконные менеджеры Linux имеют эту функцию, как и окна, поэтому я ожидаю, что она где-то прячется в ОС WM..
<D-x> на что-то в режиме вставки без проблем. Так что это не общая проблема с командной кнопкой.
- person Michael Anderson; 03.09.2011
Ярлык Spotlight имеет приоритет над вашим собственным ярлыком.
Чтобы иметь возможность использовать его в MacVim, вы должны изменить ярлык Spotlight в его настройках.
Однако клавиша Command не будет работать в Terminal.app и не будет отправляться на удаленные серверы, подключенные по SSH. Если вы используете Vim на сервере, вы не сможете его использовать, и вам придется либо создавать и изучать множество сопоставлений для конкретной машины, либо просто использовать значения по умолчанию.
Другая возможная проблема, с которой я столкнулся в начале, заключается в том, что сочетания клавиш с несколькими клавишами-модификаторами (например, <D-M-something> или <C-S-something>) не работают в MacVim.
Из-за этого и количества встроенных сочетаний клавиш с использованием этих клавиш у вас не будет много возможностей.
Когда я решил изучить Vim (с MacVim), я много раз пытался сделать его (и Vim) более «похожим на Mac» или «похожим на TextMate», но безрезультатно.
Вместо этого я предлагаю вам поступать так, как Vim. Это может показаться странным, но оно того стоит.
В вашем случае «способ Vim» будет использовать mapleader, это обычная клавиша на вашей клавиатуре, которая используется для пользовательских сопоставлений. Ключ по умолчанию — \, если вы хотите изменить его (например, на ,, это мои настройки, но YMMV), добавьте эту строку в свой ~/.vimrc:
let mapleader=","
После этого вы можете создавать сопоставления следующим образом:
inoremap <leader><Space> <ESC>