İç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, TABolası 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 TABikinci 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 Desktopve .rstudio-desktopana 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 Desktopve .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 hkarşılık geldiğini görebilirsiniz ).directorieslocal-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 zshHomebrew itibaren).
zsh 5.3.1OS 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.