Browse Source

Merge branch 'master' of git://github.com/robbyrussell/oh-my-zsh

NanoTech 13 years ago
parent
commit
68f893cbe0

+ 1 - 2
lib/functions.zsh

@@ -5,7 +5,7 @@ function title {
     print -nR $'\033k'$1$'\033'\\\
 
     print -nR $'\033]0;'$2$'\a'
-  elif [[ $TERM =~ "^xterm" || $TERM == "rxvt" ]]; then
+  elif [[ ($TERM =~ "^xterm") ]] || [[ ($TERM == "rxvt") ]]; then
     # Use this one instead for XTerms:
     print -nR $'\033]0;'$*$'\a'
   fi
@@ -37,4 +37,3 @@ function take() {
   mkdir -p $1
   cd $1
 }
-

+ 27 - 0
lib/git.zsh

@@ -11,3 +11,30 @@ parse_git_dirty () {
     echo "$ZSH_THEME_GIT_PROMPT_CLEAN"
   fi
 }
+
+# get the status of the working tree
+git_prompt_status() {
+  INDEX=$(git status --porcelain 2> /dev/null)
+  STATUS=""
+  if $(echo "$INDEX" | grep '^?? ' &> /dev/null); then
+    STATUS="$ZSH_THEME_GIT_PROMPT_UNTRACKED$STATUS"
+  fi
+  if $(echo "$INDEX" | grep '^A  ' &> /dev/null); then
+    STATUS="$ZSH_THEME_GIT_PROMPT_ADDED$STATUS"
+  elif $(echo "$INDEX" | grep '^M  ' &> /dev/null); then
+    STATUS="$ZSH_THEME_GIT_PROMPT_ADDED$STATUS"
+  fi
+  if $(echo "$INDEX" | grep '^ M ' &> /dev/null); then
+    STATUS="$ZSH_THEME_GIT_PROMPT_MODIFIED$STATUS"
+  fi
+  if $(echo "$INDEX" | grep '^R  ' &> /dev/null); then
+    STATUS="$ZSH_THEME_GIT_PROMPT_RENAMED$STATUS"
+  fi
+  if $(echo "$INDEX" | grep '^ D ' &> /dev/null); then
+    STATUS="$ZSH_THEME_GIT_PROMPT_DELETED$STATUS"
+  fi
+  if $(echo "$INDEX" | grep '^UU ' &> /dev/null); then
+    STATUS="$ZSH_THEME_GIT_PROMPT_UNMERGED$STATUS"
+  fi
+  echo $STATUS
+}

+ 1 - 1
oh-my-zsh.sh

@@ -12,7 +12,7 @@ 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
+for plugin ($plugins) source $ZSH/plugins/$plugin/$plugin.plugin.zsh
 
 # Check for updates on initial load...
 if [ "$DISABLE_AUTO_UPDATE" = "true" ]

+ 2 - 0
plugins/brew.plugin.zsh

@@ -1,4 +1,5 @@
 #compdef brew
+#autoload
 
 # imported from the latest homebrew contributions
 
@@ -65,3 +66,4 @@ case "$words[1]" in
     _brew_installed_formulae
     _wanted installed_formulae expl 'installed formulae' compadd -a installed_formulae ;;
 esac
+

+ 4 - 0
plugins/brew/brew.plugin.zsh

@@ -0,0 +1,4 @@
+# add brew completion function to path
+fpath=($ZSH/plugins/brew $fpath)
+autoload -U compinit
+compinit -i

+ 1 - 16
plugins/rails.plugin.zsh

@@ -1,14 +1,3 @@
-
-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'
-
 function _cap_does_task_list_need_generating () {
   if [ ! -f .cap_tasks~ ]; then return 0;
   else
@@ -29,8 +18,4 @@ function _cap () {
   fi
 }
 
-compctl -K _cap cap
-
-function remote_console() {
-  /usr/bin/env ssh $1 "( cd $2 && ruby script/console production )"
-}
+compctl -K _cap cap

plugins/dirpersist.plugin.zsh → plugins/dirpersist/dirpersist.plugin.zsh


+ 64 - 0
plugins/gem/_gem

@@ -0,0 +1,64 @@
+#compdef gem
+#autoload
+
+# gem zsh completion, based on homebrew completion
+
+_gem_installed() {
+  installed_gems=(`gem list --local --no-versions`)
+}
+
+local -a _1st_arguments
+_1st_arguments=(
+  'cert:Manage RubyGems certificates and signing settings'
+  'check:Check installed gems'
+  'cleanup:Clean up old versions of installed gems in the local repository'
+  'contents:Display the contents of the installed gems'
+  'dependency:Show the dependencies of an installed gem'
+  'environment:Display information about the RubyGems environment'
+  'fetch:Download a gem and place it in the current directory'
+  'generate_index:Generates the index files for a gem server directory'
+  'help:Provide help on the `gem` command'
+  'install:Install a gem into the local repository'
+  'list:Display gems whose name starts with STRING'
+  'lock:Generate a lockdown list of gems'
+  'mirror:Mirror a gem repository'
+  'outdated:Display all gems that need updates'
+  'owner:Manage gem owners on RubyGems.org.'
+  'pristine:Restores installed gems to pristine condition from files located in the gem cache'
+  'push:Push a gem up to RubyGems.org'
+  'query:Query gem information in local or remote repositories'
+  'rdoc:Generates RDoc for pre-installed gems'
+  'search:Display all gems whose name contains STRING'
+  'server:Documentation and gem repository HTTP server'
+  'sources:Manage the sources and cache file RubyGems uses to search for gems'
+  'specification:Display gem specification (in yaml)'
+  'stale:List gems along with access times'
+  'uninstall:Uninstall gems from the local repository'
+  'unpack:Unpack an installed gem to the current directory'
+  'update:Update the named gems (or all installed gems) in the local repository'
+  'which:Find the location of a library file you can require'
+)
+
+local expl
+local -a gems installed_gems
+
+_arguments \
+  '(-v --version)'{-v,--version}'[show version]' \
+  '(-h --help)'{-h,--help}'[show help]' \
+  '*:: :->subcmds' && return 0
+
+if (( CURRENT == 1 )); then
+  _describe -t commands "gem subcommand" _1st_arguments
+  return
+fi
+
+case "$words[1]" in
+  list)
+      if [[ "$state" == forms ]]; then
+        _gem_installed
+        _requested installed_gems expl 'installed gems' compadd -a installed_gems
+      fi ;;
+  uninstall|update)
+    _gem_installed
+    _wanted installed_gems expl 'installed gems' compadd -a installed_gems ;;
+esac

+ 4 - 0
plugins/gem/gem.plugin.zsh

@@ -0,0 +1,4 @@
+# add brew completion function to path
+fpath=($ZSH/plugins/gem $fpath)
+autoload -U compinit
+compinit -i

+ 1 - 1
plugins/git.plugin.zsh

@@ -12,7 +12,7 @@ alias gb='git branch'
 alias gba='git branch -a'
 alias gcount='git shortlog -sn'
 alias gcp='git cherry-pick'
-
+alias glg='git log --stat --max-count=5'
 
 # Git and svn mix
 alias git-svn-dcommit-push='git svn dcommit && git push github master:svntrunk'

+ 40 - 0
plugins/github/_github

@@ -0,0 +1,40 @@
+#compdef github
+#autoload
+
+# in order to make this work, you will need to have the github gem installed
+# http://github.com/defunkt/github-gem
+
+# github zsh completion, based on homebrew completion
+
+local -a _1st_arguments
+_1st_arguments=(
+  'browse:Open this repo in a web browser'
+  'clone:Clone a repo'
+  'config:Automatically set configuration info, or pass args to specify'
+  'create-from-local:Create a new GitHub repository from the current local repository'
+  'create:Create a new empty GitHub repository'
+  'fetch:Fetch from a remote to a local branch'
+  'fetch_all:Fetch all refs from a user'
+  'fork:Forks a GitHub repository'
+  'home:Open this repos master branch in a web browser'
+  'ignore:Ignore a SHA from github network commits'
+  'info:Info about this project'
+  'issues:Project issues tools'
+  'network:Project network tools - sub-commands : web [user], list, fetch, commits'
+  'open:Open the given user/project in a web browser'
+  'pull-request:Generate the text for a pull request'
+  'pull:Pull from a remote'
+  'search:Search GitHub for the given repository name'
+  'track:Track another users repository'
+)
+
+local expl
+local -a pkgs installed_pkgs
+
+_arguments \
+  '*:: :->subcmds' && return 0
+
+if (( CURRENT == 1 )); then
+  _describe -t commands "github subcommand" _1st_arguments
+  return
+fi

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

@@ -0,0 +1,4 @@
+# add github completion function to path
+fpath=($ZSH/plugins/github $fpath)
+autoload -U compinit
+compinit -i

plugins/lighthouse.plugin.zsh → plugins/lighthouse/lighthouse.plugin.zsh


plugins/macports.plugin.zsh → plugins/macports/macports.plugin.zsh


plugins/mysql-macports.plugin.zsh → plugins/mysql/mysql-macports.plugin.zsh


