zsh
отлично, но его система завершения очень разнообразна. И в документации нет хороших примеров. Есть ли шаблон для завершения для конкретного приложения. Завершение будет получать данные о совпадении из файла, разделенные символами новой строки?Сделать zsh полными аргументами из файла
Я попытался модифицировать старую пример шахты, который принимает данные матча «вживую»:
~ % cat .zsh/completers/_jazzup
#compdef jazz_up
_arguments "2: :(`mpc lsplaylists|sed -e 's# #\\\\ #g'`)"
Я мог бы поставить cat my_file
там вместо mpc
вызова и так далее, но будет ли более элегантный способ сделать это простая задача? И это завершение имеет специфику размещения: можете ли вы представить пример, где zsh попытается выполнить в любой момент после распознавания имени программы?
Данные о совпадении будут иметь пробелы и т. Д., Завершение должно покинуть WS. Пример того, что:
Foo bar
Barbaric
Get it (42)
Теперь, если это завершение будет сконфигурировано для команды Say
, мы должны получить этот вид поведения из zsh
:
$ Say Fo<TAB>
$ Say Foo\ bar
$ Say Ge<TAB>
$ Say Get\ it\ \(42\)
Фантастический. Я награду некоторыми наградами, если вы можете немного разобраться в ссылках и подробностях, но это служит прекрасным примером, который я искал. – progo
Спасибо, много. Это, безусловно, самое краткое пошаговое руководство, которое я нашел для завершения zsh. Он заслуживает гораздо более высоких показателей, чем получил. –
Где я могу получить информацию о флагах 'uf' – Timo