X-Git-Url: http://47.100.26.94:8080/?a=blobdiff_plain;f=zsh%2Fzshrc;h=994bd71732e38626f4b0543aab95b8091b36cca6;hb=85cef43f457f743edbf30fa50a877a1a9e697eed;hp=0838638ba59d797924a622cab1c03788b33c8a34;hpb=6ad1dd4a80e86afb1ad40888e449d99488f45add;p=dotfiles.git diff --git a/zsh/zshrc b/zsh/zshrc index 0838638..994bd71 100644 --- a/zsh/zshrc +++ b/zsh/zshrc @@ -1,4 +1,11 @@ #!/bin/zsh +# +# Darwin or Linux +OSNAME=`uname` + +# For Emacs Tramp mode +[[ $TERM == "dumb" ]] && unsetopt zle && PS1='$ ' && return + autoload colors colors @@ -45,23 +52,9 @@ man() { } -export PYTHONPATH="/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/" -export DEV_ENV_ROOT=$HOME/android/ -export ANDROID_NDK_ROOT="${DEV_ENV_ROOT}/android-ndk-r10d/" -export ANDROID_SDK_ROOT="${DEV_ENV_ROOT}/android-sdk-macosx/" -#export ANDROID_TOOLCHAIN="${DEV_ENV_ROOT}/standalone-toolchain-api14/" -export ANDROID_NDK_HOME="$HOME/android/android-ndk-r10d" - - - -export ANDROID_TOOLCHAIN="$ANDROID_NDK_HOME/standalone-toolchain-api14/" - - -export ANDROID_HOME="$HOME/android/android-sdk-macosx/" - -export PATH=$PATH:"${ANDROID_TOOLCHAIN}/bin/":"${ANDROID_HOME}/platform-tools/" -export PATH="$HOME/bin":"/usr/local/bin":$PATH +LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:" +#export LS_COLORS ###==================== # #autoload -U compinit @@ -70,6 +63,30 @@ export PATH="$HOME/bin":"/usr/local/bin":$PATH #zstyle ':completion:*:warnings' format '%BSorry, no matches for: %d%b' # # +# +# Use modern completion system +autoload -Uz compinit +compinit + +zstyle ':completion:*' auto-description 'specify: %d' +zstyle ':completion:*' completer _expand _complete _correct _approximate +#zstyle ':completion:*' format 'Completing %d' +zstyle ':completion:*' group-name '' +zstyle ':completion:*' menu select=2 +#eval "$(dircolors -b)" +zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS} +zstyle ':completion:*' list-colors '' +zstyle ':completion:*' list-prompt %SAt %p: Hit TAB for more, or the character to insert%s +zstyle ':completion:*' matcher-list '' 'm:{a-z}={A-Z}' 'm:{a-zA-Z}={A-Za-z}' 'r:|[._-]=* r:|=* l:|=*' +zstyle ':completion:*' menu select=long +zstyle ':completion:*' select-prompt %SScrolling active: current selection at %p%s +zstyle ':completion:*' use-compctl false +zstyle ':completion:*' verbose true + +zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#)*=0=01;31' +zstyle ':completion:*:kill:*' command 'ps -u $USER -o pid,%cpu,tty,cputime,cmd' + + ######################## zsh alias ######################### alias grep='grep --color -E' @@ -77,9 +94,16 @@ alias grep='grep --color -E' #alias vim='/usr/local/bin/mvim -v' alias tmux='tmux -2' -alias l='ls -l' -alias ll='ls -l' -alias la='ls -a' +if [[ $OSNAME == 'Darwin' ]]; then + alias l='ls -l' + alias ll='ls -l' + alias la='ls -a' +elif [[ $OSNAME == 'Linux' ]]; then + alias l='ls -l --color=auto' + alias ll='ls -l --color=auto' + alias la='ls -a --color=auto' + alias ls='ls --color=auto' +fi alias diff='colordiff' @@ -88,9 +112,19 @@ alias cp='cp -i' alias ln='ln -i' #alias svn='colorsvn' -alias sed='/usr/local/bin/gsed' - +if [[ $OSNAME == 'Darwin' ]]; then + [[ -f '/usr/local/bin/gsed' ]] || echo "zshrc warning: no gsed" +fi +[[ -f '/usr/local/bin/gsed' ]] && alias sed='/usr/local/bin/gsed' + +##### Git +alias 'gs'='git status' +alias 'ga'='git add' +alias 'gc'='git commit' +alias 'gl'='git log --oneline --graph --all --color --decorate --abbrev-commit' alias 'git-log'='git log --oneline --graph --all --color --decorate --abbrev-commit' +alias 'gdiff'='git diff' +alias 'gpush'='git push origin master' @@ -196,11 +230,11 @@ git_prompt_string() { RPS1='$(git_prompt_string)' #source ~/Private/zsh-syntax-highlighting/zsh-syntax-highlighting.plugin.zsh +# [[ -f "~/.zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" ]] && source ~/.zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh # http://stackoverflow.com/questions/3483604/which-shortcut-in-zsh-does-the-same-as-ctrl-u-in-bash bindkey \^U backward-kill-line -export PYTHONSTARTUP="$HOME/.pythonrc" export ZSHHOME="$HOME/.zsh" [[ -f "$ZSHHOME/cpverc" ]] && . "$ZSHHOME/cpverc" @@ -208,7 +242,10 @@ export ZSHHOME="$HOME/.zsh" #` git log --oneline --abbrev-commit --all --graph --decorate --color ` -[[ -s `brew --prefix`/etc/autojump.sh ]] && . `brew --prefix`/etc/autojump.sh +`which brew` &> /dev/null +if [ $? -eq 0 ]; then + [[ -s `brew --prefix`/etc/autojump.sh ]] && . `brew --prefix`/etc/autojump.sh +fi alias emacs='TERM=xterm-256color emacs -nw' @@ -252,21 +289,63 @@ merge_logs() { export MANPATH=$MANPATH:/usr/local/man - ## vim YouCompleteMe # https://github.com/Valloric/YouCompleteMe/issues/18 #export DYLD_FORCE_FLAT_NAMESPACE=1 -## appended by cpan initializaion -PATH="/Users/peli3/perl5/bin${PATH:+:${PATH}}"; export PATH; -PERL5LIB="/Users/peli3/perl5/lib/perl5${PERL5LIB:+:${PERL5LIB}}"; export PERL5LIB; -PERL_LOCAL_LIB_ROOT="/Users/peli3/perl5${PERL_LOCAL_LIB_ROOT:+:${PERL_LOCAL_LIB_ROOT}}"; export PERL_LOCAL_LIB_ROOT; -PERL_MB_OPT="--install_base \"/Users/peli3/perl5\""; export PERL_MB_OPT; -PERL_MM_OPT="INSTALL_BASE=/Users/peli3/perl5"; export PERL_MM_OPT; - - - - export MANPATH=$MANPATH:${HOME}/perl5/man - export PATH=$PATH:"${HOME}/scripts" +export PATH=$PATH:"/sbin:/usr/sbin" +## hunspell path +export DICPATH="/usr/local/share/hunspell/" + + + + +if [[ $OSNAME == 'Darwin' ]]; then + export PYTHONSTARTUP="$HOME/.pythonrc" + export PYTHONPATH="/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/" + export DEV_ENV_ROOT=$HOME/android/ + export ANDROID_NDK_ROOT="${DEV_ENV_ROOT}/android-ndk-r10d/" + export ANDROID_SDK_ROOT="${DEV_ENV_ROOT}/android-sdk-macosx/" + #export ANDROID_TOOLCHAIN="${DEV_ENV_ROOT}/standalone-toolchain-api14/" + export ANDROID_NDK_HOME="$HOME/android/android-ndk-r10d" + export ANDROID_TOOLCHAIN="$ANDROID_NDK_HOME/standalone-toolchain-api14/" + export ANDROID_HOME="$HOME/android/android-sdk-macosx/" + export PATH=$PATH:"${ANDROID_TOOLCHAIN}/bin/":"${ANDROID_HOME}/platform-tools/" + export PATH="$HOME/bin":"/usr/local/bin":"/usr/local/sbin":$PATH + + + ## appended by cpan initializaion + PATH="$HOME/perl5/bin${PATH:+:${PATH}}"; export PATH; + PERL5LIB="$HOME/perl5/lib/perl5${PERL5LIB:+:${PERL5LIB}}"; export PERL5LIB; + PERL_LOCAL_LIB_ROOT="$HOME/perl5${PERL_LOCAL_LIB_ROOT:+:${PERL_LOCAL_LIB_ROOT}}"; export PERL_LOCAL_LIB_ROOT; + PERL_MB_OPT="--install_base \"$HOME/perl5\""; export PERL_MB_OPT; + PERL_MM_OPT="INSTALL_BASE=$HOME/perl5"; export PERL_MM_OPT; +fi + +# add Racket into PATH +export PATH="/Applications/Racket v6.6/bin":$PATH; +export MANPATH="/Applications/Racket v6.6/man":$MANPATH; + +# export ~/.bin into PATH +export PATH="$HOME/.bin":$PATH; + + +# source Android bin +[[ -f "$ZSHHOME/androidrc" ]] && . "$ZSHHOME/androidrc" + +if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi +export PYENV_ROOT="$HOME/.pyenv" +export PATH="$PYENV_ROOT/bin:$PATH" + +# tmux variable +export TMUX_IP=`echo $SSH_CONNECTION | awk '{print $3}'` +if [[ $OSNAME == 'Darwin' ]]; then + ip=`ifconfig | grep "inet .*broadcast" | head -1 | awk '{print $2}'` + [[ $TMUX_IP = "" ]] && TMUX_IP=$ip +else + ip=`ip addr | grep 'inet .*global' | head -1 | sed 's/^.*inet //g; s/\/.*$//g'` + [[ $TMUX_IP = "" ]] && TMUX_IP=$ip +fi +