Initial implementation of a new plugin system, so that people can managed which aliases/functions they want.

This commit is contained in:
Robby Russell 2010-06-03 12:03:26 -07:00
parent 073d75e490
commit 210a72b441
9 changed files with 69 additions and 64 deletions

View File

@ -1,19 +1,7 @@
#!/bin/zsh
# Push and pop directories on directory stack # Push and pop directories on directory stack
alias pu='pushd' alias pu='pushd'
alias po='popd' alias po='popd'
alias ss='thin --stats "/thin/stats" start'
alias sg='ruby script/generate'
alias sd='ruby script/destroy'
alias sp='ruby script/plugin'
alias ssp='ruby script/spec'
alias rdbm='rake db:migrate'
alias sc='ruby script/console'
alias sd='ruby script/server --debugger'
alias devlog='tail -f log/development.log'
# Basic directory operations # Basic directory operations
alias .='pwd' alias .='pwd'
alias ...='cd ../..' alias ...='cd ../..'
@ -33,20 +21,4 @@ alias l='ls -la'
alias ll='ls -alr' alias ll='ls -alr'
alias sl=ls # often screw this up alias sl=ls # often screw this up
alias sgem='sudo gem'
# Find ruby file
alias rfind='find . -name *.rb | xargs grep -n'
alias afind='ack-grep -il' alias afind='ack-grep -il'
# Git and svn mix
alias git-svn-dcommit-push='git svn dcommit && git push github master:svntrunk'
# TextMate
alias et='mate . &'
alias ett='mate app config lib db public spec test Rakefile Capfile Todo &'
alias etp='mate app config lib db public spec test vendor/plugins vendor/gems Rakefile Capfile Todo &'
alias etts='mate app config lib db public script spec test vendor/plugins vendor/gems Rakefile Capfile Todo &'
# Editor Ruby file in TextMate
alias mr='mate CHANGELOG app config db lib public script spec test'

View File

@ -54,24 +54,3 @@ function take() {
cd $1 cd $1
} }
function tm() {
cd $1
mate $1
}
# To use: add a .lighthouse file into your directory with the URL to the
# individual project. For example:
# https://rails.lighthouseapp.com/projects/8994
# Example usage: http://screencast.com/t/ZDgwNDUwNT
open_lighthouse_ticket () {
if [ ! -f .lighthouse-url ]; then
echo "There is no .lighthouse file in the current directory..."
return 0;
else
lighthouse_url=$(cat .lighthouse-url);
echo "Opening ticket #$1";
`open $lighthouse_url/tickets/$1`;
fi
}
alias lho='open_lighthouse_ticket'

View File

@ -20,18 +20,3 @@ function current_branch() {
ref=$(git symbolic-ref HEAD 2> /dev/null) || return ref=$(git symbolic-ref HEAD 2> /dev/null) || return
echo ${ref#refs/heads/} echo ${ref#refs/heads/}
} }
# Aliases
alias g='git'
alias gst='git status'
alias gl='git pull'
alias gup='git fetch && git rebase'
alias gp='git push'
alias gd='git diff | mate'
alias gdv='git diff -w "$@" | vim -R -'
alias gc='git commit -v'
alias gca='git commit -v -a'
alias gb='git branch'
alias gba='git branch -a'
alias gcount='git shortlog -sn'
alias gcp='git cherry-pick'

View File

@ -10,6 +10,10 @@ for config_file ($ZSH/lib/*.zsh) source $config_file
# Load all of your custom configurations from custom/ # Load all of your custom configurations from custom/
for config_file ($ZSH/custom/*.zsh) source $config_file for config_file ($ZSH/custom/*.zsh) source $config_file
# Load all of the plugins that were defined in ~/.zshrc
plugin=${plugin:=()}
for plugin ($plugins) source $ZSH/plugins/$plugin.plugin.zsh
# Check for updates on initial load... # Check for updates on initial load...
if [ "$DISABLE_AUTO_UPDATE" = "true" ] if [ "$DISABLE_AUTO_UPDATE" = "true" ]
then then

21
plugins/git.plugin.zsh Normal file
View File

@ -0,0 +1,21 @@
# Aliases
alias g='git'
alias gst='git status'
alias gl='git pull'
alias gup='git fetch && git rebase'
alias gp='git push'
alias gd='git diff | mate'
alias gdv='git diff -w "$@" | vim -R -'
alias gc='git commit -v'
alias gca='git commit -v -a'
alias gb='git branch'
alias gba='git branch -a'
alias gcount='git shortlog -sn'
alias gcp='git cherry-pick'
# Git and svn mix
alias git-svn-dcommit-push='git svn dcommit && git push github master:svntrunk'
alias ggpull='git pull origin $(current_branch)'
alias ggpush='git push origin $(current_branch)'

View File

@ -0,0 +1,16 @@
# To use: add a .lighthouse file into your directory with the URL to the
# individual project. For example:
# https://rails.lighthouseapp.com/projects/8994
# Example usage: http://screencast.com/t/ZDgwNDUwNT
open_lighthouse_ticket () {
if [ ! -f .lighthouse-url ]; then
echo "There is no .lighthouse file in the current directory..."
return 0;
else
lighthouse_url=$(cat .lighthouse-url);
echo "Opening ticket #$1";
`open $lighthouse_url/tickets/$1`;
fi
}
alias lho='open_lighthouse_ticket'

10
plugins/rails.plugin.zsh Normal file
View File

@ -0,0 +1,10 @@
alias ss='thin --stats "/thin/stats" start'
alias sg='ruby script/generate'
alias sd='ruby script/destroy'
alias sp='ruby script/plugin'
alias ssp='ruby script/spec'
alias rdbm='rake db:migrate'
alias sc='ruby script/console'
alias sd='ruby script/server --debugger'
alias devlog='tail -f log/development.log'

4
plugins/ruby.plugin.zsh Normal file
View File

@ -0,0 +1,4 @@
alias sgem='sudo gem'
# Find ruby file
alias rfind='find . -name *.rb | xargs grep -n'

View File

@ -0,0 +1,14 @@
# TextMate
alias et='mate . &'
alias ett='mate app config lib db public spec test Rakefile Capfile Todo &'
alias etp='mate app config lib db public spec test vendor/plugins vendor/gems Rakefile Capfile Todo &'
alias etts='mate app config lib db public script spec test vendor/plugins vendor/gems Rakefile Capfile Todo &'
# Editor Ruby file in TextMate
alias mr='mate CHANGELOG app config db lib public script spec test'
function tm() {
cd $1
mate $1
}