İçindeki dosyalar ve dizinler için büyük / küçük harfe duyarsız bulanık tamamlama istiyorum zsh
. El kitabını birkaç saat okuduktan sonra, ben bu yüzden geldim:
zstyle ':completion:*:*:*:*:globbed-files' matcher 'r:|?=** m:{a-z\-}={A-Z\_}'
zstyle ':completion:*:*:*:*:local-directories' matcher 'r:|?=** m:{a-z\-}={A-Z\_}'
zstyle ':completion:*:*:*:*:directories' matcher 'r:|?=** m:{a-z\-}={A-Z\_}'
Ayrıca, TAB
olası tamamlamaları görüntülemek için bir kez basmak istiyorum , sadece tam olarak bir tamamlama varsa yazdıklarımı değiştiriyorum. Daha sonra TAB
ikinci kez basmak beni "menü tamamlama" moduna sokmalıdır. Kılavuzlara dayanarak, bu ile geldim:
zstyle ':completion:*' menu select
Şimdi her şey bir koşul dışında olması gerektiği gibi çalışıyor. İki klasörüm var Desktop
ve .rstudio-desktop
ana dizinimde. Ben beri setopt globdots
, ben aşağıdakileri yazmayı bekliyoruz:
$ cd ~/dktop<TAB>
komutumu girildiği gibi bırakmak ve tamamlama adayları olarak göstermek Desktop
ve .rstudio-desktop
. Bunun yerine, beni aşağıdakileri bırakarak kaldırır dktop
:
$ cd ~/
Tüm ilgili el kitaplarına, kılavuzlara, Stack Exchange sorularına ve diğer çeşitli kaynaklara baktım. Ama ne yaparsam yapayım, bu işi yapamam.
İlginçtir, ama, eğer ben de ev dizini ve beklendiği gibi aşağıdaki Her şeyin çalıştığından yazın:
$ cd dktop<TAB>
Yani, yalnızca yolların önde gelen olmayan segmentlerinde bir sorun var (ve bunun kullanılan etiket yerine etikete C-x h
karşılık geldiğini görebilirsiniz ).directories
local-directories
Kolay tekrarlanabilirlik için, burada bir olduğunu ~/.zshrc
(ile taze El Capitan sanal makine üzerinde test Yukarıda açıklanan durum ve davranışı yeniden edeceğini zsh
Homebrew itibaren).
zsh 5.3.1
OS X ile sorun yeniden ortaya çıkar. İşletim sistemleri arasında bir fark olması ilginçtir.
zsh 5.3.1
üzerindeArch Linux
.cd ~/dktop<tab>
verimcd ~/Desktop
.