]> 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:

prefer NZ over GB
[etc/zsh.git] / .zsh / zshrc / 20_compsys
index 7abec12d647cc959efb550660c20864b10d9e3d7..a646102157b13e6c1f0afdb3972478d05ece9077 100644 (file)
@@ -1,13 +1,15 @@
-# zshrc/20_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,6 +22,9 @@ 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
 
 # correct all arguments, not just the command
 #setopt correctall
 
@@ -31,28 +36,29 @@ zmodload zsh/complist
 
 # initialise the completion system
 autoload -U compinit
 
 # initialise the completion system
 autoload -U compinit
-compinit -d $VAR/zsh/comp-$HOST
+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
@@ -83,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 ':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 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'
 zstyle ':completion:*' verbose yes
 zstyle ':completion:*:descriptions' format '%B%d%b'
 zstyle ':completion:*:messages' format '%d'