Обновление: Оказывается ошибка в MacVim (или, возможно, функция, которая еще не реализована).
Япытаясь Vim, исходя из TextMate .TextMate имеет плагин Ruby, где вы можете набрать Control + Command + Shift + E , и он найдет все строки в вашемфайл, содержащий "# =>", и он обновит их проверенным результатом этой строки.
Я нашел библиотеку, которую они используют для этого, она называется xmpfilter и поставляется с rcodetools.
Так что я могу заставить Vim выполнить то же поведение, набрав «mzggVG:! Xmpfilter -a», который выделит весь файл, перейдет в режим последней строки и передаст содержимое в xmpfilter,и затем замените выделенное содержимое на результат.
Но я хочу сопоставить его с той же комбинацией клавиш, которую использует TextMate, чтобы у него был тот же интерфейс, потому что это стало огромным часть моего рабочего процесса.
Вот несколько примеров того, как я пытался сделать эту работу
:nmap <silent> <D-C-E> mzggVG!xmpfilter -a<cr>'z
:nmap <silent> <S-D-C-e> mzggVG!xmpfilter -a<cr>'z
:nmap <silent> <SDC-e> mzggVG!xmpfilter -a<cr>'z
:nmap <silent> <S-<D-<C-e>>> mzggVG!xmpfilter -a<cr>'z
:nmap <silent> <SDC-e> mzggVG!xmpfilter -a<cr>'z
:nmap <silent> <S-><D-><C-e> mzggVG!xmpfilter -a<cr>'z
Но ни один из них не работает правильно.Казалось бы, Я не могу понять, как указать несколько мета-ключей .(В качестве проверки работоспособности я убедился, что :nmap <silent> <S-e> mzggVG!xmpfilter -a<cr>'z
работает.) Буду признателен за любую помощь.
(Примечание: я использую MacVim на Snow Leopard)