7

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のサンプルコンテンツで名前が付けられたファイルを作成しました(私はブリュープラグインも試しました)が、補完は機能しません(ファイルに記載されているものはどれも)。さらに、エラーがスローされます:

_arguments:comparguments:312: can only be called from completion function

私は同様の問題と私の include をチェックしfpathまし~/.oh-my-zsh/custom/plugins/myserverた。

私は何が欠けていますか?これはかなり単純なはずです...助けてくれてありがとう

4

1 に答える 1

6

あなたの投稿から、ファイルに名前を付けたと思いますがmyserver.plugin.zsh、補完関数を定義するために使用される場合、その名前はアンダースコアで始まる必要があります。アンダースコアの後にコマンド名が続くのが通例のようです。つまり、あなたの場合は_myserver.

ただし、使用している明示的なコードがなければ、これ以上お手伝いできません。詳細については、このブログ投稿を確認してください。

oh-my-zsh補完機能をプラグインとして設計する必要はまったくないことに注意してください。スタンドアロンのコードとして作成するだけです。

于 2014-10-06T20:56:54.980 に答える