zsh автозаполнение результатов от функции

Я искал и искал и не смог найти четкий способ сделать это:

Немного придуманный пример, чтобы скрыть детали: скажем, я хочу автозаполнять имена сеансов tmux командой, которая их откроет.

Так сказать tmux-open $NAME открывает указанный сеанс tmux и tmux-ls перечисляет все возможные имена сеансов, разделенные символами новой строки.

Как я могу настроить Zsh так, чтобы tmux-open <TAB> автозаполнение со списком возможных сессий из tmux-ls,

1 ответ

Догадаться. Это было довольно просто, и поэтому многие гиды, казалось, пропустили что-то подобное и пошли на более сложные вещи. В ~/.zshrc:

function _tmux_completions() {
  local -a sessions
  sessions=($(tmux-ls))
  compadd -a sessions
}
compdef _tmux_completions tmux-open
Другие вопросы по тегам