浏览代码

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

Robby Russell 14 年之前
父节点
当前提交
3cf9ab722e
共有 9 个文件被更改,包括 69 次插入64 次删除
  1. 0 28
      lib/aliases.zsh
  2. 0 21
      lib/functions.zsh
  3. 0 15
      lib/git.zsh
  4. 4 0
      oh-my-zsh.sh
  5. 21 0
      plugins/git.plugin.zsh
  6. 16 0
      plugins/lighthouse.plugin.zsh
  7. 10 0
      plugins/rails.plugin.zsh
  8. 4 0
      plugins/ruby.plugin.zsh
  9. 14 0
      plugins/textmate.plugin.zsh

+ 0 - 28
lib/aliases.zsh

@@ -1,19 +1,7 @@
-#!/bin/zsh
-
 # Push and pop directories on directory stack
 alias pu='pushd'
 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
 alias .='pwd'
 alias ...='cd ../..'
@@ -33,20 +21,4 @@ alias l='ls -la'
 alias ll='ls -alr'
 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'
-
-# 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'

+ 0 - 21
lib/functions.zsh

@@ -54,24 +54,3 @@ function take() {
   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'

+ 0 - 15
lib/git.zsh

@@ -20,18 +20,3 @@ function current_branch() {
   ref=$(git symbolic-ref HEAD 2> /dev/null) || return
   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'

+ 4 - 0
oh-my-zsh.sh

@@ -10,6 +10,10 @@ for config_file ($ZSH/lib/*.zsh) source $config_file
 # Load all of your custom configurations from custom/
 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...
 if [ "$DISABLE_AUTO_UPDATE" = "true" ]
 then

+ 21 - 0
plugins/git.plugin.zsh

@@ -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)'

+ 16 - 0
plugins/lighthouse.plugin.zsh

@@ -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 - 0
plugins/rails.plugin.zsh

@@ -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 - 0
plugins/ruby.plugin.zsh

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

+ 14 - 0
plugins/textmate.plugin.zsh

@@ -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
+}