X-Git-Url: https://git.madduck.net/etc/zsh.git/blobdiff_plain/a2cd31157c9d949195cba09a63c7878ffb7fe069..d04677a0a650c4e850485b05f41134900fa5f639:/.zsh/zshrc/20_compsys diff --git a/.zsh/zshrc/20_compsys b/.zsh/zshrc/20_compsys index 4980eaa..a646102 100644 --- a/.zsh/zshrc/20_compsys +++ b/.zsh/zshrc/20_compsys @@ -1,13 +1,15 @@ -# zshrc/90_compctl +# zshrc/20_compsys # # Configures the completions system # # Copyright © 1994–2008 martin f. krafft # Released under the terms of the Artistic Licence 2.0 # -# Source repository: http://git.madduck.net/v/etc/zsh.git +# Source repository: git://git.madduck.net/etc/zsh.git # +zstyle :compinstall filename '$ZDOTDIR/zshrc/20_compsys' + # automatically list choices on an ambiguous completion setopt auto_list @@ -20,36 +22,43 @@ setopt rec_exact # move cursor to end of word being completed setopt always_to_end +# correct the command if mistyped +setopt correct + # correct all arguments, not just the command #setopt correctall # be magic about adding/removing final characters on tab completion setopt auto_param_keys auto_param_slash auto_remove_slash +# load fancy completion list and menu handler +zmodload zsh/complist + # initialise the completion system autoload -U compinit -compinit -d $VAR/zsh/compdump +compinit -d $ZVARDIR/comp-$HOST # cache results zstyle ':completion:*' use-cache on -zstyle ':completion:*' cache-path $ZVAR/compcache +zstyle ':completion:*' cache-path $ZVARDIR/compcache #zstyle ':completion:*' completer _list _expand _complete _ignored _match _correct _approximate _prefix -zstyle ':completion:*' completer _complete _ignored _match _approximate +zstyle ':completion:*' completer _complete _ignored _match _correct _approximate + +# allow cursor-key navigation through completion set +zstyle ':completion:*:*:*:*' menu select # use colours in completion lists and menus zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS} -# ignore working and backup copies +# ignore working and backup copies, and compiled objects zstyle ':completion:*:(all-|)files' ignored-patterns \ - '*.bk' '*.bak' '*.old' '*~' '.*.sw?' + '*.bk' '*.bak' '*.old' '*~' '.*.sw?' '*.o' '*.pyc' -# populate hosts completion with SSH's known_hosts -local _myhosts; -_myhosts=(${${${${(f)"$(<$HOME/.ssh/known_hosts)"}:#[0-9]*}%%\ *}%%,*}) -zstyle ':completion:*' hosts $_myhosts; - -zstyle -e ':completion:*:approximate:*' max-errors 'reply=($((($#PREFIX+$#SUFFIX)/3)) numeric )' +zstyle -e ':completion:*:approximate:*' max-errors 'reply=($((($#PREFIX+$#SUFFIX)/3)) not-numeric )' +zstyle -e ':completion:*:correct:*' max-errors 'reply=($((($#PREFIX+$#SUFFIX)/2)) numeric )' +#zstyle ':completion:*:correct:::' max-errors 1 not-numeric +#zstyle ':completion:*:approximate:::' max-errors 2 numeric #zstyle ':completion:*' list-suffixes true #zstyle ':completion:*' match-original both @@ -80,13 +89,13 @@ zstyle -e ':completion:*:*:vim#:*:*' ignored-patterns \ zstyle ':completion:*:processes' command 'ps -au$USER -o pid,time,cmd|grep -v "ps -au$USER -o pid,time,cmd"' zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#)[ 0-9:]#([^ ]#)*=01;30=01;31=01;38' -zstyle :compinstall filename '$ETC/zsh/compsys' - # commands that take commands as arguments compdef _precommand gdb compdef _precommand nohup compdef _precommand strace +# commands that take proceses as arguments + zstyle ':completion:*' verbose yes zstyle ':completion:*:descriptions' format '%B%d%b' zstyle ':completion:*:messages' format '%d'