浏览代码

Merge pull request #1686 from timsly/hub-autocomplete

added hub autocomplete instructions
Robby Russell 12 年之前
父节点
当前提交
b95c0e827b
共有 1 个文件被更改,包括 17 次插入0 次删除
  1. 17 0
      plugins/github/github.plugin.zsh

+ 17 - 0
plugins/github/github.plugin.zsh

@@ -1,5 +1,22 @@
 # Setup hub function for git, if it is available; http://github.com/defunkt/hub
 # Setup hub function for git, if it is available; http://github.com/defunkt/hub
 if [ "$commands[(I)hub]" ] && [ "$commands[(I)ruby]" ]; then
 if [ "$commands[(I)hub]" ] && [ "$commands[(I)ruby]" ]; then
+    # Autoload _git completion functions
+    if declare -f _git > /dev/null; then
+      _git
+    fi
+    
+    if declare -f _git_commands > /dev/null; then
+        _hub_commands=(
+            'alias:show shell instructions for wrapping git'
+            'pull-request:open a pull request on GitHub'
+            'fork:fork origin repo on GitHub'
+            'create:create new repo on GitHub for the current project'
+            'browse:browse the project on GitHub'
+            'compare:open GitHub compare view'
+        )
+        # Extend the '_git_commands' function with hub commands
+        eval "$(declare -f _git_commands | sed -e 's/base_commands=(/base_commands=(${_hub_commands} /')"
+    fi
     # eval `hub alias -s zsh`
     # eval `hub alias -s zsh`
     function git(){
     function git(){
         if ! (( $+_has_working_hub  )); then
         if ! (( $+_has_working_hub  )); then