【问题标题】:How does one override an existing zsh keyboard completion?如何覆盖现有的 zsh 键盘补全?
【发布时间】:2009-10-28 08:49:48
【问题描述】:

我想启用 zsh 来自动完成 yast2(一个 OpenSuSE 控制面板)的模块,但它似乎已经定义了一些东西。我可以跑

compctl -k "(hello world)" nonexistantprogram

很好,但是

compctl -k "(hello world)" yast2

根本不起作用。 yast2 的某些内容似乎已经定义,即“-”选项:--fullscreen、--geometry、--list [子模块] 等。

即使对于那些不使用 OpenSuSE 的人:是否有任何标志可以让 compctl 覆盖以前的设置?提前非常感谢。

【问题讨论】:

    标签: linux autocomplete zsh opensuse


    【解决方案1】:

    很可能,您的系统使用的是较新的 compsys 系统,而不是较旧的 compctl 系统。见man zshcompsysman zshcompwid(和man zshcompctl)。

    yast2 的补全函数可能在这个文件(或类似路径)中:

    /usr/share/zsh/functions/Completion/Linux/_yast
    

    【讨论】:

    • 漂亮,非常感谢!我还没有完全修复它(很快就会修复),但你的答案似乎很明显(/usr/share/zsh/4.3.6/functions/_yast2 对我来说)。
    • 太好了,花了一些时间研究如何做到这一点。覆盖默认值会很好(Q:stackoverflow.com/questions/17968024/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-15
    • 1970-01-01
    • 1970-01-01
    • 2017-02-21
    • 2014-09-16
    • 1970-01-01
    相关资源
    最近更新 更多