###################################################################### # jdong's zshrc file v0.2.1 , based on: # mako's zshrc file, v0.1 # # ###################################################################### # next lets set some enviromental/shell pref stuff up # setopt NOHUP #setopt NOTIFY #setopt NO_FLOW_CONTROL setopt INC_APPEND_HISTORY SHARE_HISTORY setopt APPEND_HISTORY # setopt AUTO_LIST # these two should be turned off # setopt AUTO_REMOVE_SLASH # setopt AUTO_RESUME # tries to resume command of same name unsetopt BG_NICE # do NOT nice bg commands setopt CORRECT # command CORRECTION setopt EXTENDED_HISTORY # puts timestamps in the history # setopt HASH_CMDS # turns on hashing # setopt MENUCOMPLETE setopt ALL_EXPORT # Set/unset shell options setopt notify globdots correct pushdtohome cdablevars autolist setopt correctall autocd recexact longlistjobs setopt autoresume histignoredups pushdsilent setopt autopushd extendedglob rcquotes mailwarning unsetopt bgnice autoparamslash # Autoload zsh modules when they are referenced zmodload -a zsh/stat stat zmodload -a zsh/zpty zpty zmodload -a zsh/zprof zprof zmodload -ap zsh/mapfile mapfile CVSROOT=":ext:toshio@cvs.fedoraproject.org:/cvs/pkgs" TMPDIR="/var/tmp" PATH="/usr/local/bin:/usr/local/sbin/:/bin:/sbin:/usr/bin:/usr/sbin:$PATH:$HOME/bin" TZ="America/New_York" HISTFILE=$HOME/.zhistory HISTSIZE=1024 SAVEHIST=1024 HOSTNAME="`hostname`" PAGER='less' EDITOR='vim' autoload colors zsh/terminfo if [[ "$terminfo[colors]" -ge 8 ]]; then colors fi for color in RED GREEN YELLOW BLUE MAGENTA CYAN WHITE; do eval PR_$color='%{$terminfo[bold]$fg[${(L)color}]%}' eval PR_LIGHT_$color='%{$fg[${(L)color}]%}' (( count = $count + 1 )) done PR_NO_COLOR="%{$terminfo[sgr0]%}" PS1="[$PR_WHITE%l$PR_GREEN@$PR_WHITE%U%m%u$PR_NO_COLOR:$PR_GREEN%2c$PR_NO_COLOR]%(!.#.$) " RPS1="$PR_LIGHT_YELLOW(%D{%H:%M:%S})$PR_NO_COLOR:$PR_LIGHT_WHITE%h$PR_NO_COLOR" #LANGUAGE= LC_ALL='en_US.UTF-8' LANG='en_US.UTF-8' LC_CTYPE=C MUTT_EDITOR='vim' unsetopt ALL_EXPORT # # -------------------------------------------------------------------- # # aliases # # -------------------------------------------------------------------- alias slrn="slrn -n" alias man='LC_ALL=C LANG=C man' alias f=finger alias ll='ls -al' alias dir='ls -al' alias ls='ls --color=auto ' alias la='ls -aF' alias offlineimap-tty='offlineimap -u TTY.TTYUI' alias hnb-partecs='hnb $HOME/partecs/partecs-hnb.xml' alias rest2html-css='rst2html --embed-stylesheet --stylesheet-path=/usr/share/python-docutils/s5_html/themes/default/print.css' #if [[ $HOSTNAME == "kamna" ]] { # alias emacs='emacs -l ~/.emacs.kamna' #} # alias =clear #chpwd() { # [[ -t 1 ]] || return # case $TERM in # sun-cmd) print -Pn "\e]l%~\e\\" # ;; # *xterm*|screen|rxvt|(dt|k|E)term) print -Pn "\e]2;%~\a" # ;; # esac #} selfupdate(){ URL="http://stuff.mit.edu/~jdong/misc/zshrc" echo "Updating zshrc from $URL..." echo "Press Ctrl+C within 5 seconds to abort..." sleep 5 cp ~/.zshrc ~/.zshrc.old wget $URL -O ~/.zshrc echo "Done; existing .zshrc saved as .zshrc.old" } #chpwd autoload -U compinit compinit bindkey -v bindkey "^?" backward-delete-char bindkey '^[OH' beginning-of-line bindkey '^[OF' end-of-line bindkey '^[[5~' up-line-or-history bindkey '^[[6~' down-line-or-history bindkey "^r" history-incremental-search-backward bindkey ' ' magic-space # also do history expansion on space bindkey '^I' complete-word # complete on tab, leave expansion to _expand zstyle ':completion::complete:*' use-cache on zstyle ':completion::complete:*' cache-path ~/.zsh/cache/$HOST zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS} zstyle ':completion:*' list-prompt '%SAt %p: Hit TAB for more, or the character to insert%s' zstyle ':completion:*' menu select=1 _complete _ignored _approximate zstyle -e ':completion:*:approximate:*' max-errors \ 'reply=( $(( ($#PREFIX+$#SUFFIX)/2 )) numeric )' zstyle ':completion:*' select-prompt '%SScrolling active: current selection at %p%s' # Completion Styles # list of completers to use zstyle ':completion:*::::' completer _expand _complete _ignored _approximate # allow one error for every three characters typed in approximate completer zstyle -e ':completion:*:approximate:*' max-errors \ 'reply=( $(( ($#PREFIX+$#SUFFIX)/2 )) numeric )' # insert all expansions for expand completer zstyle ':completion:*:expand:*' tag-order all-expansions # formatting and messages 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:*:corrections' format '%B%d (errors: %e)%b' zstyle ':completion:*' group-name '' # match uppercase from lowercase zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}' # offer indexes before parameters in subscripts zstyle ':completion:*:*:-subscript-:*' tag-order indexes parameters # command for process lists, the local web server details and host completion # on processes completion complete all user processes # zstyle ':completion:*:processes' command 'ps -au$USER' ## add colors to processes for kill completion zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#)*=0=01;31' #zstyle ':completion:*:processes' command 'ps ax -o pid,s,nice,stime,args | sed "/ps/d"' zstyle ':completion:*:*:kill:*:processes' command 'ps --forest -A -o pid,user,cmd' zstyle ':completion:*:processes-names' command 'ps axho command' #zstyle ':completion:*:urls' local 'www' '/var/www/htdocs' 'public_html' # #NEW completion: # 1. All /etc/hosts hostnames are in autocomplete # 2. If you have a comment in /etc/hosts like #%foobar.domain, # then foobar.domain will show up in autocomplete! zstyle ':completion:*' hosts $(awk '/^[^#]/ {print $2 $3" "$4" "$5}' /etc/hosts | grep -v ip6- && grep "^#%" /etc/hosts | awk -F% '{print $2}') # Filename suffixes to ignore during completion (except after rm command) zstyle ':completion:*:*:(^rm):*:*files' ignored-patterns '*?.o' '*?.c~' \ '*?.old' '*?.pro' # the same for old style completion #fignore=(.o .c~ .old .pro) # ignore completion functions (until the _ignored completer) zstyle ':completion:*:functions' ignored-patterns '_*' zstyle ':completion:*:*:*:users' ignored-patterns \ adm apache bin daemon games gdm halt ident junkbust lp mail mailnull \ named news nfsnobody nobody nscd ntp operator pcap postgres radvd \ rpc rpcuser rpm shutdown squid sshd sync uucp vcsa xfs avahi-autoipd\ avahi backup messagebus beagleindex debian-tor dhcp dnsmasq fetchmail\ firebird gnats haldaemon hplip irc klog list man cupsys postfix\ proxy syslog www-data mldonkey sys snort # SSH Completion zstyle ':completion:*:scp:*' tag-order \ files users 'hosts:-host hosts:-domain:domain hosts:-ipaddr"IP\ Address *' zstyle ':completion:*:scp:*' group-order \ files all-files users hosts-domain hosts-host hosts-ipaddr zstyle ':completion:*:ssh:*' tag-order \ users 'hosts:-host hosts:-domain:domain hosts:-ipaddr"IP\ Address *' zstyle ':completion:*:ssh:*' group-order \ hosts-domain hosts-host users hosts-ipaddr zstyle '*' single-ignored show # Setup touchpad synclient AccelFactor=0.04 CircularScrolling=1 RTCornerButton=2 RBCornerButton=3 TapButton1=1