# Aliases in this file are bash and zsh compatible # Don't change. The following determines where YADR is installed. yadr=$HOME/.yadr yadr_zsh=$yadr/zsh # Get operating system platform='unknown' unamestr=$(uname) if [[ $unamestr == 'Linux' ]]; then platform='linux' elif [[ $unamestr == 'Darwin' ]]; then platform='darwin' fi # YADR support alias yav='yadr vim-add-plugin' alias ydv='yadr vim-delete-plugin' alias ylv='yadr vim-list-plugin' alias yup='yadr update-plugins' alias yip='yadr init-plugins' # PS psm() { ps aux | awk 'NR>1 {$5=int($5/1024)"M";$6=int($6/1024)"M";}{ print;}' } # Moving around alias cdb='cd -' alias cls='clear;ls' # Show human friendly numbers and colors alias df='df -h' alias du='du -h -d 2' if [[ $platform == 'linux' ]]; then alias ll='ls -alh --color=auto' alias ls='ls --color=auto' elif [[ $platform == 'darwin' ]]; then alias ll='ls -alGh' alias ls='ls -Gh' fi # show me files matching "ls grep" alias lsg='ll | grep' alias lp='ls --hide="*.pyc"' # Alias Editing TRAPHUP() { source $yadr/zsh/aliases.zsh } alias ae='vim $yadr/zsh/aliases.zsh' #alias edit alias ar='source $yadr/zsh/aliases.zsh' #alias reload alias gar="killall -HUP -u \"$USER\" zsh" #global alias reload # vim using mvim --version > /dev/null 2>&1 MACVIM_INSTALLED=$? if [ $MACVIM_INSTALLED -eq 0 ]; then alias vim="mvim -v" fi # mimic vim functions alias :q='exit' # vimrc editing alias ve='vim ~/.vimrc' # zsh profile editing alias ze='vim ~/.zshrc' # Git Aliases alias gl='git l' alias gs='git status' alias gstsh='git stash' alias gst='git stash' alias gsp='git stash pop' alias gsa='git stash apply' alias gsh='git show' alias gshw='git show' alias gshow='git show' alias gi='vim .gitignore' alias gcm='git ci -m' alias gcim='git ci -m' alias gci='git ci' alias gcp='git cp' alias ga='git add -A' alias gap='git add -p' alias guns='git unstage' alias gunc='git uncommit' alias gm='git merge' alias gms='git merge --squash' alias gam='git amend --reset-author' alias grv='git remote -v' alias grr='git remote rm' alias grad='git remote add' alias gr='git rebase' alias gra='git rebase --abort' alias ggrc='git rebase --continue' alias gbi='git rebase --interactive' alias co='git co' alias gf='git fetch' alias gfp='git fetch --prune' alias gfa='git fetch --all' alias gfap='git fetch --all --prune' alias gfch='git fetch' alias gd='git diff' alias gb='git b' alias gdf="git diff-tree --no-commit-id --name-only -r" # Staged and cached are the same thing alias gdc='git diff --cached -w' alias gds='git diff --staged -w' alias gpub='grb publish' alias gtr='grb track' alias gpl='git pull' alias gplr='git pull --rebase' alias gps='git push' alias gpsh='git push -u origin `git rev-parse --abbrev-ref HEAD`' alias gnb='git nb' # new branch aka checkout -b alias grs='git reset' alias grsh='git reset --hard' alias gcln='git clean' alias gclndf='git clean -df' alias gclndfx='git clean -dfx' alias gsm='git submodule' alias gsmi='git submodule init' alias gsmu='git submodule update' alias gt='git t' alias gbg='git bisect good' alias gbb='git bisect bad' alias gdmb='git branch --merged | grep -v "\*" | xargs -n 1 git branch -d' alias gfR='gf origin master; gwR origin/master' alias gpb='git push origin "$(git-branch-current 2> /dev/null):build"' alias gfs="gs;gfr;gsp" git_rebase_to_origin() { BRANCH=${1:-master} DIRTY=false git fetch origin [[ -n $(git status -s) ]] && DIRTY=true $DIRTY && echo "Git is dirty" $DIRTY && (git add .; git stash) git rebase origin/$BRANCH $DIRTY && (git stash pop; git reset HEAD) } git_rm_tag_of_remote() { TAG=$1 REMOTE=${2:-origin} git tag -d $TAG git push --delete $REMOTE $TAG } git_log_history='git log -p --' # Common shell functions alias less='less -r' alias tf='tail -f' alias l='less' alias lh='ls -alt | head' # see the last modified files alias screen='TERM=screen screen' alias cl='clear' # Zippin alias gz='tar -zcvf' # Ruby alias c='rails c' # Rails 3 alias co='script/console' # Rails 2 alias cod='script/console --debugger' #If you want your thin to listen on a port for local VM development #export VM_IP=10.0.0.1 <-- your vm ip alias ts='thin start -a ${VM_IP:-127.0.0.1}' alias ms='mongrel_rails start' alias tfdl='tail -f log/development.log' alias tftl='tail -f log/test.log' alias ka9='killall -9' alias k9='kill -9' # Gem install alias sgi='sudo gem install --no-ri --no-rdoc' # TODOS # This uses NValt (NotationalVelocity alt fork) - http://brettterpstra.com/project/nvalt/ # to find the note called 'todo' alias todo='open nvalt://find/todo' # Forward port 80 to 3000 alias portforward='sudo ipfw add 1000 forward 127.0.0.1,3000 ip from any to any 80 in' alias rdm='rake db:migrate' alias rdmr='rake db:migrate:redo' # Zeus alias zs='zeus server' alias zc='zeus console' alias zr='zeus rspec' alias zrc='zeus rails c' alias zrs='zeus rails s' alias zrdbm='zeus rake db:migrate' alias zrdbtp='zeus rake db:test:prepare' alias zzz='rm .zeus.sock; pkill zeus; zeus start' # Rspec alias rs='rspec spec' alias sr='spring rspec' alias src='spring rails c' alias srgm='spring rails g migration' alias srdm='spring rake db:migrate' alias srdt='spring rake db:migrate' alias srdmt='spring rake db:migrate db:test:prepare' # Sprintly - https://github.com/nextbigsoundinc/Sprintly-GitHub alias sp='sprintly' # spb = sprintly branch - create a branch automatically based on the bug you're working on alias spb="git checkout -b \`sp | tail -2 | grep '#' | sed 's/^ //' | sed 's/[^A-Za-z0-9 ]//g' | sed 's/ /-/g' | cut -d"-" -f1,2,3,4,5\`" alias hpr='hub pull-request' alias grb='git recent-branches' # Finder alias showFiles='defaults write com.apple.finder AppleShowAllFiles YES; killall Finder /System/Library/CoreServices/Finder.app' alias hideFiles='defaults write com.apple.finder AppleShowAllFiles NO; killall Finder /System/Library/CoreServices/Finder.app' alias dbtp='spring rake db:test:prepare' alias dbm='spring rake db:migrate' alias dbmr='spring rake db:migrate:redo' alias dbmd='spring rake db:migrate:down' alias dbmu='spring rake db:migrate:up' # Homebrew alias brewu='brew update && brew upgrade && brew cleanup && brew doctor' # emacs alias emacs="env LC_CTYPE=zh_CN.UTF-8 emacs" # rails alias rails_setup='rails db:reset; rails db:seed RAILS_ENV=test' alias rails_test='rspec && rubocop' alias start_dropbox='~/.dropbox-dist/dropboxd' alias unzip_CN="unzip -O GB18030" alias cnpm="npm --registry=https://registry.npm.taobao.org \ --cache=$HOME/.npm/.cache/cnpm \ --disturl=https://npm.taobao.org/dist \ --userconfig=$HOME/.cnpmrc" alias gpo='git push origin' case "$OSTYPE" in cygwin*) alias open="cmd /c start" ;; linux*) alias start="xdg-open" alias open="xdg-open" ;; darwin*) alias start="open" ;; esac alias ssh_by_password='ssh -o PreferredAuthentications=password -o PubkeyAuthentication=no' alias ssh_copy_id='ssh-copy-id -o PreferredAuthentications=password -o PubkeyAuthentication=no' alias chrome_proxy="google-chrome --proxy-server='http://127.0.0.1:8118'" alias ls_folder_size="du -sch .[!.]* * | sort -h" alias top_by_memory="top -o %MEM" alias gcaa="gia .; gcF" alias ror_ctags="ctags -R --languages=ruby --exclude=.git --exclude=log . \$(bundle list --paths)" alias find_large_files="sudo find / -xdev -type f -size +50M" alias vim_plain="vim -u NONE" alias edit_alias="vim $yadr_zsh/aliases.zsh $yadr_zsh/functions.zsh -p" alias yarn_sass="SASS_BINARY_SITE=https://npm.taobao.org/mirrors/node-sass/ yarn" alias vim="nvim" ## docker alias docker_clean_images='docker rmi $(docker images -a --filter=dangling=true -q)' alias docker_purge='docker stop $(docker ps -qa);docker rm $(docker ps -qa)' alias docker_restart_in_mac='killall Docker && open /Applications/Docker.app' ## source files alias ss="source ~/.zshrc" alias delete_all_binaries="find . -type f -perm -u+x -not -path './.git/*' | xargs rm" ## grep && ag alias agq="ag -Q"