#!/bin/zsh
bindkey -e

stty -ixon ixany
stty erase '^H'

setenv () { export $1="$@[2,-1]" }
unsetenv () { unset $1 }

#zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z} r:|[-_./]=* r:|=*'
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z} r:|[/]=* r:|=*'
zstyle ':completion:*' use-cache true

fpath=($HOME/.zfunc $fpath)
autoload -U ~/.zfunc/*(:t)
function r() {
  local f
  f=(~/.zfunc/*(.))
  unfunction $f:t 2> /dev/null
  autoload -U $f:t
}

_cache_hosts=(`perl -ne  'if (/^([a-zA-Z0-9.-]+)/) { print "$1\n";}' ~/.ssh/known_hosts`)

setopt no_beep
setopt auto_cd
setopt auto_list
setopt auto_menu
setopt auto_name_dirs
setopt auto_param_keys
setopt auto_param_slash
setopt auto_remove_slash
setopt c_bases
setopt chase_links
setopt complete_aliases
# setopt correct_all
setopt correct
setopt equals
setopt glob_complete
setopt prompt_bang
setopt prompt_percent
setopt pushd_ignore_dups
setopt pushd_to_home
setopt sh_file_expansion
setopt always_last_prompt
setopt extended_glob
setopt hist_ignore_all_dups
setopt hist_ignore_space
setopt inc_append_history

PROMPT="%B[%n@%m] %#%b "
RPROMPT="[%~]"
HISTFILE="$HOME/.zhistory"
HISTSIZE=5000
SAVEHIST=5000

alias -g L="| $PAGER"
alias -g G="| grep"
alias -g H="| head"
alias -g T="| tail"

alias ..='cd ..'
alias cd..='cd ..'
alias cp='cp -i'
alias mv='mv -i'
alias ls='ls -wF'
alias la='ls -wa'
alias l='ls -wl'
alias lls='ls -wla'
alias p='pushd'
alias o='popd'
alias d='dirs'
alias top='top -X -s 7 -ocpu -Otime -F -R -t'
alias unstuff='open -a StuffIt\ Expander.app'
alias pa='open -a NiseRingo.app'
alias df='df -h'
alias ed='ed -p "ed> "'
alias du='du -k'
alias nc='nc -vv'
alias mwget="wget --user-agent='Mozilla/1.4b'"
alias pstow="pushd /usr/local/stow"
alias safari="open -a Safari"
alias w3m="w3m -O UTF-8"
alias w3mb="w3m -O UTF-8 -B"
alias ldd="otool -L"

function openurl {
    `firefox -remote "openurl($1,new-tab)"`
}

function keepnice20 {
    sudo nice -n -20 sudo -u ${USER} $@
}

alias startcow='cd ~/Applications/dnetc*; ./dnetc -shutdown; ./dnetc'
alias pausecow='~/Applications/dnetc*/dnetc -pause'
alias resumecow='~/Applications/dnetc*/dnetc -unpause'

alias startnekoko='cd ~/development/NekokoAndShota; ./nekosho -d nekoko-ord'
alias startshota='cd ~/development/NekokoAndShota; ./nekosho -d shota-ord'

alias startbottle='cd ~/development/bottleuploadcatcher; ./catcher'

#alias tome='open ~/Applications/ToME*/T.o.M.E.*'
alias hengband='open ~/Applications/hengband*/Hengband*'

function verbose_comp {
    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:*' group-name ''
}
verbose_comp

# The following lines were added by compinstall

zstyle :compinstall filename '/Users/admin/.zshrc'

autoload -U compinit
compinit
# End of lines added by compinstall

if [ "x$WINDOW" = "x" ]; then
    fortune
fi

if [ -e ".motd" ]; then
    cat .motd
fi

function initscreen {
    case "x$WINDOW" in
	"x0")
	    top;;
	"x1")
	    cd ~/sandbox/impfarm/client && \
		echo "Type ./impfarm.sh to start IMP";;
	"x2")
	    cd ~/var/futasuke;;
	"x3")
	    cd ~/var/folding-at-home;;
	    #cd ~/var/futasuke && \
#		echo "Type ./start.sh to start futasuke";;
    esac
}
if [ "x$WINDOW" != "x" ] && [ "x$INITSCREEN" != "xdone" ]; then
    export INITSCREEN="done"
    initscreen
fi

#if [ "$DISPLAY" = "" ]; then
#    export DISPLAY=":0.0"
#fi

eval `ssh-agent-manager -s`
