Привязать Shift-Tab к полной-назад в рыбе


14

Я обнаружил, что использую автозаполнение функциональности fish-shell, где нажатие клавиши tab дважды или более циклически переключает предложения. Но затем я случайно нажал клавишу табуляции один раз для многих, и я хотел вернуться к предыдущему предложению, поэтому я нажал shift-tab, который добавлялся только [zк команде.

Например, когда я печатаю cd Dtabtab:

~> cd Desktop/

Жму tab, результат:

~> cd Documents/

Теперь, когда я нажимаю <shift+tab>, приглашение меняется ~> cd Documents/[Zвместо того, чтобы вернуться к желаемому:

~> cd Desktop/

Как мне это сделать (желательно с помощью fish_user_key_bindings.fishфайла)? Документация предоставляет только специальную функцию complete.


Разве нет "отменить" или что-нибудь?
Джош Стивенсон

Ответы:


1
  • Как вы сказали "Документация обеспечивает только специальную функцию завершения". Вы не можете вернуться к предложению предварительного просмотра, потому что эта функция не реализована.

  • но для определения новой привязки вы должны использовать функцию fish_user_key_binding, а НЕ файл .fish: откройте файл конфигурации ~/.config/fish/config.fish

и добавить :

function fish_user_key_bindings
        bind [Z complete
        end
  • перезагрузите рыбу, это хорошо сдвинуть Shift + вкладка для завершения

Мне не нужна еще одна привязка клавиш, мне нужна привязка клавиш, чтобы вернуться к предыдущему предложению. Я думаю, вы правы, и это просто не реализовано ...
Себастьян

-2

Попробуйте вместо этого использовать zsh.

Точные детали его автозаполнения, конечно, настраиваются в соответствии с вашими личными вкусами, но способ, которым я его настроил, - если я нажму Tabдва раза, я получу «меню», в котором я могу перемещаться с помощью Tabклавиши или клавиш со стрелками, например:

ZSH Завершение

После того, как я выбрал нужную запись, я могу нажать Enter, чтобы сообщить zsh, что это то, что я хочу, или я могу просто продолжить ввод, и zsh примет это правильно.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.