Вопрос

Я хочу использовать shift-tab Для автоматического завершения и переключения кода визуально блокирует. Я имею в виду Make_shift-tab_work. Отказ Эта ссылка говорит о сопоставлении ^[[Z к shift-tab Отказ Но я не получаю ^[[Z Когда я нажимаю shift-tab. Отказ Я просто получаю нормальный tab в таком случае.

Затем он говорит об использовании xmodmap -pke | grep 'Tab' на карте вкладок клавиш. Согласно тому, что выход должен быть

keycode 23 = Tab
or
keycode 23 = Tab ISO_Left_Tab

Однако я получаю

keycode  22 = Tab KP_Tab

Если я использую xmodmap -e 'keycode 22 = Tab ISO_Left_Tab' и после этого xmodmap -pke | grep 'Tab', Я все еще получаю

keycode  22 = Tab KP_Tab

Это означает бежать xmodmap -e 'keycode 22 = Tab ISO_Left_Tab' не имеет эффекта.

В конце концов, ссылка упоминается, используя xev чтобы увидеть, что X Получает, когда я нажимаю shift-tab. Отказ Но у меня нет xev в моей системе.

Есть ли другой способ, которым я могу захватить Shift-Tab в Vim

Это было полезно?

Решение

Ссылка разговаривает конкретно о получении ^[[Z Когда вы нажимаете Ctrl+вниманиеСдвиг+Вкладка в режиме вставки. Если вы оставите Ctrl+внимание, Тогда Vim будет вести себя так, как будто вы нажали Вкладка.

Самый простой способ сделать VIM признать <S-Tab>, чтобы напрямую установить t_kB Возможность escape Sequence Ваш терминал отправляет, а не возиться с картами.

Как быстрый тест, попробуйте это в бегом VIM:

: установить T_KB =Ctrl+вниманиеEsc.Z.
: ИМПu003CS-Tab> фюра

Теперь, когда вы нажимаете Сдвиг+Вкладка В режиме вставки, foo должен быть вставлен. Если это сработало, вы можете сделать изменение постоянным, добавив следующее в свой VIMRC.

exe 'set t_kB=' . nr2char(27) . '[Z'
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top