【问题标题】:What can I change in order that Compdef can bind my function?为了 Compdef 可以绑定我的函数,我可以更改什么?
【发布时间】:2019-12-14 02:25:46
【问题描述】:

我在 PHP 中创建了一些控制台命令。我需要在启动任务时使用自动完成功能。

我在.zshrc 文件中使用了alias otra="php console.php"

该功能本身似乎可以工作,但是当我键入命令名称“otra”时,只有文件夹自动完成...这与我的情况完全无关。

#compdef _otra otra

function _otra {
     local line
     _arguments -C \
         "1: :(createAction createBundle)" \
         "*::arg:->args"
}

我只想在我输入otra 和输入时出现createActioncreateBundle 这两个词。

编辑

好的,这就是我的想法...如果我删除我的别名,完成工作但我无法删除它,因为otra 不是有效命令...

我尝试使用 setopt no_complete_aliases,正如我在另一个 Stackoverflow 帖子中看到的那样,但它对我不起作用。

【问题讨论】:

    标签: zsh oh-my-zsh


    【解决方案1】:

    事实上,它与别名有关,但我不必设置setopt no_complete_aliases,但恰恰相反...... 在我将setopt complete_aliases 放入我的.zshrc 文件后,它就可以工作了:D

    【讨论】:

      猜你喜欢
      • 2015-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-03
      • 2010-10-01
      • 2021-06-27
      • 1970-01-01
      • 2012-06-14
      相关资源
      最近更新 更多