merge from upstream master

This commit is contained in:
Henry Yan 2012-07-17 00:36:50 +08:00
commit 4a11d2c35c
36 changed files with 343 additions and 51 deletions

View file

@ -6,7 +6,7 @@ alias bu="bundle update"
# The following is based on https://github.com/gma/bundler-exec
bundled_commands=(annotate cap capify cucumber ey foreman guard heroku middleman nanoc rackup rainbows rails rake rspec ruby shotgun spec spork thin thor unicorn unicorn_rails)
bundled_commands=(annotate cap capify cucumber foreman guard middleman nanoc rackup rainbows rails rake rspec ruby shotgun spec spork thin thor unicorn unicorn_rails)
## Functions

View file

@ -40,20 +40,23 @@ alias ap='apt-cache policy'
# superuser operations ######################################################
if [[ $use_sudo -eq 1 ]]; then
# commands using sudo #######
alias aac="sudo $apt_pref autoclean"
alias abd="sudo $apt_pref build-dep"
alias ac="sudo $apt_pref clean"
alias ad="sudo $apt_pref update"
alias adg="sudo $apt_pref update && sudo $apt_pref upgrade"
alias adu="sudo $apt_pref update && sudo $apt_pref dist-upgrade"
alias aac='sudo $apt_pref autoclean'
alias abd='sudo $apt_pref build-dep'
alias ac='sudo $apt_pref clean'
alias ad='sudo $apt_pref update'
alias adg='sudo $apt_pref update && sudo $apt_pref upgrade'
alias adu='sudo $apt_pref update && sudo $apt_pref dist-upgrade'
alias afu='sudo apt-file update'
alias ag="sudo $apt_pref upgrade"
alias ai="sudo $apt_pref install"
alias ap="sudo $apt_pref purge"
alias ar="sudo $apt_pref remove"
alias ag='sudo $apt_pref upgrade'
alias ai='sudo $apt_pref install'
# Install all packages given on the command line while using only the first word of each line:
# acs ... | ail
alias ail="sed -e 's/ */ /g' -e 's/ *//' | cut -s -d ' ' -f 1 | "' xargs sudo $apt_pref install'
alias ap='sudo $apt_pref purge'
alias ar='sudo $apt_pref remove'
# apt-get only
alias ads="sudo $apt_pref dselect-upgrade"
alias ads='sudo $apt_pref dselect-upgrade'
# Install all .deb files in the current directory.
# Warning: you will need to put the glob in single quotes if you use:
@ -67,18 +70,18 @@ if [[ $use_sudo -eq 1 ]]; then
# commands using su #########
else
alias aac='su -ls "'"$apt_pref"' autoclean" root'
alias aac='su -ls \'$apt_pref autoclean\' root'
abd() {
cmd="su -lc '$apt_pref build-dep $@' root"
print "$cmd"
eval "$cmd"
}
alias ac='su -ls "'"$apt_pref"' clean" root'
alias ad='su -lc "'"$apt_pref"' update" root'
alias adg='su -lc "'"$apt_pref"' update && aptitude safe-upgrade" root'
alias adu='su -lc "'"$apt_pref"' update && aptitude dist-upgrade" root'
alias ac='su -ls \'$apt_pref clean\' root'
alias ad='su -lc \'$apt_pref update\' root'
alias adg='su -lc \'$apt_pref update && aptitude safe-upgrade\' root'
alias adu='su -lc \'$apt_pref update && aptitude dist-upgrade\' root'
alias afu='su -lc "apt-file update"'
alias ag='su -lc "'"$apt_pref"' safe-upgrade" root'
alias ag='su -lc \'$apt_pref safe-upgrade\' root'
ai() {
cmd="su -lc 'aptitude -P install $@' root"
print "$cmd"
@ -118,7 +121,7 @@ alias mydeb='time dpkg-buildpackage -rfakeroot -us -uc'
apt-copy() {
print '#!/bin/sh'"\n" > apt-copy.sh
cmd="$apt_pref install "
cmd='$apt_pref install'
for p in ${(f)"$(aptitude search -F "%p" --disable-columns \~i)"}; {
cmd="${cmd} ${p}"

View file

@ -0,0 +1,10 @@
##
# dircycle plugin: enables cycling through the directory
# stack using Ctrl+Shift+Left/Right
eval "insert-cycledleft () { zle push-line; LBUFFER='pushd -q +1'; zle accept-line }"
zle -N insert-cycledleft
bindkey "\e[1;6D" insert-cycledleft
eval "insert-cycledright () { zle push-line; LBUFFER='pushd -q -0'; zle accept-line }"
zle -N insert-cycledright
bindkey "\e[1;6C" insert-cycledright

View file

@ -12,7 +12,7 @@ dirpersistinstall () {
if grep 'dirpersiststore' ~/.zlogout > /dev/null; then
else
if read -q \?"Would you like to set up your .zlogout file for use with dirspersist? (y/n) "; then
echo "# Store dirs stack\n# See ~/.oh-my-zsh/plugins/dirspersist.plugin.zsh\ndirpersiststore" >> ~/.zlogout
echo "# Store dirs stack\n# See $ZSH/plugins/dirspersist.plugin.zsh\ndirpersiststore" >> ~/.zlogout
else
echo "If you don't want this message to appear, remove dirspersist from \$plugins"
fi

View file

@ -0,0 +1,2 @@
encode64(){ echo -n $1 | base64 }
decode64(){ echo -n $1 | base64 -D }

View file

@ -0,0 +1,6 @@
if [ $commands[fasd] ]; then # check if fasd is installed
eval "$(fasd --init auto)"
alias v='f -e vim'
alias o='a -e open'
fi

View file

@ -110,6 +110,8 @@ __git-flow-release ()
-u'[Use the given GPG-key for the digital signature (implies -s)]'\
-m'[Use the given tag message]'\
-p'[Push to $ORIGIN after performing finish]'\
-k'[Keep branch after performing finish]'\
-n"[Don't tag this release]"\
':version:__git_flow_version_list'
;;
@ -162,6 +164,8 @@ __git-flow-hotfix ()
-u'[Use the given GPG-key for the digital signature (implies -s)]'\
-m'[Use the given tag message]'\
-p'[Push to $ORIGIN after performing finish]'\
-k'[Keep branch after performing finish]'\
-n"[Don't tag this release]"\
':hotfix:__git_flow_hotfix_list'
;;

View file

@ -54,10 +54,16 @@ function current_branch() {
echo ${ref#refs/heads/}
}
function current_repository() {
ref=$(git symbolic-ref HEAD 2> /dev/null) || return
echo $(git remote -v | cut -d':' -f 2)
}
# these aliases take advantage of the previous function
alias ggpull='git pull origin $(current_branch)'
compdef ggpull=git
alias ggpush='git push origin $(current_branch)'
compdef ggpush=git
alias ggpnp='git pull origin $(current_branch) && git push origin $(current_branch)'
compdef ggpnp=git
compdef ggpnp=git

4
plugins/jruby/jruby.plugin.zsh Executable file
View file

@ -0,0 +1,4 @@
# Aliases
alias jrspec='jruby --debug -S rspec --debug'
alias jprofile='jruby --profile.api -S rspec'
alias jexec='jruby -S'

View file

@ -29,7 +29,7 @@ alias iminurbase='finger'
alias btw='nice'
alias obtw='nohup'
alias nomz='ps -aux'
alias nomz='ps aux'
alias nomnom='killall'
alias byes='exit'

View file

@ -1,6 +0,0 @@
function listMavenCompletions {
reply=(
cli:execute cli:execute-phase archetype:generate generate-sources compile clean install test test-compile deploy package cobertura:cobertura jetty:run gwt:run gwt:debug -DskipTests -Dmaven.test.skip=true -Dtest= `if [ -d ./src ] ; then find ./src -type f | grep -v svn | sed 's?.*/\([^/]*\)\..*?-Dtest=\1?' ; fi`);
}
compctl -K listMavenCompletions mvn

View file

@ -2,4 +2,7 @@
alias pyfind='find . -name "*.py"'
# Remove python compiled byte-code
alias pyclean='find . -type f -name "*.py[co]" -exec rm -f \{\} \;'
alias pyclean='find . -type f -name "*.py[co]" -delete'
# Grep among .py files
alias pygrep='grep --include="*.py"'

View file

@ -13,6 +13,7 @@ alias rd='_rails_command destroy'
alias rdb='_rails_command dbconsole'
alias rdbm='rake db:migrate db:test:clone'
alias rg='_rails_command generate'
alias rgm='_rails_command generate migration'
alias rp='_rails_command plugin'
alias ru='_rails_command runner'
alias rs='_rails_command server'

View file

@ -1,10 +1,23 @@
_homebrew-installed() {
type brew &> /dev/null
}
_rbenv-from-homebrew-installed() {
brew --prefix rbenv &> /dev/null
}
FOUND_RBENV=0
for rbenvdir in "$HOME/.rbenv" "/usr/local/rbenv" "/opt/rbenv" ; do
rbenvdirs=("$HOME/.rbenv" "/usr/local/rbenv" "/opt/rbenv")
if _homebrew-installed && _rbenv-from-homebrew-installed ; then
rbenvdirs=($(brew --prefix rbenv) "${rbenvdirs[@]}")
fi
for rbenvdir in "${rbenvdirs[@]}" ; do
if [ -d $rbenvdir/bin -a $FOUND_RBENV -eq 0 ] ; then
FOUND_RBENV=1
export RBENV_ROOT=$rbenvdir
export PATH=${rbenvdir}/bin:$PATH
eval "$(rbenv init -)"
eval "$(rbenv init - zsh)"
alias rubies="rbenv versions"
alias gemsets="rbenv gemset list"

View file

@ -0,0 +1,42 @@
# Enables rbfu with --auto option, if available.
#
# Also provides a command to list all installed/available
# rubies. To ensure compatibility with themes, creates the
# rvm_prompt_info function to return the $RBFU_RUBY_VERSION
# version.
command -v rbfu &>/dev/null
if [[ $? -eq 0 ]]; then
eval "$(rbfu --init --auto)"
# Internal: Print ruby version details, if it's currently
# active etc.
function _rbfu_rubies_print() {
local rb rb_out
rb=$(basename $1)
rb_out="$rb"
[[ -h $1 ]] && rb_out="$rb_out${fg[green]}@${reset_color}"
[[ "x$rb" == "x$2" ]] && rb_out="${fg[red]}$rb_out ${fg[red]}*${reset_color}"
echo $rb_out
}
# Public: Provide a list with all available rubies, this basically depends
# on `ls -1` and .rfbu/rubies. Highlights the currently active ruby version
# and aliases.
function rbfu-rubies() {
local rbfu_dir active_rb
rbfu_dir=$RBFU_RUBIES
active_rb=$RBFU_RUBY_VERSION
[[ -z "$rbfu_dir" ]] && rbfu_dir="${HOME}/.rbfu/rubies"
[[ -z "$active_rb" ]] && active_rb="system"
_rbfu_rubies_print "${rbfu_dir}/system" $active_rb
for rb in $(ls -1 $rbfu_dir); do
_rbfu_rubies_print "${rbfu_dir}/${rb}" $active_rb
done
}
# Public: Create rvm_prompt_info command for themes compatibility, unless
# it has already been defined.
[ ! -x rvm_prompt_info ] && function rvm_prompt_info() { echo "${RBFU_RUBY_VERSION:=system}" }
fi

View file

@ -0,0 +1,54 @@
# if using GNU screen, let the zsh tell screen what the title and hardstatus
# of the tab window should be.
if [[ $TERM == "screen" ]]; then
if [[ $_GET_PATH == '' ]]; then
_GET_PATH='echo $PWD | sed "s/^\/Users\//~/;s/^\/home\//~/;s/^~$USER/~/"'
fi
if [[ $_GET_HOST == '' ]]; then
_GET_HOST='echo $HOST | sed "s/\..*//"'
fi
# use the current user as the prefix of the current tab title
TAB_TITLE_PREFIX='"`'$_GET_HOST'`:`'$_GET_PATH' | sed "s:..*/::"`$PROMPT_CHAR"'
# when at the shell prompt, show a truncated version of the current path (with
# standard ~ replacement) as the rest of the title.
TAB_TITLE_PROMPT='$SHELL:t'
# when running a command, show the title of the command as the rest of the
# title (truncate to drop the path to the command)
TAB_TITLE_EXEC='$cmd[1]:t'
# use the current path (with standard ~ replacement) in square brackets as the
# prefix of the tab window hardstatus.
TAB_HARDSTATUS_PREFIX='"[`'$_GET_PATH'`] "'
# when at the shell prompt, use the shell name (truncated to remove the path to
# the shell) as the rest of the title
TAB_HARDSTATUS_PROMPT='$SHELL:t'
# when running a command, show the command name and arguments as the rest of
# the title
TAB_HARDSTATUS_EXEC='$cmd'
# tell GNU screen what the tab window title ($1) and the hardstatus($2) should be
function screen_set()
{
# set the tab window title (%t) for screen
print -nR $'\033k'$1$'\033'\\\
# set hardstatus of tab window (%h) for screen
print -nR $'\033]0;'$2$'\a'
}
# called by zsh before executing a command
function preexec()
{
local -a cmd; cmd=(${(z)1}) # the command string
eval "tab_title=$TAB_TITLE_PREFIX:$TAB_TITLE_EXEC"
eval "tab_hardstatus=$TAB_HARDSTATUS_PREFIX:$TAB_HARDSTATUS_EXEC"
screen_set $tab_title $tab_hardstatus
}
# called by zsh before showing the prompt
function precmd()
{
eval "tab_title=$TAB_TITLE_PREFIX:$TAB_TITLE_PROMPT"
eval "tab_hardstatus=$TAB_HARDSTATUS_PREFIX:$TAB_HARDSTATUS_PROMPT"
screen_set $tab_title $tab_hardstatus
}
fi

View file

@ -0,0 +1,9 @@
# Sublime Text 2 Aliases
#unamestr = 'uname'
if [[ $('uname') == 'Linux' ]]; then
alias st='/usr/bin/sublime_text&'
elif [[ $('uname') == 'Darwin' ]]; then
alias st='/Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl'
fi
alias stt='st .'

View file

@ -0,0 +1,7 @@
alias zi='sudo zypper install'
alias zrf='sudo zypper refresh'
alias zs='zypper search'
alias zup='sudo zypper dist-upgrade'
alias zrm='sudo zypper remove'
alias zp='sudo zypper patch'
alias zps='sudo zypper ps'

View file

@ -16,7 +16,7 @@ function svn_get_repo_name {
if [ $(in_svn) ]; then
svn info | sed -n 's/Repository\ Root:\ .*\///p' | read SVN_ROOT
svn info | sed -n "s/URL:\ .*$SVN_ROOT\///p" | sed "s/\/.*$//"
svn info | sed -n "s/URL:\ .*$SVN_ROOT\///p"
fi
}

View file

@ -0,0 +1,46 @@
WRAPPER_FOUND=0
for wrapsource in "/usr/bin/virtualenvwrapper.sh" "/usr/local/bin/virtualenvwrapper.sh" "/etc/bash_completion.d/virtualenvwrapper" ; do
if [[ -e $wrapsource ]] ; then
WRAPPER_FOUND=1
source $wrapsource
if [[ ! $DISABLE_VENV_CD -eq 1 ]]; then
# Automatically activate Git projects' virtual environments based on the
# directory name of the project. Virtual environment name can be overridden
# by placing a .venv file in the project root with a virtualenv name in it
function workon_cwd {
# Check that this is a Git repo
PROJECT_ROOT=`git rev-parse --show-toplevel 2> /dev/null`
if (( $? == 0 )); then
# Check for virtualenv name override
ENV_NAME=`basename "$PROJECT_ROOT"`
if [[ -f "$PROJECT_ROOT/.venv" ]]; then
ENV_NAME=`cat "$PROJECT_ROOT/.venv"`
fi
# Activate the environment only if it is not already active
if [[ "$VIRTUAL_ENV" != "$WORKON_HOME/$ENV_NAME" ]]; then
if [[ -e "$WORKON_HOME/$ENV_NAME/bin/activate" ]]; then
workon "$ENV_NAME" && export CD_VIRTUAL_ENV="$ENV_NAME"
fi
fi
elif [ $CD_VIRTUAL_ENV ]; then
# We've just left the repo, deactivate the environment
# Note: this only happens if the virtualenv was activated automatically
deactivate && unset CD_VIRTUAL_ENV
fi
unset PROJECT_ROOT
}
# New cd function that does the virtualenv magic
function cd {
builtin cd "$@" && workon_cwd
}
fi
break
fi
done
if [ $WRAPPER_FOUND -eq 0 ] ; then
print "zsh virtualenvwrapper plugin: Couldn't activate virtualenvwrapper. Please run \`pip install virtualenvwrapper\`."
fi

View file

@ -3,10 +3,14 @@
alias ys="yum search" # search package
alias yp="yum info" # show package info
alias yl="yum list" # list packages
alias ygl="yum grouplist" # list package groups
alias yli="yum list installed" # print all installed packages
alias ymc="yum makecache" # rebuilds the yum package list
alias yu="sudo yum update" # upgrate packages
alias yi="sudo yum install" # install package
alias ygi="sudo yum groupinstall" # install package group
alias yr="sudo yum remove" # remove package
alias ygr="sudo yum groupremove" # remove pagage group
alias yrl="sudo yum remove --remove-leaves" # remove package and leaves
alias yc="sudo yum clean all" # clean cache
alias yc="sudo yum clean all" # clean cache