--- /dev/null
+# http://xana.scru.org/2005/08/20#ignorelatexjunk
+zstyle -e ':completion:*:*:vim#:*:*' ignored-patterns \
+ 'texfiles=$(echo ${PREFIX}*.tex); [[ -n "$texfiles" ]] &&
+ reply=(*.(aux|dvi|log|ps|pdf|bbl|toc|lot|lof|latexmain)) || reply=()'
+
+# 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 ':completion:*:*:*:*' menu select
+
+# ignore working and backup copies, and compiled objects
+zstyle ':completion:*:(all-|)files' ignored-patterns \
+ '*.bk' '*.bak' '*.old' '*~' '.*.sw?' '*.o' '*.pyc'
+
+# functions which start with _ are internal and ignored
+zstyle ':completion:*:functions' ignored-patterns '_*'
+
+# do not offer files already specified on the line
+zstyle ':completion:*:rm:*' ignore-line yes
+
+zstyle ':completion:*' verbose yes
+zstyle ':completion:*:descriptions' format '%B%d%b'
+zstyle ':completion:*:messages' format '%d'
+zstyle ':completion:*:warnings' format 'no matches for: %d'
+zstyle ':completion:*' group-name ''
+
+# commands that take commands as arguments
+compdef _precommand gdb
+compdef _precommand nohup
+compdef _precommand strace
+
+# be magic about adding/removing final characters on tab completion
+setopt auto_param_keys auto_param_slash auto_remove_slash
+
+# automatically list choices on an ambiguous completion
+setopt auto_list
+
+# use menu after the second completion request
+setopt auto_menu
+
+# recognise exact matches even if they're ambiguous
+setopt rec_exact
+
+# move cursor to end of word being completed
+setopt always_to_end
+
+# correct the command if mistyped
+setopt correct
+
+# xmms2 needs a bit of manual help.
+_xmms2_radd() { _files }
+
+
+#vim: ft=zsh
--- /dev/null
+# history expansion on pressing space
+bindkey ' ' magic-space
+
+# treat ! specially like csh did
+setopt bang_hist
+
+# ignore duplicates in the history
+setopt hist_ignore_dups
+
+# save timestamp and duration with each event
+setopt extended_history
+
+# properly lock the file on write, if that option exists
+setopt hist_fcntl_lock 2>/dev/null
+
+# skip over non-contiguous duplicates when searching history
+setopt hist_find_no_dups
+
+# don't store commands starting with a space in the history file
+setopt hist_ignore_space
+
+# don't store history/fc -l invocations
+setopt hist_no_store
+
+# remove superfluous blanks from each command line
+setopt hist_reduce_blanks
+
+#vim: ft=zsh
--- /dev/null
+
+autoload -Uz vcs_info
+
+zstyle ':vcs_info:*' disable bzr cdv darcs mtn tla hg p4 svk
+zstyle ':vcs_info:*' enable cvs svn git
+
+zstyle ':vcs_info:*' check-for-changes false
+zstyle ':vcs_info:*' formats "[%s/%b-%c%u]"
+zstyle ':vcs_info:*' actionformats "[%s/%b|%a-%c%u]"
+zstyle ':vcs_info:*' stagedstr "!"
+zstyle ':vcs_info:*' unstagedstr "?"
+
+precmd() {
+ psvar=()
+
+ vcs_info
+ [[ -n $vcs_info_msg_0_ ]] && psvar[1]="$vcs_info_msg_0_"
+}
+
+PS1="%m:%(1v.%F{red}%1v%f:.)%~%# "
+
+: ${RPS1:="#%(0?..%?,)%!"}
+
+# vim:ft=zsh
--- /dev/null
+# automatically escape URLs
+# /usr/share/zsh*/functions/Zle/url-quote-magic
+autoload -U url-quote-magic
+zle -N self-insert url-quote-magic
+setopt no_nomatch
+
+# http://www.zsh.org/mla/users/2006/msg00399.html
+autoload edit-command-line
+zle -N edit-command-line
+bindkey '\ee' edit-command-line
+
+# do not clobber files with >
+setopt noclobber
+
+# automatically maintain a directory stack
+setopt autopushd pushdminus pushdsilent pushdtohome
+
+# brace expansion
+setopt braceccl
+
+# do not auto-nice background processes
+setopt no_bgnice
+# do not send HUP signal to jobs when the shell exits
+setopt nohup
+# do alert me of running jobs before exiting
+setopt checkjobs
+# use full globbing powers
+setopt extended_glob
+
+# don't bitch about bad patterns, just use them verbatim
+setopt no_bad_pattern
+
+# don't bitch about no matches, just the glob character verbatim
+setopt no_nomatch
+
+# do. not. ever. beep.
+setopt no_beep
+
+#vim:ft=zsh
--- /dev/null
+# I still use this for conflict resolution
+alias emnw='emacs -nw'
+
+# Cil aliases
+alias cam='cil am /dev/stdin yes'
+alias ca='cil add --mine'
+alias cl='cil summary --is-open --mine'
+
+# overwrite cal
+alias cal='cal -m -3'
+
+# useful for git show branch:file | phpview
+alias phpview="view -c 'set filetype=php' -"
+
+# make xev actually show useful output
+alias xev="xev | grep -A2 --line-buffered '^KeyRelease' | sed -n '/keycode /s/^.*keycode \([0-9]*\).* (.*, \(.*\)).*$/\1 \2/p'"
+
+# switch between uk and us keyboards
+alias uk='setxkbmap gb'
+alias us='setxkbmap us'
+
+# vim:ft=zsh
--- /dev/null
+export PATH=$PATH:/home/penny/bin/:/home/penny/src/android/tools
+export DEBFULLNAME='Penny Leach'
+export DEBEMAIL=penny@mjollnir.org
+export GIT_AUTHOR_NAME='Penny Leach'
+export GIT_AUTHOR_EMAIL=penny@mjollnir.org
+export GIT_COMMITTER_NAME='Penny Leach'
+export GIT_COMMITTER_EMAIL=penny@mjollnir.org
+export TZ=Europe/Zurich
+export MAIL=~/Maildir/sgn/INBOX
+export MAILPATH=$MAIL
+export COLORFGBG="default;default"
+
+
+# vim:ft=zsh
--- /dev/null
+# The following lines were added by compinstall
+
+zstyle ':completion:*' completer _expand _complete _ignored
+zstyle ':completion:*' max-errors 2
+zstyle ':completion:*' prompt 'Corrections: %e error(s)'
+zstyle ':compinstall' filename "$HOME/.zshrc"
+
+autoload -Uz compinit
+compinit
+# End of lines added by compinstall
+# Lines configured by zsh-newuser-install
+HISTFILE=~/.histfile
+HISTSIZE=1000
+SAVEHIST=1000
+setopt appendhistory extendedglob nomatch notify
+bindkey -e
+
+# End of lines configured by zsh-newuser-install
+
+
+# Penny - split things into smaller config files and then source them in order.
+for zshrc_snipplet in ~/.zsh.d/S[0-9][0-9]*[^~] ; do
+ source $zshrc_snipplet
+done
+
+