Недавно я влюбился в эффективные системы завершения текста. Один из моих любимых видов завершения - так называемое нечеткое завершение. Это режим, в котором программа завершает ввод данных пользователем, основываясь только на паре символов, которые могут встречаться «где угодно» (почти) в имени файла или пути. Эта функция существует по крайней мере для этих программ:
- TextMate
- Плагин Vim Command-T https://github.com/wincent/Command-T
- Система пополнения Vim https://github.com/Shougo/neocomplcache
- Различные современные IDE
Пример использования этого режима в текстовом редакторе:
Пользователь пытается завершить слово longWordNameThatTheyDontWantToWriteByHand, и они могут сделать это, набрав, например, первую букву и некоторые заглавные буквы. Таким образом, ввод lwnt может завершить все слово.
Мой вопрос: есть ли режим или что-то подобное, что я мог бы использовать с оболочкой zsh?
источник
stack install && vlc ~/Music/erf
не была завершена кstack install && vlc ~/Music/FGFC820\ -\ Perfect\ War.mp3
.'r:|?=** m:{a-z\-}={A-Z\_}'
сейчас, что гораздо проще, и не страдает от проблемы, которую вы описываете.Проверьте мой проект FZF .
Это нечеткий искатель общего назначения, написанный на Golang, который может использоваться с любым списком вещей: файлы, процессы, история команд, ветки git и т. Д.
Для zsh предусмотрены следующие привязки клавиш:
CTRL-T
- Вставьте выбранные пути к файлам в командную строкуCTRL-R
- Вставить выбранную команду из истории в командную строкуALT-C
- перейдите в выбранный каталоги нечеткий режим завершения:
источник
**