13

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

Например, когда я печатаю кд Вкладка cd D

~> cd Desktop/

Жму вкладку, результат:

~> cd Documents/

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

~> cd Desktop/

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

2 ответа2

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

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

и добавить :

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

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

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

ZSH Завершение

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .