# Zsh configuration file.
+# MISCELLANEOUS SETTINGS
+
# Use Vi(m) style key bindings.
bindkey -v
# Make sure core dumps are created.
ulimit -c unlimited
+# Prevent overwriting existing files with '> filename', use '>| filename'
+# (or >!) instead.
+setopt noclobber
+
+# Entering the name of a directory (if it's not a command) will automatically
+# cd to that directory.
+setopt autocd
+
+# When entering a nonexistent command name automatically try to find a similar
+# one.
+setopt correct
+
+# Enable zsh's extended glob abilities.
+setopt extendedglob
+
+# Don't exit if <C-d> is pressed.
+setopt ignoreeof
+
+
+# HISTORY SETTINGS
+
# Use history and store it in ~/.zsh/history.
HISTSIZE=1000
SAVEHIST=1000
bindkey "^P" history-beginning-search-backward
bindkey "^N" history-beginning-search-forward
-# Prevent overwriting existing files with '> filename', use '>| filename'
-# (or >!) instead.
-setopt noclobber
-# Entering the name of a directory (if it's not a command) will automatically
-# cd to that directory.
-setopt autocd
-
-# When entering a nonexistent command name automatically try to find a similar
-# one.
-setopt correct
+# PROMPT SETTINGS
# Autoload add-zsh-hook to add/remove zsh hook functions easily.
autoload -Uz add-zsh-hook
%(1j.%{${fg[yellow]}%}%j%{${fg[default]}%}.)%(2L.+.)%# \
%(?..(%{${fg[red]}%}%B%?%b%{${fg[default]}%}%) )"
+
+# COMPLETION SETTINGS
+
# Use new completion system.
autoload -U compinit && compinit
# Load the complist module which provides additions to completion lists
# When working with mercurial don't complete the same file multiple times.
zstyle ':completion:*:hg*:*' ignore-line yes
-# Enable zsh's extended glob abilities.
-setopt extendedglob
-# Don't exit if <C-d> is pressed.
-setopt ignoreeof
-
-# If ^C is pressed while typing a command, add it to the history so it can be
-# easily retrieved later and then abort like ^C normally does. This is useful
-# when I want to abort an command to do something in between and then finish
-# typing the command.
-TRAPINT() {
- # Store the current buffer in the history.
- zle && print -s $BUFFER
-
- # Return the default exit code so zsh aborts the current command.
- return $1
-}
-
-# Execute all periodic functions every hour.
-PERIOD=3600
-# Display TODOs stored in ~/.todo if this file exists. Run every hour to make
-# clear they should be completed ;-).
-todo() {
- if [[ -f ~/.todo ]]; then
- cat ~/.todo | $PAGER
- fi
-}
-add-zsh-hook periodic todo
+# ALIAS AND FUNCTION SETTINGS
# Simplify calls to less, automatically redirects all output.
alias -g L='2>&1 | less'
la -l $*
}
+# If ^C is pressed while typing a command, add it to the history so it can be
+# easily retrieved later and then abort like ^C normally does. This is useful
+# when I want to abort an command to do something in between and then finish
+# typing the command.
+TRAPINT() {
+ # Store the current buffer in the history.
+ zle && print -s $BUFFER
+
+ # Return the default exit code so zsh aborts the current command.
+ return $1
+}
+
+# Execute all periodic functions every hour.
+PERIOD=3600
+# Display TODOs stored in ~/.todo if this file exists. Run every hour to make
+# clear they should be completed ;-).
+todo() {
+ if [[ -f ~/.todo ]]; then
+ cat ~/.todo | $PAGER
+ fi
+}
+add-zsh-hook periodic todo
+
# Load rc file for current OS.
source_config ~/.zsh os rc $(uname) nolocal