alias reload="source ~/.zshrc" bindkey "\e\e[C" forward-word bindkey "\e\e[D" backward-word # http://www.scannedinavian.com/~shae/shae.zshrc setopt alwaystoend # when complete from middle, move cursor setopt autocd # change to dirs without cd setopt autopushd # automatically append dirs to the push/pop list setopt cdablevars # avoid the need for an explicit $ setopt completeinword # not just at the end setopt correct # spelling correction setopt extendedglob # weird & wacky pattern matching - yay zsh! setopt histverify # when using ! cmds, confirm first setopt interactivecomments # escape commands so i can use them later setopt listpacked # compact completion lists setopt listtypes # show types in completion setopt noautomenu # don't cycle completions setopt nobeep # i hate beeps setopt nocheckjobs # don't warn me about bg processes when exiting setopt nohup # and don't kill them, either setopt nopromptcr # don't add \n which overwrites cmds with no \n setopt nullglob setopt printexitvalue # alert me if something's failed setopt pushdignoredups # and don't duplicate them setopt recexact # recognise exact, ambiguous matches # jump to each element in a path with m-f m-b, same # for kill-word, etc. export WORDCHARS='' # # completion tweaking # # complete hostnames out of ssh's ~/.ssh/known_hosts autoload -U compinit; compinit zstyle ':completion:*' use-cache on zstyle ':completion:*' users resolve hosts=(${${${${(f)"$(<$HOME/.ssh/known_hosts)"}:#[0-9]*}%%\ *}%%,*}) zstyle ':completion:*:hosts' hosts $hosts # use dircolours in completion listings zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS} # allow approximate matching zstyle ':completion:*' completer _complete _match _approximate zstyle ':completion:*:match:*' original only zstyle ':completion:*:approximate:*' max-errors 1 numeric zstyle ':completion:*' auto-description 'Specify: %d' zstyle ':completion:*' format 'Completing %d' zstyle ':completion:*' verbose true zstyle ':completion:*:functions' ignored-patterns '_*' zstyle ':completion:*:*:(^rm):*:*files' ignored-patterns \ '*?.(o|c~|zwc)' '*?~'