我想为oh-my-zsh
编写一个简单的插件,只完成可能的服务器参数。
示例1:
$ myserver st # hits tab
start stop
示例2:
$ myserver # hits tab
start stop restart
根据wiki,我创建了一个名为~/.oh-my-zsh/custom/plugins/myserver/myserver.plugin.zsh
的文件,样本内容为coffee plugin(我也试过了brew plugin)但是completition不起作用(任何描述)在文件中)。而且抛出了错误:
_arguments:comparguments:312: can only be called from completion function
我检查了类似的问题,我的fpath
包含~/.oh-my-zsh/custom/plugins/myserver
。
我错过了什么?这应该很简单......谢谢你的帮助
答案 0 :(得分:5)
从您的帖子中我假设您已将文件命名为myserver.plugin.zsh
,但是,如果它用于定义完成功能,则其名称必须以下划线开头。通常情况下,下划线后跟命令名称,即在您的情况下_myserver
。
但是,如果没有显式代码你正在使用我无法帮助你。您可能需要查看this博客文章以获取进一步的帮助。
我应该注意,完全没有必要将完成函数设计为oh-my-zsh
插件;只需将其创建为独立的代码段。