]> git.madduck.net Git - etc/zsh.git/blobdiff - .zsh/zshrc/20_compsys

madduck's git repository

Every one of the projects in this repository is available at the canonical URL git://git.madduck.net/madduck/pub/<projectpath> — see each project's metadata for the exact URL.

All patches and comments are welcome. Please squash your changes to logical commits before using git-format-patch and git-send-email to patches@git.madduck.net. If you'd read over the Git project's submission guidelines and adhered to them, I'd be especially grateful.

SSH access, as well as push access can be individually arranged.

If you use my repositories frequently, consider adding the following snippet to ~/.gitconfig and using the third clone URL listed for each project:

[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:

expand ~ for inplacemkdir
[etc/zsh.git] / .zsh / zshrc / 20_compsys
index 4980eaa0813e3c89dfba786828a97446ae748472..902966a1c4708b7484dde6fd790c4e274fae28f2 100644 (file)
@@ -1,13 +1,15 @@
-# zshrc/90_compctl
+# zshrc/20_compsys
 #
 # Configures the completions system
 #
 # Copyright © 1994–2008 martin f. krafft <madduck@madduck.net>
 # Released under the terms of the Artistic Licence 2.0
 #
 #
 # Configures the completions system
 #
 # Copyright © 1994–2008 martin f. krafft <madduck@madduck.net>
 # 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
 
 # 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
 
 # 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
 
 # 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
 # initialise the completion system
 autoload -U compinit
-compinit -d $VAR/zsh/compdump
+compinit -d $ZVARDIR/comp-$HOST
 
 # cache results
 zstyle ':completion:*' use-cache on
 
 # 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 _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}
 
 
 # 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 \
 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
 
 #zstyle ':completion:*' list-suffixes true
 #zstyle ':completion:*' match-original both
@@ -78,9 +87,6 @@ zstyle -e ':completion:*:*:vim#:*:*' ignored-patterns \
 
 # http://madism.org/~madcoder/dotfiles/zsh/40_completion
 zstyle ':completion:*:processes' command 'ps -au$USER -o pid,time,cmd|grep -v "ps -au$USER -o pid,time,cmd"'
 
 # http://madism.org/~madcoder/dotfiles/zsh/40_completion
 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
 
 # commands that take commands as arguments
 compdef _precommand gdb
@@ -93,4 +99,8 @@ zstyle ':completion:*:messages' format '%d'
 zstyle ':completion:*:warnings' format 'no matches for: %d'
 zstyle ':completion:*' group-name ''
 
 zstyle ':completion:*:warnings' format 'no matches for: %d'
 zstyle ':completion:*' group-name ''
 
+# #527301
+zstyle :completion::complete:xmms2:\*:values list-grouped false
+zstyle :completion::complete:xmms2:\*:values sort false
+
 # vim:ft=zsh
 # vim:ft=zsh