plugins/osx.plugin.zsh → plugins/osx/osx.plugin.zsh


+ 46 - 0
plugins/pip/_pip

@@ -0,0 +1,46 @@
+#compdef pip
+#autoload
+
+# pip zsh completion, based on homebrew completion
+
+_pip_installed() {
+  installed_pkgs=(`pip freeze`)
+}
+
+local -a _1st_arguments
+_1st_arguments=(
+  'bundle:Create pybundles (archives containing multiple packages)'
+  'freeze:Output all currently installed packages (exact versions) to stdout'
+  'help:Show available commands'
+  'install:Install packages'
+  'search:Search PyPI'
+  'uninstall:Uninstall packages'
+  'unzip:Unzip individual packages'
+  'zip:Zip individual packages'
+)
+
+local expl
+local -a pkgs installed_pkgs
+
+_arguments \
+  '(--version)--version[Show version number of program and exit]' \
+  '(-v --verbose)'{-v,--verbose}'[Give more output]' \
+  '(-q --quiet)'{-q,--quiet}'[Give less output]' \
+  '(-h --help)'{-h,--help}'[Show help]' \
+  '*:: :->subcmds' && return 0
+
+if (( CURRENT == 1 )); then
+  _describe -t commands "pip subcommand" _1st_arguments
+  return
+fi
+
+case "$words[1]" in
+  list)
+      if [[ "$state" == forms ]]; then
+        _pip_installed
+        _requested installed_pkgs expl 'installed packages' compadd -a installed_pkgs
+      fi ;;
+  uninstall)
+    _pip_installed
+    _wanted installed_pkgs expl 'installed packages' compadd -a installed_pkgs ;;
+esac

+ 4 - 0
plugins/pip/pip.plugin.zsh

@@ -0,0 +1,4 @@
+# add brew completion function to path
+fpath=($ZSH/plugins/pip $fpath)
+autoload -U compinit
+compinit -i

+ 13 - 0
plugins/rails/rails.plugin.zsh

@@ -0,0 +1,13 @@
+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'
+
+function remote_console() {
+  /usr/bin/env ssh $1 "( cd $2 && ruby script/console production )"
+}

plugins/ruby.plugin.zsh → plugins/ruby/ruby.plugin.zsh


plugins/ssh-agent.plugin.zsh → plugins/ssh-agent/ssh-agent.plugin.zsh


plugins/textmate.plugin.zsh → plugins/textmate/textmate.plugin.zsh


plugins/vi-mode.plugin.zsh → plugins/vi-mode/vi-mode.plugin.zsh


+ 6 - 0
themes/cloud.zsh-theme

@@ -0,0 +1,6 @@
+PROMPT='%{$fg_bold[cyan]%}☁ %{$fg_bold[green]%}%p %{$fg[green]%}%c %{$fg_bold[cyan]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'
+
+ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[green]%}[%{$fg[cyan]%}"
+ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
+ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[green]%}] %{$fg[yellow]%}⚡%{$reset_color%}"
+ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[green]%}]"

+ 15 - 0
themes/gozilla.zsh-theme

@@ -0,0 +1,15 @@
+PROMPT='%{$fg_bold[red]%}➜ %{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'
+
+ZSH_THEME_GIT_PROMPT_PREFIX="("
+ZSH_THEME_GIT_PROMPT_SUFFIX=")"
+ZSH_THEME_GIT_PROMPT_DIRTY=""
+ZSH_THEME_GIT_PROMPT_CLEAN=""
+
+RPROMPT='$(git_prompt_status)%{$reset_color%}'
+
+ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[cyan]%} ✈"
+ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[yellow]%} ✭"
+ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%} ✗"
+ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[blue]%} ➦"
+ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[magenta]%} ✂"
+ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[grey]%} ✱"

+ 10 - 0
themes/lukerandall.zsh-theme

@@ -0,0 +1,10 @@
+# ZSH Theme - Preview: http://cl.ly/f701d00760f8059e06dc
+# Thanks to gallifrey, upon whose theme this is based
+
+local return_code="%(?..%{$fg_bold[red]%}%? ↵%{$reset_color%})"
+
+PROMPT='%{$fg_bold[green]%}%n@%m%{$reset_color%} %{$fg_bold[blue]%}%2~%{$reset_color%} $(git_prompt_info)%{$reset_color%}%B»%b '
+RPS1="${return_code}"
+
+ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[yellow]%}("
+ZSH_THEME_GIT_PROMPT_SUFFIX=") %{$reset_color%}"

File diff suppressed because it is too large
+ 14 - 0
themes/philips.zsh-theme