Zshell完成调用另一个函数

Zshell完成调用另一个函数,zsh,prezto,Zsh,Prezto,我为tmux编写了几个zsh函数。我正试图将自动完成添加到其中一些函数中,但遇到了麻烦 其中一个函数是tk,是tmux kill会话的缩写。此函数使用要终止的会话的名称,如果未提供会话,则返回到当前会话 我的函数是这样的: function tk { if [ $# -ne 0 ]; then tmux kill-session -t $1 else tmux kill-session fi } 我还编写了一个active\u tmux\u sessions函数,该

我为tmux编写了几个zsh函数。我正试图将自动完成添加到其中一些函数中,但遇到了麻烦

其中一个函数是
tk
,是
tmux kill会话的缩写。此函数使用要终止的会话的名称,如果未提供会话,则返回到当前会话

我的函数是这样的:

function tk {
  if [ $# -ne 0 ]; then
    tmux kill-session -t $1
  else
    tmux kill-session
  fi
}
我还编写了一个
active\u tmux\u 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
时,出现以下错误:

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

active\u tmux\u sessions
中有一个输入错误。可能在输入这么长的问题之前就应该发现它了…@4ae1e1您介意具体指出打字错误是什么吗?我可以直接运行
active\u tmux\u sessions
功能。谢谢你的帮助<代码>活动的\u tmux \u ses-缺失的s-离子
@4ae1e1谢谢!