Cintu и Zsh. Автоматическое дополнение

Алексей Федорчук

Как было сказано в предыдущем наброске, набирать длинные команды и, тем более, ещё более длинные пути в х аргументах совсем не обязательно. Ибо во всех развитых шеллах с давних времён (хотя и не изначально) существует механизм их автоматического дополнения по нажатию клавиши табулятора. Механизм этот прекрасно известен всем линуксоидам по его реализации в Bash’е. Однако в Zsh обычное автоматическое дополнение можно дополнить парой полезных фич — и в Cintu в пользовательском ~/.zshrc это сделано «из коробки».

Первая из них — развёртывание аббревиатур путей в пути полные. То есть если набрать в командной строке что-то вроде

$ ls /u/s/f/I

а затем нажать клавишу табулятора, то эта, казалось бы, бессмысленная последовательность символов волшебным образом преобразуется во вполне разумный аргумент команды:

$ ls /usr/share/fonts/Input-Font/

Вторая Zsh-специфичная особенность автодополнения — вывод предлагаемых вариантов в виде менб-подобного списка. А именно, если после набора последовательности символов

$ ls /u/s/f/I

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

zsh-autocomplit_001

И так — до получения «окончательного результата»:

zsh-autocomplit_002

Обе эти фичи не берутся не берутся с неба, а достигаются включением соответствующих опций в ~/.zshrc. Каких именно — расскажу в заключение подраздела про Zsh в Cintu. А следующим номером программы будут вопросы истории команд.

Моя Cintu. Оглавление

Добавить комментарий