autoload -U compinit compinit # Minimal prompt export PROMPT="%n@%m:%~ " # Klar oder? export EDITOR="/usr/bin/vim" # VIM als Pager export PAGER="/usr/bin/vimpager" export MANPAGER="/usr/bin/vimmanpager" # Pfad zum Darcs Repository setzen export ARCHIV="/home/se/netmute_org/" # Dircolors eval `dircolors ~/.dircolors` # Boodler Paths export BOODLER_SOUND_PATH="/home/se/boodler/boodler-snd" export BOODLER_EFFECTS_PATH="/home/se/boodler/Boodler-1.6.1/effects" # Workaround for a known Java-Bug with some WMs export AWT_TOOLKIT=MToolkit # Optionen fuer Completion zstyle ':completion:*' use-cache on zstyle ':completion:*' cache-path ~/.zsh/cache zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS} zstyle ':completion:*' menu select # man Completion zstyle ':completion:*:*:man:*' menu yes # Completion fuer nv _nv() { compadd wlan haw cable kill info reset rebuild ; } compdef _nv nv # Completion fuer tv _tv() { compadd mdr bayern zdf 3sat kika sat1 pro7 kabel1 n24 arte phoenix ard rtl rtl2 super-rtl vox hr 9live eurosport ; } compdef _tv tv # known_hosts mit in die hosts completion uebernehmen local _myhosts _myhosts=( ${${${${(f)"$(<$HOME/.ssh/known_hosts)"}:#[0-9]*}%%\ *}%%,*} ) zstyle ':completion:*' hosts $_myhosts # Completion fuer kill zstyle ':completion:*:kill:*' menu yes select zstyle ':completion:*:kill:*' force-list always zstyle ':completion:*:processes' command 'ps -A' zstyle ':completion:*:*:kill:*:processes' list-colors "=(#b) #([0-9]#)*=36=31" # Fix Keys bindkey "^[[1;5C" forward-word bindkey "^[[1;5D" backward-word bindkey "^[[5~" beginning-of-history bindkey "^[[6~" end-of-history bindkey "^[OH" beginning-of-line bindkey "^[OF" end-of-line bindkey "^[[3~" delete-char bindkey "^[[2~" overwrite-mode bindkey "^[[A" history-search-backward bindkey "^[[B" history-search-forward bindkey "^R" history-incremental-search-backward # Darcs Repository updaten wenn der Inhalt editiert wurde # (Schrecklicher Quickhack, funktioniert aber) vim () { if [ -L $1 ]; then ls -l $1 | grep $ARCHIV > /dev/null; if [ $? -eq 0 ]; then =vim $1; cd $ARCHIV; darcs record; darcs changes > /home/se/www/changelog; cd - > /dev/null; else =vim $1; fi else =vim $1; fi } # Ein kleiner calculator alias calc="noglob _calc" function _calc () { awk "BEGIN { print $* ; }" } # add pal todo entries todo () { echo "TODO $1" >> ~/.pal/todo.pal; echo "Done." } # grep in der history h () { history 0 | grep -i --color=auto $1 } setopt nocheckjobs # don't complain about background jobs on exit setopt nohup # don't kill background jobs on exit setopt auto_cd # go to directories without "cd" setopt extendedglob setopt no_hist_beep setopt no_beep export HISTSIZE=10000 export SAVEHIST=10000 export HISTFILE=~/.zhistory setopt inc_append_history # Einfaches chmod alias x+='chmod +x' alias x-='chmod -x' # Diverse praktische Aliases alias ls="ls --color=always -hF" # ls mit Farbe, tailing slashes, und lesbaren Größenangaben alias grep="grep -i --color=auto" # grep mit Farbe, nicht case-sensitive alias nc="netcat" alias cmr="cmus-remote -C" alias next="cmr player-next" alias np="cat /tmp/cmus-status" alias shot="sleep 4 && scrot shot.png" alias lock="alock -auth pam -bg image:file='/home/se/.screenlock.jpg',center,color=white" alias whitenoise="whitenoise -c 0.05 -r 11025 -l 100 -F 2" alias vg="viewglob -c zsh -d vgclassic" alias venc="mencoder -ovc xvid -oac mp3lame -xvidencopts bitrate=100 -o output.avi" alias nb="newsbeuter -r" alias netmute_sync="lftp -f ~/.lftp/netmute_sync" alias startx="startx -- -dpi 85 -nolisten tcp" alias q="exit" # Automatisches sudo wo man es braucht alias svim="sudo vim" alias emerge="sudo =emerge -av" alias upgrade="sudo =emerge -avuND world" alias updatedb="sudo updatedb" alias prelink="sudo prelink -amR" alias powertop="sudo powertop" alias autounmask="sudo autounmask" alias revdep-rebuild="sudo revdep-rebuild" alias eix-sync="sudo eix-sync" alias etc-update="sudo etc-update" alias standby="sudo acpitool -s" alias halt="sudo halt" alias reboot="sudo reboot" # Boodler Soundscape Aliases alias rainstorm="boodler.py owstorm.RainForever" alias rainforest="boodler.py pwrain.Rainforest" # Diverse Aliases fuer Screen alias re="screen -r" alias lss="screen -ls" alias irc="screen -R irc irssi" alias jabber="screen -R jabber dbus-launch mcabber" alias cmus="screen -R cmus cmus" alias torrent="screen -R torrent transmissioncli" alias tv="screen -R tv tv" # Aliases damit grc funktioniert. alias cl='/usr/bin/grc -es --colour=on' alias configure='cl ./configure' alias diff='cl diff' alias make='cl make' alias gcc='cl gcc' alias g++='cl g++' alias ld='cl ld' alias netstat='cl netstat' alias ping='cl ping' alias flagedit='cl sudo flagedit' alias messages="cl sudo tail -50 /var/log/messages" # zsh als Dateimanager alias -s exe=wine alias -s txt=vimpager alias -s pdf=xpdf alias -s htm=firefox alias -s html=firefox alias -s rb=ruby alias -s mgp=mgp alias -s jpg="feh -FZd" alias -s jpeg="feh -FZd" alias -s png="feh -FZd" alias -s gif="feh -FZd" alias -s bmp="feh -FZd" # Auf anstehende Termine hinweisen pal -c 0 -x 1 -r 7