2009-10-28 57 views
2

我想啓用zsh自動完成yast2(一個OpenSuSE控制面板)模塊,但它似乎已經定義了一些東西。我可以運行如何覆蓋現有的zsh鍵盤完成?

compctl -k "(hello world)" nonexistantprogram 

就好了,但

compctl -k "(hello world)" yast2 

不會在所有的工作。 yast2的一些東西似乎已經被定義,即「 - 」選項: - 全屏, - 幾何, - 列表[submodules]等。

即使對於那些不使用OpenSuSE的人:是否有任何標誌compctl,使其覆蓋以前的設置?首先十分感謝。

回答

2

很可能,您的系統正在使用較新的compsys系統,而不是較早的compctl系統。見man zshcompsysman zshcompwid(和man zshcompctl)。

yast2完成功能可能是在這個文件(或類似路徑):

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

漂亮,謝謝了!我還沒有修復它(很快會這樣做),但你的答案似乎很明顯(我/usr/share/zsh/4.3.6/functions/_yast2)。 – gatoatigrado 2009-10-28 18:47:28

+0

太棒了,花了一些時間尋找如何去做。這將是很好的覆蓋默認值(問:http://stackoverflow.com/questions/17968024/zsh-disable-default-completion-for-make) – 2013-07-31 10:44:16