Zshell完成调用另一个函数

时间:2019-11-10 03:09:18

标签: zsh prezto

我为tmux编写了几个zsh函数。我正在尝试为其中一些功能添加自动补全功能,但遇到麻烦了。

这些功能之一是tk,是tmux kill-session的简写。此功能使用要杀死的会话的名称,如果未提供会话名称,则会退回到当前会话。

这是我的功能:

function tk {
  if [ $# -ne 0 ]; then
    tmux kill-session -t $1
  else
    tmux kill-session
  fi
}

我还编写了一个active_tmux_sessions函数,该函数已在其他一些地方使用:

function active_tmux_sessions {
  tmux ls -F "#{session_name}" 2>/dev/null | cut -d: -f1
}

这就是我将它们粘合在一起的方法。

function _tk() {
  compadd $(active_tmux_sesions)
}

compdef _tk tk

当我输入tk <tab>时,出现此错误:

tk _tk:1: command not found: active_tmux_sesions
_tk:1: command not found: active_tmux_sesions
_tk:1: command not found: active_tmux_sesions

0 个答案:

没有答案