Beliebt

Abgleich der CD-Vervollständigung mit zsh - zsh, autocomplete, oh-my-zsh

Ich probiere zsh aus und es gibt ein Tab-Vervollständigungs-Verhalten, das ich ärgerlich finde: Es scheint so, als ob ich tippe cd str und schlagen TABwird es automatisch mit vervollständigen *str*. Beispielsweise, cd pl TAB führt zu einer Autovervollständigung von cd Applications/ weil "Applications "enthält" pl ".

Gibt es eine Möglichkeit, dies auszuschalten?

Ich weiß, dass zsh eine Funktion zum Vervollständigen von Registerkarten hat cd /u/loc/b TAB werde dich dazu bringen /usr/local/bin. Steht dieses Verhalten im Zusammenhang?

  • Betriebssystem: OSX 10.11
  • Zsh-Version: 5.0.8
  • oh-my-zsh plugins: git, zsh-syntax-highlighting, z

AKTUALISIEREN

Ich habe den fehlerhaften Codeblock bis zu meinem nachverfolgt ~/.oh-my-zsh/oh-my-zsh.sh Datei.

67 if [[ $ZSH_DISABLE_COMPFIX != true ]]; then
68   # If completion insecurities exist, warn the user without enabling completions.
69   if ! compaudit &>/dev/null; then
70     # This function resides in the "lib/compfix.zsh" script sourced above.
71     handle_completion_insecurities
72   # Else, enable and cache completions to the desired file.
73   else
74     compinit -d "${ZSH_COMPDUMP}"
75   fi
76 else
77     compinit -i -d "${ZSH_COMPDUMP}"
78 fi

Ich lese immer noch Dokumentation und versuche herauszufinden, was genau los ist.

Antworten:

2 fĂĽr Antwort â„– 1

Okay. Ich glaube, ich habe es geklärt Post war sehr hilfreich.

Grundsätzlich setzt oh-my-zsh die Vervollständigung auf

zstyle ":completion:*" matcher-list "m:{a-zA-Z}={A-Za-z}" "r:|[._-]=* r:|=*" "l:|=* r:|=*"

Entfernen "l:|=* r:|=*" (das ist die letzte Regel) gibt mir jetzt das gewĂĽnschte Verhalten.

Die Fähigkeit zu tun cd /u/lo/b/ TAB ist nicht beeinträchtigt.


Lies jetzt