]> git.madduck.net Git - etc/zsh.git/blob - .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:

do not exit but return and make prompt standout
[etc/zsh.git] / .zsh / zshrc / 20_compsys
1 # zshrc/20_compsys
2 #
3 # Configures the completions system
4 #
5 # Copyright © 1994–2008 martin f. krafft <madduck@madduck.net>
6 # Released under the terms of the Artistic Licence 2.0
7 #
8 # Source repository: http://git.madduck.net/v/etc/zsh.git
9 #
10
11 # automatically list choices on an ambiguous completion
12 setopt auto_list
13
14 # use menu after the second completion request
15 setopt auto_menu
16
17 # recognise exact matches even if they're ambiguous
18 setopt rec_exact
19
20 # move cursor to end of word being completed
21 setopt always_to_end
22
23 # correct all arguments, not just the command
24 #setopt correctall
25
26 # be magic about adding/removing final characters on tab completion
27 setopt auto_param_keys auto_param_slash auto_remove_slash
28
29 # load fancy completion list and menu handler
30 zmodload zsh/complist
31
32 # initialise the completion system
33 autoload -U compinit
34 compinit -d $ZVARDIR/comp-$HOST
35
36 # cache results
37 zstyle ':completion:*' use-cache on
38 zstyle ':completion:*' cache-path $ZVARDIR/compcache
39
40 #zstyle ':completion:*' completer _list _expand _complete _ignored _match _correct _approximate _prefix
41 zstyle ':completion:*' completer _complete _ignored _match _approximate
42
43 # use colours in completion lists and menus
44 zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}
45
46 # ignore working and backup copies
47 zstyle ':completion:*:(all-|)files' ignored-patterns \
48   '*.bk' '*.bak' '*.old' '*~' '.*.sw?'
49
50 zstyle -e ':completion:*:approximate:*' max-errors 'reply=($((($#PREFIX+$#SUFFIX)/3)) numeric )'
51
52 #zstyle ':completion:*' list-suffixes true
53 #zstyle ':completion:*' match-original both
54 #zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}'
55 #zstyle ':completion:*:match:*' original only
56 #zstyle ':completion:*' original true
57 #zstyle ':completion:*' squeeze-slashes true
58
59 # functions which start with _ are internal and ignored
60 zstyle ':completion:*:functions' ignored-patterns '_*'
61
62 # do not offer files already specified on the line
63 zstyle ':completion:*:rm:*' ignore-line yes
64
65 #zstyle ':completion:*:*:-subscript-:*' tag-order indexes parameters
66 #zstyle ':completion::*:(-command-|export):*' fake-parameters ${${${_comps[(I)-value-*]#*,}%%,*}:#-*-}
67
68 # ignore current directory when completing in ../
69 #zstyle ':completion:*:cd:*' ignore-parents parent pwd
70 zstyle ':completion:*' ignore-parents parent pwd
71
72 # http://xana.scru.org/2005/08/20#ignorelatexjunk
73 zstyle -e ':completion:*:*:vim#:*:*' ignored-patterns \
74   'texfiles=$(echo ${PREFIX}*.tex); [[ -n "$texfiles" ]] &&
75   reply=(*.(aux|dvi|log|ps|pdf|bbl|toc|lot|lof|latexmain)) || reply=()'
76
77 # http://madism.org/~madcoder/dotfiles/zsh/40_completion
78 zstyle ':completion:*:processes' command 'ps -au$USER -o pid,time,cmd|grep -v "ps -au$USER -o pid,time,cmd"'
79 zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#)[ 0-9:]#([^ ]#)*=01;30=01;31=01;38'
80
81 zstyle :compinstall filename '$ETC/zsh/compsys'
82
83 # commands that take commands as arguments
84 compdef _precommand gdb
85 compdef _precommand nohup
86 compdef _precommand strace
87
88 zstyle ':completion:*' verbose yes
89 zstyle ':completion:*:descriptions' format '%B%d%b'
90 zstyle ':completion:*:messages' format '%d'
91 zstyle ':completion:*:warnings' format 'no matches for: %d'
92 zstyle ':completion:*' group-name ''
93
94 fignore=(~ .o .pyc)
95
96 # vim:ft=zsh