# completions setopt complete_in_word # complete both ends of words setopt always_to_end # and move cursor to the end afterward setopt auto_menu # brings up the menu ... setopt no_menu_complete # ... and does not select the first option setopt auto_param_slash # convenience: add trailing / after directories setopt no_case_glob setopt no_flow_control # complete . and .. zstyle ':completion:*' special-dirs true # complete the middle of words e.g. lc -> pluralcafe zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' 'r:|=*' 'l:|=* r:|=*' # cache completions zstyle ':completion::complete:*' use-cache yes zstyle ':completion::complete:*' cache-path "$HOME/.zcompcache" # enable completions autoload -Uz compinit && compinit