2009-02-19 70 views
33

如何配置Zsh製表符完成,以便當我鍵入cd ..<TAB>時,它將展開爲cd ../,並且在按下<TAB>後再次建議父目錄中的文件夾完成?「cd ..」的Zsh製表符完成

E.g.它應該顯示與輸入例如cd Documents<TAB>相同的行爲,其擴展爲cd Documents/,並且在按下<TAB>再次建議Documents中的文件夾完成。

作爲配置的起點,我使用MacPorts的空.zshrc和Zsh 4.3.9。

+0

很長一段時間我有這個疑問 – JuanPablo 2011-10-18 17:46:41

回答

56

同樣的問題與Debian不穩定,Ubuntu jaunty,兩船zsh 4.3.9。我知道有不同配置的多個人。

閱讀http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=514152後,我加入

zstyle ':completion:*' special-dirs true 

到我的配置,現在一切又正常工作。

-10

這可能會也可能不是一個有用的答案 - 切換到bash,它可以開箱即用。

+11

這有點像告訴vim用戶切換到emacs,因爲他找不到配置開關......恕我直言zsh比bash更強大,並且還帶有一個很棒的完成功能。你只需要激活它... – f3lix 2009-02-19 11:01:56

8

將這個到你的〜/ .zshrc:

autoload -Uz compinit 
compinit 

還擁有zsh的功能/適用於Mac OS X上http://code.google.com/p/zsh-templates-osx/配置的項目。就我個人而言,我認爲使用整個軟件包是一種矯枉過正。但發現櫻桃挑選一些技巧,功能,完成等等,並創建我自己的.zshrc

+0

謝謝,這配置完全符合我正在尋找的行爲。 – 2009-02-19 12:14:26

+0

z在你的代碼中做了什麼? – 2009-04-30 03:44:34

2

事實上,我現在發現,問題似乎並不來自配置。當使用.zshrc只包含

autoload -Uz compinit 
compinit 

的標籤完成工程,並使用默認的Mac OS X巖組(4.3.4)時作爲用於cd ..<TAB>。但與MacPorts的ZSH(4.3.9)選項卡完成只適用於其他文件夾,而不是..