# When a program is started preexec() sets the window's name to it; when it
# stops precmd() resets the window's name to 'zsh'.
#
-# It works with screen, xterm and rxvt. If screen is running in X11 (DISPLAY
-# is set) and stumpwm is running then the window title is also set in stumpwm
-# using stumpish (I don't use stumpwm actually anymore but I left the changes
-# in as a reference).
+# It works with screen, xterm and rxvt.
#
# If a command is run with sudo or if the shell is running as root then a ! is
# added at the beginning of the command to make this clear. If a command is
# Is set to a non empty value to reset the window name in the next
# precmd() call.
window_reset=yes
- # Is set to a non empty value when the stump window manager is running.
- ps aux | grep -q stumpwm | grep -v grep
- if [[ $? -eq 0 ]]; then
- window_stumpwm=yes
- fi
# Is set to a non empty value when the shell is running as root.
if [[ $(id -u) -eq 0 ]]; then
window_root=yes
if [[ $TERM == screen* ]]; then
print -n "\ek$1\e\\"
- # Update window name in stumpwm if running screen in X11 and when
- # stumpwm is used.
- if [[ -n $DISPLAY && -n $window_stumpwm ]]; then
- echo "$1" | stumpish -e "title" > /dev/null
- fi
-
elif [[ $TERM == xterm* || $TERM == rxvt* ]]; then
print -n "\e]2;$1\e\\"
fi
print -n $'\0';
done &)
+# Load aliases and similar functions also used by other shells.
+if [[ -f ~/.shell/aliases ]]; then
+ . ~/.shell/aliases
+fi
+
# Make sure aliases are expanded when using sudo.
alias sudo='sudo '
alias -g ....='../../..'
alias -g .....='../../../..'
-# Shortcuts for often used programs.
-alias c='clear'
-alias e='elinks'
-alias g='git'
-alias m='mutt'
-alias v='vim'
-alias vi='vim'
-
-# Improved ls which displays the files in columns (-C), visualizes
-# directories, links and other special files (-F) and pages everything through
-# less (L).
-#
-# If available use GNU ls with colorized output. If it isn't available use
-# normal ls which needs CLICOLOR_FORCE so it displays colors when used with a
-# pager.
-ls --color &> /dev/null
-if [[ $? -eq 0 ]]; then
- alias ls='ls --color'
-else
- alias ls='CLICOLOR_FORCE=1 ls -G'
-fi
-# Main ls function.
-function ls() {
- command ls -C -F $* L
-}
-# Helper function to list all files.
-function la() {
- ls -a $*
-}
-# Helper function to list all files in list format with access rights, etc.
-function ll() {
- la -l $*
-}
-
# If the window naming feature is used (see above) then use ".zsh" (leading
# dot) as title name after running clear so it's clear to me that the window
# is empty. I open so much windows that I don't know in which I have something
alias clear='clear; window_reset=yes; window_precmd reset'
fi
-# I sometimes confuse editor and shell, print a warning to prevent I exit the
-# shell.
-alias :q='echo "This is not Vim!" >&2'
-
-# Automatically use unified diffs.
-alias diff='diff -u'
-
-# Display all files and use human readable sizes.
-alias du='du -sh'
-
-# Use human readable sizes.
-alias df='df -h'
-
-# Edit the mercurial patch queue series file for the current mercurial
-# repository in Vim. Also change Vim's pwd to the patches directory so other
-# patches can easily be opened.
-alias vqs='vim -c "cd $(hg root)/.hg/patches/" "$(hg root)/.hg/patches/series"'
-
# Display all branches (except stash) in gitk but only 200 commits as this is
# much faster. Also put in the background and disown. Thanks to sitaram in
# #git on Freenode (2009-04-20 15:51).