2016-12-12 1 views
0

У меня возникла проблема с отображением Ctrl-# в новой команде, она продолжает выполнение по умолчанию # (поиск назад для слова под курсором), строка, которую у меня есть в моем .vimrc: map silent <c-#> :lnext<CR> Vim - как переназначить хэш-ключ

Есть что-то, что мне не хватает, # обрабатывается специально в vim?

+1

Нет, вы не можете на карте ''. – romainl

ответ

2

В связи с тем, что ввод с клавиатуры осуществляется внутренне, к сожалению, сегодня это вообще невозможно, даже в GVIM. Некоторые комбинации клавиш, как Ctrl + неалфавитный не могут быть отображены, и Ctrl + письмо против Ctrl +сдвиг + письмо не может отличить. (Если ваш терминал не отправляет отдельный код termcap, который больше всего этого не делает.) В режиме ввода или командной строки попробуйте ввести комбинацию клавиш. Если ничего не происходит/не вставлено, вы не можете использовать эту комбинацию клавиш. Это также относится и к <Tab>/<C-I>, <CR>/<C-M>/<Esc>/<C-[> и т.д. (только исключение составляет <BS>/<C-H>.) Это известная точка боли, и предметом различных дискуссий по vim_dev и канала #vim IRC.

Некоторые люди (прежде всего Пол ЛевНерд Эванс) хотят исправить это (даже для консоли Vim в терминалах, которые поддерживают это), и предложили различные предложения, ср. http://groups.google.com/group/vim_dev/browse_thread/thread/626e83fa4588b32a/bfbcb22f37a8a1f8

Но на сегодняшний день никаких патчей или добровольцев еще не вышли, хотя многие из них выразили желание иметь это в будущем выпуске Vim.