285 lines
7.8 KiB
Bash
285 lines
7.8 KiB
Bash
# 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"
|