From 6c95c4b68a97b41682084834b6e30822b6f06ab9 Mon Sep 17 00:00:00 2001 From: Ryan Doenges Date: Sun, 12 Jun 2011 13:57:00 -0700 Subject: [PATCH 01/42] use /home/ryan/d/.oh-my-zsh instead of ~/.oh-my-zsh for cache --- lib/completion.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/completion.zsh b/lib/completion.zsh index fdd0a8536..8c0e7701b 100644 --- a/lib/completion.zsh +++ b/lib/completion.zsh @@ -44,7 +44,7 @@ zstyle ':completion:*:hosts' hosts $hosts # Use caching so that commands like apt and dpkg complete are useable zstyle ':completion::complete:*' use-cache 1 -zstyle ':completion::complete:*' cache-path ~/.oh-my-zsh/cache/ +zstyle ':completion::complete:*' cache-path $ZSH/cache/ # Don't complete uninteresting users zstyle ':completion:*:*:*:users' ignored-patterns \ From 0061dda057bb3b8b67f2bf06b374ab0b786e80fe Mon Sep 17 00:00:00 2001 From: artemk Date: Sat, 6 Aug 2011 16:46:37 +0300 Subject: [PATCH 02/42] Add bundle open alias, which open gem using EDITOR var --- plugins/bundler/bundler.plugin.zsh | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index f005700ff..af5bf2b3b 100644 --- a/plugins/bundler/bundler.plugin.zsh +++ b/plugins/bundler/bundler.plugin.zsh @@ -3,6 +3,7 @@ alias bi="bundle install" alias bl="bundle list" alias bu="bundle update" alias bp="bundle package" +alias bo="bundle open" # The following is based on https://github.com/gma/bundler-exec From 914e1b52583e09298f10fab7a301711bd9613ac6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20M-B?= Date: Sat, 5 Nov 2011 00:34:15 +0100 Subject: [PATCH 03/42] Adding custom theme --- themes/essembeh.zsh-theme | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 themes/essembeh.zsh-theme diff --git a/themes/essembeh.zsh-theme b/themes/essembeh.zsh-theme new file mode 100644 index 000000000..f9cd6c241 --- /dev/null +++ b/themes/essembeh.zsh-theme @@ -0,0 +1,29 @@ +# Theme with full path names and hostname +# Handy if you work on different servers all the time; + + +local return_code="%(?..%{$fg_bold[red]%}%? ↵%{$reset_color%})" + +function my_git_prompt_info() { + ref=$(git symbolic-ref HEAD 2> /dev/null) || return + GIT_STATUS=$(git_prompt_status) + [[ -n $GIT_STATUS ]] && GIT_STATUS=" $GIT_STATUS" + echo "$ZSH_THEME_GIT_PROMPT_PREFIX${ref#refs/heads/}$GIT_STATUS$ZSH_THEME_GIT_PROMPT_SUFFIX" +} + +LOGIN_COLOR=green +test -n "$SSH_CONNECTION" && LOGIN_COLOR=red +test $UID -eq 0 && LOGIN_COLOR=pink + +PROMPT='%{$fg[$LOGIN_COLOR]%}%B%n@%M:%{$fg[yellow]%}%B%~%{$reset_color%}%b $(my_git_prompt_info)%(!.#.$) ' +RPS1="${return_code}" + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[yellow]%}(" +ZSH_THEME_GIT_PROMPT_SUFFIX=") %{$reset_color%}" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%%" +ZSH_THEME_GIT_PROMPT_ADDED="+" +ZSH_THEME_GIT_PROMPT_MODIFIED="*" +ZSH_THEME_GIT_PROMPT_RENAMED="~" +ZSH_THEME_GIT_PROMPT_DELETED="!" +ZSH_THEME_GIT_PROMPT_UNMERGED="?" + From c4434d2ddedd62737ad3f99111ef47d722e2b74e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20M-B?= Date: Sat, 5 Nov 2011 00:34:37 +0100 Subject: [PATCH 04/42] Update completion for SSH Add all hosts found in ~/.ssh/config. Tip found on: http://www.nerux.org/wiki/OpenSSH#coupler_avec_zsh_completion --- lib/completion.zsh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/completion.zsh b/lib/completion.zsh index b3cc91822..dab9bb1d3 100644 --- a/lib/completion.zsh +++ b/lib/completion.zsh @@ -33,14 +33,17 @@ cdpath=(.) # use /etc/hosts and known_hosts for hostname completion [ -r ~/.ssh/known_hosts ] && _ssh_hosts=(${${${${(f)"$(<$HOME/.ssh/known_hosts)"}:#[\|]*}%%\ *}%%,*}) || _ssh_hosts=() +[ -r ~/.ssh/config ] && _ssh_config=($(cat ~/.ssh/config | sed -ne 's/Host[=\t ]//p')) || _ssh_config=() [ -r /etc/hosts ] && : ${(A)_etc_hosts:=${(s: :)${(ps:\t:)${${(f)~~"$( Date: Wed, 16 Nov 2011 19:44:02 +0100 Subject: [PATCH 05/42] Update theme Use different colors in case of root or ssh connection for prompt. --- themes/essembeh.zsh-theme | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/themes/essembeh.zsh-theme b/themes/essembeh.zsh-theme index f9cd6c241..8c98ea1ed 100644 --- a/themes/essembeh.zsh-theme +++ b/themes/essembeh.zsh-theme @@ -11,14 +11,16 @@ function my_git_prompt_info() { echo "$ZSH_THEME_GIT_PROMPT_PREFIX${ref#refs/heads/}$GIT_STATUS$ZSH_THEME_GIT_PROMPT_SUFFIX" } -LOGIN_COLOR=green -test -n "$SSH_CONNECTION" && LOGIN_COLOR=red -test $UID -eq 0 && LOGIN_COLOR=pink - -PROMPT='%{$fg[$LOGIN_COLOR]%}%B%n@%M:%{$fg[yellow]%}%B%~%{$reset_color%}%b $(my_git_prompt_info)%(!.#.$) ' +# Colored prompt +ZSH_THEME_COLOR_USER="green" +ZSH_THEME_COLOR_HOST="green" +ZSH_THEME_COLOR_PWD="yellow" +test -n "$SSH_CONNECTION" && ZSH_THEME_COLOR_USER="red" && ZSH_THEME_COLOR_HOST="red" +test `id -u` = 0 && ZSH_THEME_COLOR_USER="magenta" && ZSH_THEME_COLOR_HOST="magenta" +PROMPT='%{$fg_bold[$ZSH_THEME_COLOR_USER]%}%n@%{$fg_bold[$ZSH_THEME_COLOR_HOST]%}%M%{$reset_color%}:%{$fg_bold[$ZSH_THEME_COLOR_PWD]%}%~%{$reset_color%} $(my_git_prompt_info)%(!.#.$) ' RPS1="${return_code}" -ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[yellow]%}(" +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[cyan]%}(" ZSH_THEME_GIT_PROMPT_SUFFIX=") %{$reset_color%}" ZSH_THEME_GIT_PROMPT_UNTRACKED="%%" ZSH_THEME_GIT_PROMPT_ADDED="+" From 30890b9eb9e1b6fc4b553d94a97424049bd6003e Mon Sep 17 00:00:00 2001 From: Jason Gill Date: Wed, 16 Nov 2011 15:51:30 -0500 Subject: [PATCH 06/42] Fixes and improves the behavior of the tm command --- plugins/textmate/textmate.plugin.zsh | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/plugins/textmate/textmate.plugin.zsh b/plugins/textmate/textmate.plugin.zsh index a11a097f5..773c4f8d2 100644 --- a/plugins/textmate/textmate.plugin.zsh +++ b/plugins/textmate/textmate.plugin.zsh @@ -6,7 +6,16 @@ alias etts='mate app config lib db public script spec test vendor/plugins vendor # Edit Ruby app in TextMate alias mr='mate CHANGELOG app config db lib public script spec test' +# If the tm command is called without an argument, open TextMate in the current directory +# If tm is passed a directory, cd to it and open it in TextMate +# If tm is passed a file, open it in TextMate function tm() { - cd $1 - mate $1 + if [[ -z $1 ]]; then + mate . + else + mate $1 + if [[ -d $1 ]]; then + cd $1 + fi + fi } From 730e0296640fed91b6db83745abf920428aa5abf Mon Sep 17 00:00:00 2001 From: Jordan MacDonald Date: Sat, 7 Jan 2012 15:36:58 -0500 Subject: [PATCH 07/42] Added alias for git diff. --- plugins/git/git.plugin.zsh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/plugins/git/git.plugin.zsh b/plugins/git/git.plugin.zsh index c1b382b2c..00667a215 100644 --- a/plugins/git/git.plugin.zsh +++ b/plugins/git/git.plugin.zsh @@ -3,6 +3,8 @@ alias g='git' compdef g=git alias gst='git status' compdef _git gst=git-status +alias gd='git diff' +compdef _git diff=git-diff alias gl='git pull' compdef _git gl=git-pull alias gup='git fetch && git rebase' From 49d44adb09f417fac24ea8e664b12f6546f22e9d Mon Sep 17 00:00:00 2001 From: Jordan MacDonald Date: Fri, 20 Jan 2012 13:07:03 -0500 Subject: [PATCH 08/42] Fixed compdef alias to use 'gd' as shortcut. --- plugins/git/git.plugin.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/git/git.plugin.zsh b/plugins/git/git.plugin.zsh index 00667a215..a42148fd9 100644 --- a/plugins/git/git.plugin.zsh +++ b/plugins/git/git.plugin.zsh @@ -4,7 +4,7 @@ compdef g=git alias gst='git status' compdef _git gst=git-status alias gd='git diff' -compdef _git diff=git-diff +compdef _git gd=git-diff alias gl='git pull' compdef _git gl=git-pull alias gup='git fetch && git rebase' From 72aeaa9d9ee55fbfe15b371c0bf127ab3948a965 Mon Sep 17 00:00:00 2001 From: Hao Hong Date: Mon, 6 Feb 2012 15:51:31 +0800 Subject: [PATCH 09/42] added "publish" and "track" command completion for git-flow plugin --- plugins/git-flow/git-flow.plugin.zsh | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/plugins/git-flow/git-flow.plugin.zsh b/plugins/git-flow/git-flow.plugin.zsh index 270bcbe38..b94f1a81f 100644 --- a/plugins/git-flow/git-flow.plugin.zsh +++ b/plugins/git-flow/git-flow.plugin.zsh @@ -88,6 +88,8 @@ __git-flow-release () 'start:Start a new release branch.' 'finish:Finish a release branch.' 'list:List all your release branches. (Alias to `git flow release`)' + 'publish: public' + 'track: track' ) _describe -t commands 'git flow release' subcommands _arguments \ @@ -113,6 +115,16 @@ __git-flow-release () ':version:__git_flow_version_list' ;; + (publish) + _arguments \ + ':version:__git_flow_version_list'\ + ;; + + (track) + _arguments \ + ':version:__git_flow_version_list'\ + ;; + *) _arguments \ -v'[Verbose (more) output]' From fbf5b0ecb6b551b7d4ee2f1e85780c9fdbe052a0 Mon Sep 17 00:00:00 2001 From: Brent Faulkner Date: Mon, 6 Feb 2012 21:50:17 -0500 Subject: [PATCH 10/42] add default rbenv_prompt_info implementation to close #878 --- lib/rbenv.zsh | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 lib/rbenv.zsh diff --git a/lib/rbenv.zsh b/lib/rbenv.zsh new file mode 100644 index 000000000..a8b6c323c --- /dev/null +++ b/lib/rbenv.zsh @@ -0,0 +1,2 @@ +# using the rbenv plugin will override this with a real implementation +function rbenv_prompt_info() {} From b62a3e89602bca23b794dd1e808d92a89880ad3f Mon Sep 17 00:00:00 2001 From: Brent Faulkner Date: Sun, 12 Feb 2012 12:27:06 -0500 Subject: [PATCH 11/42] handle case where ~/.rvm/bin/rvm-prompt is not in path, so "which" can't find it --- themes/crunch.zsh-theme | 2 +- themes/dallas.zsh-theme | 2 +- themes/macovsky-ruby.zsh-theme | 2 +- themes/macovsky.zsh-theme | 2 +- themes/superjarin.zsh-theme | 2 +- themes/zhann.zsh-theme | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/themes/crunch.zsh-theme b/themes/crunch.zsh-theme index b2759a1b0..2fc066381 100644 --- a/themes/crunch.zsh-theme +++ b/themes/crunch.zsh-theme @@ -29,7 +29,7 @@ ZSH_THEME_GIT_PROMPT_DIRTY=" $CRUNCH_GIT_DIRTY_COLOR✗" # Our elements: CRUNCH_TIME_="$CRUNCH_BRACKET_COLOR{$CRUNCH_TIME_COLOR%T$CRUNCH_BRACKET_COLOR}%{$reset_color%}" -if which rvm-prompt &> /dev/null; then +if [ -e ~/.rvm/bin/rvm-prompt ]; then CRUNCH_RVM_="$CRUNCH_BRACKET_COLOR"["$CRUNCH_RVM_COLOR\${\$(~/.rvm/bin/rvm-prompt i v g)#ruby-}$CRUNCH_BRACKET_COLOR"]"%{$reset_color%}" else if which rbenv &> /dev/null; then diff --git a/themes/dallas.zsh-theme b/themes/dallas.zsh-theme index e9b4f852a..02285df52 100644 --- a/themes/dallas.zsh-theme +++ b/themes/dallas.zsh-theme @@ -3,7 +3,7 @@ # Grab the current date (%D) and time (%T) wrapped in {}: {%D %T} DALLAS_CURRENT_TIME_="%{$fg[white]%}{%{$fg[yellow]%}%D %T%{$fg[white]%}}%{$reset_color%}" # Grab the current version of ruby in use (via RVM): [ruby-1.8.7] -if which rvm-prompt &> /dev/null; then +if [ -e ~/.rvm/bin/rvm-prompt ]; then DALLAS_CURRENT_RUBY_="%{$fg[white]%}[%{$fg[magenta]%}\$(~/.rvm/bin/rvm-prompt i v)%{$fg[white]%}]%{$reset_color%}" else if which rbenv &> /dev/null; then diff --git a/themes/macovsky-ruby.zsh-theme b/themes/macovsky-ruby.zsh-theme index 045376761..69d80d588 100644 --- a/themes/macovsky-ruby.zsh-theme +++ b/themes/macovsky-ruby.zsh-theme @@ -1,7 +1,7 @@ # ZSH Theme - Preview: http://gyazo.com/8becc8a7ed5ab54a0262a470555c3eed.png local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" -if which rvm-prompt &> /dev/null; then +if [ -e ~/.rvm/bin/rvm-prompt ]; then PROMPT='%{$fg[green]%}%~%{$reset_color%} %{$fg[red]%}‹$(~/.rvm/bin/rvm-prompt i v)› %{$reset_color%} $(git_prompt_info)%{$reset_color%}%B$%b ' else if which rbenv &> /dev/null; then diff --git a/themes/macovsky.zsh-theme b/themes/macovsky.zsh-theme index b6978b929..2e6dce42d 100644 --- a/themes/macovsky.zsh-theme +++ b/themes/macovsky.zsh-theme @@ -1,7 +1,7 @@ # ZSH Theme - Preview: http://gyazo.com/8becc8a7ed5ab54a0262a470555c3eed.png local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" -if which rvm-prompt &> /dev/null; then +if [ -e ~/.rvm/bin/rvm-prompt ]; then PROMPT='%{$fg[green]%}%~%{$reset_color%} %{$fg[red]%}‹$(~/.rvm/bin/rvm-prompt i v)› %{$reset_color%} $(git_prompt_info)%{$reset_color%}%B$%b ' else if which rbenv &> /dev/null; then diff --git a/themes/superjarin.zsh-theme b/themes/superjarin.zsh-theme index 0be816de0..86955a560 100644 --- a/themes/superjarin.zsh-theme +++ b/themes/superjarin.zsh-theme @@ -1,5 +1,5 @@ # Grab the current version of ruby in use (via RVM): [ruby-1.8.7] -if which rvm-prompt &> /dev/null; then +if [ -e ~/.rvm/bin/rvm-prompt ]; then JARIN_CURRENT_RUBY_="%{$fg[white]%}[%{$fg[red]%}\$(~/.rvm/bin/rvm-prompt i v)%{$fg[white]%}]%{$reset_color%}" else if which rbenv &> /dev/null; then diff --git a/themes/zhann.zsh-theme b/themes/zhann.zsh-theme index 574e0cec3..5c49fe79b 100644 --- a/themes/zhann.zsh-theme +++ b/themes/zhann.zsh-theme @@ -1,6 +1,6 @@ PROMPT='%{$fg_bold[green]%}%p %{$fg[cyan]%}%c%{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}' -if which rvm-prompt &> /dev/null; then +if [ -e ~/.rvm/bin/rvm-prompt ]; then RPROMPT='%{$reset_color%} %{$fg[red]%}$(~/.rvm/bin/rvm-prompt i v g) %{$reset_color%}' else if which rbenv &> /dev/null; then From 4e0b5be145cb0f4eda769906e9e72e31aec7c236 Mon Sep 17 00:00:00 2001 From: Andrew Ash Date: Thu, 23 Feb 2012 23:12:07 -0800 Subject: [PATCH 12/42] Fix spurious correction with sudo vim user@host:~ $ sudo vim /etc/rc.conf zsh: correct 'vim' to '.vim' [nyae]? http://www.zsh.org/mla/users/2012/msg00028.html --- lib/correction.zsh | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/correction.zsh b/lib/correction.zsh index fc60dcdbd..53c477d46 100644 --- a/lib/correction.zsh +++ b/lib/correction.zsh @@ -8,3 +8,4 @@ alias gist='nocorrect gist' alias heroku='nocorrect heroku' alias ebuild='nocorrect ebuild' alias hpodder='nocorrect hpodder' +alias sudo='nocorrect sudo' \ No newline at end of file From a75aabad1e455dcbf62891ba7370f6c0ea1108b2 Mon Sep 17 00:00:00 2001 From: Corey Woodcox Date: Wed, 9 Nov 2011 14:43:32 -0700 Subject: [PATCH 13/42] add the half-life theme based on steeef and lambda --- themes/half-life.zsh-theme | 99 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100644 themes/half-life.zsh-theme diff --git a/themes/half-life.zsh-theme b/themes/half-life.zsh-theme new file mode 100644 index 000000000..699880027 --- /dev/null +++ b/themes/half-life.zsh-theme @@ -0,0 +1,99 @@ +# prompt style and colors based on Steve Losh's Prose theme: +# http://github.com/sjl/oh-my-zsh/blob/master/themes/prose.zsh-theme +# +# vcs_info modifications from Bart Trojanowski's zsh prompt: +# http://www.jukie.net/bart/blog/pimping-out-zsh-prompt +# +# git untracked files modification from Brian Carper: +# http://briancarper.net/blog/570/git-info-in-your-zsh-prompt + +function virtualenv_info { + [ $VIRTUAL_ENV ] && echo '('`basename $VIRTUAL_ENV`') ' +} +PR_GIT_UPDATE=1 + +setopt prompt_subst +autoload colors +colors + +autoload -U add-zsh-hook +autoload -Uz vcs_info + +#use extended color pallete if available +if [[ $TERM = *256color* || $TERM = *rxvt* ]]; then + turquoise="%F{81}" + orange="%F{166}" + purple="%F{135}" + hotpink="%F{161}" + limegreen="%F{118}" +else + turquoise="$fg[cyan]" + orange="$fg[yellow]" + purple="$fg[magenta]" + hotpink="$fg[red]" + limegreen="$fg[green]" +fi + +# enable VCS systems you use +zstyle ':vcs_info:*' enable git svn + +# check-for-changes can be really slow. +# you should disable it, if you work with large repositories +zstyle ':vcs_info:*:prompt:*' check-for-changes true + +# set formats +# %b - branchname +# %u - unstagedstr (see below) +# %c - stagedstr (see below) +# %a - action (e.g. rebase-i) +# %R - repository path +# %S - path in the repository +PR_RST="%{${reset_color}%}" +FMT_BRANCH="(%{$turquoise%}%b%u%c${PR_RST})" +FMT_ACTION="(%{$limegreen%}%a${PR_RST})" +FMT_UNSTAGED="%{$orange%}●" +FMT_STAGED="%{$limegreen%}●" + +zstyle ':vcs_info:*:prompt:*' unstagedstr "${FMT_UNSTAGED}" +zstyle ':vcs_info:*:prompt:*' stagedstr "${FMT_STAGED}" +zstyle ':vcs_info:*:prompt:*' actionformats "${FMT_BRANCH}${FMT_ACTION}" +zstyle ':vcs_info:*:prompt:*' formats "${FMT_BRANCH}" +zstyle ':vcs_info:*:prompt:*' nvcsformats "" + + +function steeef_preexec { + case "$(history $HISTCMD)" in + *git*) + PR_GIT_UPDATE=1 + ;; + *svn*) + PR_GIT_UPDATE=1 + ;; + esac +} +add-zsh-hook preexec steeef_preexec + +function steeef_chpwd { + PR_GIT_UPDATE=1 +} +add-zsh-hook chpwd steeef_chpwd + +function steeef_precmd { + if [[ -n "$PR_GIT_UPDATE" ]] ; then + # check for untracked files or updated submodules, since vcs_info doesn't + if [[ ! -z $(git ls-files --other --exclude-standard 2> /dev/null) ]]; then + PR_GIT_UPDATE=1 + FMT_BRANCH="${PM_RST} on %{$turquoise%}%b%u%c%{$hotpink%}●${PR_RST}" + else + FMT_BRANCH="${PM_RST} on %{$turquoise%}%b%u%c${PR_RST}" + fi + zstyle ':vcs_info:*:prompt:*' formats "${FMT_BRANCH}" + + vcs_info 'prompt' + PR_GIT_UPDATE= + fi +} +add-zsh-hook precmd steeef_precmd + +PROMPT=$' +%{$purple%}%n%{$reset_color%} in %{$limegreen%}%~%{$reset_color%}$(rvm-prompt " with%{$fg[red]%} " v g "%{$reset_color%}")$vcs_info_msg_0_%{$orange%} λ%{$reset_color%} ' From 0b70b6d0483210b7fcc74ee1073c7de887f4f3ac Mon Sep 17 00:00:00 2001 From: Corey Woodcox Date: Wed, 4 Apr 2012 00:58:09 -0600 Subject: [PATCH 14/42] small changes to make it prettier --- themes/half-life.zsh-theme | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/themes/half-life.zsh-theme b/themes/half-life.zsh-theme index 699880027..c8d09ce47 100644 --- a/themes/half-life.zsh-theme +++ b/themes/half-life.zsh-theme @@ -49,8 +49,8 @@ zstyle ':vcs_info:*:prompt:*' check-for-changes true # %R - repository path # %S - path in the repository PR_RST="%{${reset_color}%}" -FMT_BRANCH="(%{$turquoise%}%b%u%c${PR_RST})" -FMT_ACTION="(%{$limegreen%}%a${PR_RST})" +FMT_BRANCH=" on %{$turquoise%}%b%u%c${PR_RST}" +FMT_ACTION=" performing a %{$limegreen%}%a${PR_RST}" FMT_UNSTAGED="%{$orange%}●" FMT_STAGED="%{$limegreen%}●" From 9b05a44387f84ae0b24e24023286534d0bbdf65f Mon Sep 17 00:00:00 2001 From: "Steven G. Harms" Date: Thu, 5 Apr 2012 10:18:16 -0700 Subject: [PATCH 15/42] Adds glo; glp (arg) * glo := git log --oneline * glp := git log --pretty=arg --- plugins/git/git.plugin.zsh | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/plugins/git/git.plugin.zsh b/plugins/git/git.plugin.zsh index c1b382b2c..63a276d25 100644 --- a/plugins/git/git.plugin.zsh +++ b/plugins/git/git.plugin.zsh @@ -30,6 +30,8 @@ alias glg='git log --stat --max-count=5' compdef _git glg=git-log alias glgg='git log --graph --max-count=5' compdef _git glgg=git-log +alias glo='git log --oneline' +compdef _git glo=git-log alias gss='git status -s' compdef _git gss=git-status alias ga='git add' @@ -59,3 +61,12 @@ 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 + +# Pretty log messages +function _git_log_prettily(){ + if ! [ -z $1 ]; then + git log --pretty=$1 + fi +} +alias glp="_git_log_prettily" +compdef _git glp=git-log From 6f4c69cb48d6fb746149afddee264509a5245305 Mon Sep 17 00:00:00 2001 From: Justin Mazzi Date: Wed, 25 Apr 2012 11:59:53 -0300 Subject: [PATCH 16/42] Add instructions on handling updates and prompts. --- README.textile | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.textile b/README.textile index bf6776665..f6b59fa26 100644 --- a/README.textile +++ b/README.textile @@ -59,6 +59,14 @@ If you want to override any of the default behavior, just add a new file (ending If you have many functions which go well together you can put them as a *.plugin.zsh file in the @custom/plugins/@ directory and then enable this plugin. If you would like to override the functionality of a plugin distributed with oh-my-zsh, create a plugin of the same name in the @custom/plugins/@ directory and it will be loaded instead of the one in @plugins/@. +h3. Updates +By default you will be prompted to check for updates. If you would like oh-my-zsh to automatically update itself without prompting you, set the following in your ~/.zshrc + +@DISABLE_UPDATE_PROMPT=true@ + +To disable updates entirely, put this in your ~/.zshrc + +@DISABLE_AUTO_UPDATE=true@ h3. Uninstalling From 7fd1bf597fd866480d41a4208fa23d04b1a79044 Mon Sep 17 00:00:00 2001 From: Justin Mazzi Date: Wed, 25 Apr 2012 11:02:17 -0400 Subject: [PATCH 17/42] Fix formatting --- README.textile | 1 + 1 file changed, 1 insertion(+) diff --git a/README.textile b/README.textile index f6b59fa26..701485690 100644 --- a/README.textile +++ b/README.textile @@ -60,6 +60,7 @@ If you have many functions which go well together you can put them as a *.plugin If you would like to override the functionality of a plugin distributed with oh-my-zsh, create a plugin of the same name in the @custom/plugins/@ directory and it will be loaded instead of the one in @plugins/@. h3. Updates + By default you will be prompted to check for updates. If you would like oh-my-zsh to automatically update itself without prompting you, set the following in your ~/.zshrc @DISABLE_UPDATE_PROMPT=true@ From 79847ad77d1613fa823b2c6e097895b3b5193074 Mon Sep 17 00:00:00 2001 From: Dr Nic Williams Date: Wed, 2 May 2012 10:32:30 -0700 Subject: [PATCH 18/42] added 'gcl'for 'git config --list'; and gd for 'git diff' --- plugins/git/git.plugin.zsh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/plugins/git/git.plugin.zsh b/plugins/git/git.plugin.zsh index e1d682508..340485104 100644 --- a/plugins/git/git.plugin.zsh +++ b/plugins/git/git.plugin.zsh @@ -9,6 +9,7 @@ alias gup='git fetch && git rebase' compdef _git gup=git-fetch alias gp='git push' compdef _git gp=git-push +alias gd='git diff' gdv() { git diff -w "$@" | view - } compdef _git gdv=git-diff alias gc='git commit -v' @@ -24,6 +25,7 @@ alias gba='git branch -a' compdef _git gba=git-branch alias gcount='git shortlog -sn' compdef gcount=git +alias gcl='git config --list' alias gcp='git cherry-pick' compdef _git gcp=git-cherry-pick alias glg='git log --stat --max-count=5' From ce4431a160350e4d2d384251a9471cfed493b834 Mon Sep 17 00:00:00 2001 From: Kir Shatrov Date: Mon, 4 Jun 2012 11:50:42 +0300 Subject: [PATCH 19/42] Added spin to bundled_commands (Bundler plugin) --- plugins/bundler/bundler.plugin.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index 2b80b76e6..7d2d1dcfd 100644 --- a/plugins/bundler/bundler.plugin.zsh +++ b/plugins/bundler/bundler.plugin.zsh @@ -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 middleman nanoc rackup rainbows rails rake rspec ruby shotgun spec spork thin thor unicorn unicorn_rails) +bundled_commands=(annotate cap capify cucumber ey foreman guard middleman nanoc rackup rainbows rails rake rspec ruby shotgun spec spin spork thin thor unicorn unicorn_rails) ## Functions From 18cb11903f8208403a0ba5a8f2ece1a0bd4ef9a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20M-B?= Date: Wed, 27 Jun 2012 00:12:21 +0200 Subject: [PATCH 20/42] Comment l alias --- lib/aliases.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/aliases.zsh b/lib/aliases.zsh index 0555be264..d33d71cf0 100644 --- a/lib/aliases.zsh +++ b/lib/aliases.zsh @@ -16,7 +16,7 @@ alias history='fc -l 1' # List direcory contents alias lsa='ls -lah' -alias l='ls -la' +#alias l='ls -la' alias ll='ls -l' alias sl=ls # often screw this up From 0b2da8f11b2e84a73f3fbe019a086da28ae6d2a3 Mon Sep 17 00:00:00 2001 From: Justin Caratzas Date: Wed, 11 Jul 2012 23:40:12 -0400 Subject: [PATCH 21/42] Add very basic virtualenv plugin checks for $VIRTUAL_ENV and provides to basename in a function for the prompt. --- plugins/virtualenv/virtualenv.plugin.zsh | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 plugins/virtualenv/virtualenv.plugin.zsh diff --git a/plugins/virtualenv/virtualenv.plugin.zsh b/plugins/virtualenv/virtualenv.plugin.zsh new file mode 100644 index 000000000..e8458389f --- /dev/null +++ b/plugins/virtualenv/virtualenv.plugin.zsh @@ -0,0 +1,9 @@ +function virtualenv_prompt_info(){ + local virtualenv_path="$VIRTUAL_ENV" + if [[ -n $virtualenv_path ]]; then + local virtualenv_name=`basename $virtualenv_path` + printf "%s[%s] " "%{${fg[yellow]}%}" $virtualenv_name + fi +} + +export VIRTUAL_ENV_DISABLE_PROMPT=1 From 5001412f6d127d8360ea8e0d775e7184aae2091d Mon Sep 17 00:00:00 2001 From: Bob Maerten Date: Thu, 12 Jul 2012 14:19:10 +0300 Subject: [PATCH 22/42] vagrant uses 'ssh-config' command, not 'ssh_config' --- plugins/vagrant/_vagrant | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/vagrant/_vagrant b/plugins/vagrant/_vagrant index 483b29c53..1eed7f988 100644 --- a/plugins/vagrant/_vagrant +++ b/plugins/vagrant/_vagrant @@ -15,7 +15,7 @@ _1st_arguments=( 'reload:Reload the vagrant environment' 'resume:Resumes a suspend vagrant environment' 'ssh:SSH into the currently running environment' - 'ssh_config:outputs .ssh/config valid syntax for connecting to this environment via ssh.' + 'ssh-config:outputs .ssh/config valid syntax for connecting to this environment via ssh.' 'status:Shows the status of the current Vagrant environment.' 'suspend:Suspends the currently running vagrant environment' 'up:Creates the vagrant environment' From 3fea7c3b278ccf73421cbdcc61a1c1dd6d4a0a70 Mon Sep 17 00:00:00 2001 From: Andrew Vit Date: Sun, 6 Nov 2011 04:07:16 -0800 Subject: [PATCH 23/42] Added avit theme --- themes/avit.zsh-theme | 120 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 themes/avit.zsh-theme diff --git a/themes/avit.zsh-theme b/themes/avit.zsh-theme new file mode 100644 index 000000000..51f5e375a --- /dev/null +++ b/themes/avit.zsh-theme @@ -0,0 +1,120 @@ +# +# Author:: Andrew Vit () +# +# AVIT ZSH Theme +# +# Copyright 2011, Andrew Vit +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +PROMPT=' +$(_user_host)${_current_dir} $(git_prompt_info) $(_ruby_version) +▶ ' + +PROMPT2='%{$fg[grey]%}◀%{$reset_color%} ' + +RPROMPT='$(_vi_status)%{$(echotc UP 1)%}$(_git_time_since_commit) $(git_prompt_status) ${_return_status}%{$(echotc DO 1)%}' + +local _current_dir="%{$fg[blue]%}%3~%{$reset_color%} " +local _return_status="%{$fg[red]%}%(?..⍉)%{$reset_color%}" +local _hist_no="%{$fg[grey]%}%h%{$reset_color%}" + +function _user_host() { + if [[ -n $SSH_CONNECTION ]]; then + me="%n@%m" + elif [[ $LOGNAME != $USER ]]; then + me="%n" + fi + if [[ -n $me ]]; then + echo "%{$fg[cyan]%}$me%{$reset_color%}:" + fi +} + +function _vi_status() { + if {echo $fpath | grep -q "plugins/vi-mode"}; then + echo "$(vi_mode_prompt_info)" + fi +} + +function _ruby_version() { + if {echo $fpath | grep -q "plugins/rvm"}; then + echo "%{$fg[grey]%}$(rvm_prompt_info)%{$reset_color%}" + fi +} + +# Determine the time since last commit. If branch is clean, +# use a neutral color, otherwise colors will vary according to time. +function _git_time_since_commit() { + if git rev-parse --git-dir > /dev/null 2>&1; then + # Only proceed if there is actually a commit. + if [[ $(git log 2>&1 > /dev/null | grep -c "^fatal: bad default revision") == 0 ]]; then + # Get the last commit. + last_commit=$(git log --pretty=format:'%at' -1 2> /dev/null) + now=$(date +%s) + seconds_since_last_commit=$((now-last_commit)) + + # Totals + minutes=$((seconds_since_last_commit / 60)) + hours=$((seconds_since_last_commit/3600)) + + # Sub-hours and sub-minutes + days=$((seconds_since_last_commit / 86400)) + sub_hours=$((hours % 24)) + sub_minutes=$((minutes % 60)) + + if [ $hours -gt 24 ]; then + commit_age="${days}d" + elif [ $minutes -gt 60 ]; then + commit_age="${sub_hours}h${sub_minutes}m" + else + commit_age="${minutes}m" + fi + + color=$ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL + echo "$color$commit_age%{$reset_color%}" + fi + fi +} + +if [[ $USER == "root" ]]; then + CARETCOLOR="red" +else + CARETCOLOR="white" +fi + +MODE_INDICATOR="%{$fg_bold[yellow]%}❮%{$reset_color%}%{$fg[yellow]%}❮❮%{$reset_color%}" + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[green]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" + +ZSH_THEME_GIT_PROMPT_DIRTY=" %{$fg[red]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN=" %{$fg[green]%}✔%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[green]%}✚ " +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[cyan]%}§ " +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[grey]%}◒ " + +# Colors vary depending on time lapsed. +ZSH_THEME_GIT_TIME_SINCE_COMMIT_SHORT="%{$fg[green]%}" +ZSH_THEME_GIT_TIME_SHORT_COMMIT_MEDIUM="%{$fg[yellow]%}" +ZSH_THEME_GIT_TIME_SINCE_COMMIT_LONG="%{$fg[red]%}" +ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL="%{$fg[grey]%}" + +# LS colors, made with http://geoff.greer.fm/lscolors/ +export LSCOLORS="exfxcxdxbxegedabagacad" +export LS_COLORS='di=34;40:ln=35;40:so=32;40:pi=33;40:ex=31;40:bd=34;46:cd=34;43:su=0;41:sg=0;46:tw=0;42:ow=0;43:' +export GREP_COLOR='1;33' + From 9ee4b9c8f7b21db2c20500cacd72471e8cdbf6a5 Mon Sep 17 00:00:00 2001 From: oemer Date: Thu, 26 Jul 2012 16:05:03 +0200 Subject: [PATCH 24/42] Added go completion script. Taken from /misc/zsh/go --- plugins/go/go.plugin.zsh | 151 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 151 insertions(+) create mode 100644 plugins/go/go.plugin.zsh diff --git a/plugins/go/go.plugin.zsh b/plugins/go/go.plugin.zsh new file mode 100644 index 000000000..23afa9656 --- /dev/null +++ b/plugins/go/go.plugin.zsh @@ -0,0 +1,151 @@ +# install in /etc/zsh/zshrc or your personal .zshrc + +# gc +prefixes=(5 6 8) +for p in $prefixes; do + compctl -g "*.${p}" ${p}l + compctl -g "*.go" ${p}g +done + +# standard go tools +compctl -g "*.go" gofmt + +# gccgo +compctl -g "*.go" gccgo + +# go tool +__go_tool_complete() { + typeset -a commands build_flags + commands+=( + 'build[compile packages and dependencies]' + 'clean[remove object files]' + 'doc[run godoc on package sources]' + 'fix[run go tool fix on packages]' + 'fmt[run gofmt on package sources]' + 'get[download and install packages and dependencies]' + 'help[display help]' + 'install[compile and install packages and dependencies]' + 'list[list packages]' + 'run[compile and run Go program]' + 'test[test packages]' + 'tool[run specified go tool]' + 'version[print Go version]' + 'vet[run go tool vet on packages]' + ) + if (( CURRENT == 2 )); then + # explain go commands + _values 'go tool commands' ${commands[@]} + return + fi + build_flags=( + '-a[force reinstallation of packages that are already up-to-date]' + '-n[print the commands but do not run them]' + "-p[number of parallel builds]:number" + '-x[print the commands]' + "-work[print temporary directory name and keep it]" + "-gcflags[flags for 5g/6g/8g]:flags" + "-ldflags[flags for 5l/6l/8l]:flags" + "-gccgoflags[flags for gccgo]:flags" + ) + __go_list() { + local expl importpaths + declare -a importpaths + importpaths=($(go list ${words[$CURRENT]}... 2>/dev/null)) + _wanted importpaths expl 'import paths' compadd "$@" - "${importpaths[@]}" + } + case ${words[2]} in + clean|doc) + _arguments -s -w : '*:importpaths:__go_list' + ;; + fix|fmt|list|vet) + _alternative ':importpaths:__go_list' ':files:_path_files -g "*.go"' + ;; + install) + _arguments -s -w : ${build_flags[@]} \ + "-v[show package names]" \ + '*:importpaths:__go_list' + ;; + get) + _arguments -s -w : \ + ${build_flags[@]} + ;; + build) + _arguments -s -w : \ + ${build_flags[@]} \ + "-v[show package names]" \ + "-o[output file]:file:_files" \ + "*:args:{ _alternative ':importpaths:__go_list' ':files:_path_files -g \"*.go\"' }" + ;; + test) + _arguments -s -w : \ + ${build_flags[@]} \ + "-c[do not run, compile the test binary]" \ + "-i[do not run, install dependencies]" \ + "-v[print test output]" \ + "-x[print the commands]" \ + "-short[use short mode]" \ + "-parallel[number of parallel tests]:number" \ + "-cpu[values of GOMAXPROCS to use]:number list" \ + "-run[run tests and examples matching regexp]:regexp" \ + "-bench[run benchmarks matching regexp]:regexp" \ + "-benchtime[run each benchmark during n seconds]:duration" \ + "-timeout[kill test after that duration]:duration" \ + "-cpuprofile[write CPU profile to file]:file:_files" \ + "-memprofile[write heap profile to file]:file:_files" \ + "-memprofilerate[set heap profiling rate]:number" \ + "*:args:{ _alternative ':importpaths:__go_list' ':files:_path_files -g \"*.go\"' }" + ;; + help) + _values "${commands[@]}" \ + 'gopath[GOPATH environment variable]' \ + 'importpath[description of import paths]' \ + 'remote[remote import path syntax]' \ + 'testflag[description of testing flags]' \ + 'testfunc[description of testing functions]' + ;; + run) + _arguments -s -w : \ + ${build_flags[@]} \ + '*:file:_path_files -g "*.go"' + ;; + tool) + if (( CURRENT == 3 )); then + _values "go tool" $(go tool) + return + fi + case ${words[3]} in + [568]g) + _arguments -s -w : \ + '-I[search for packages in DIR]:includes:_path_files -/' \ + '-L[show full path in file:line prints]' \ + '-S[print the assembly language]' \ + '-V[print the compiler version]' \ + '-e[no limit on number of errors printed]' \ + '-h[panic on an error]' \ + '-l[disable inlining]' \ + '-m[print optimization decisions]' \ + '-o[file specify output file]:file' \ + '-p[assumed import path for this code]:importpath' \ + '-u[disable package unsafe]' \ + "*:file:_files -g '*.go'" + ;; + [568]l) + local O=${words[3]%l} + _arguments -s -w : \ + '-o[file specify output file]:file' \ + '-L[search for packages in DIR]:includes:_path_files -/' \ + "*:file:_files -g '*.[ao$O]'" + ;; + dist) + _values "dist tool" banner bootstrap clean env install version + ;; + *) + # use files by default + _files + ;; + esac + ;; + esac +} + +compdef __go_tool_complete go From 682961e9304c6bf7bd500d741b01640682d35ac9 Mon Sep 17 00:00:00 2001 From: Morgan Larosa Date: Sat, 28 Jul 2012 08:25:15 +1000 Subject: [PATCH 25/42] Add a configuration option to disable autocorrect --- lib/correction.zsh | 22 +++++++++++++--------- templates/zshrc.zsh-template | 3 +++ 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/lib/correction.zsh b/lib/correction.zsh index fc60dcdbd..07fbcfd36 100644 --- a/lib/correction.zsh +++ b/lib/correction.zsh @@ -1,10 +1,14 @@ -setopt correct_all +if [[ "$DISABLE_CORRECTION" == "true" ]]; then + return +else + setopt correct_all -alias man='nocorrect man' -alias mv='nocorrect mv' -alias mysql='nocorrect mysql' -alias mkdir='nocorrect mkdir' -alias gist='nocorrect gist' -alias heroku='nocorrect heroku' -alias ebuild='nocorrect ebuild' -alias hpodder='nocorrect hpodder' + alias man='nocorrect man' + alias mv='nocorrect mv' + alias mysql='nocorrect mysql' + alias mkdir='nocorrect mkdir' + alias gist='nocorrect gist' + alias heroku='nocorrect heroku' + alias ebuild='nocorrect ebuild' + alias hpodder='nocorrect hpodder' +fi diff --git a/templates/zshrc.zsh-template b/templates/zshrc.zsh-template index e52553241..cb9c5855e 100644 --- a/templates/zshrc.zsh-template +++ b/templates/zshrc.zsh-template @@ -23,6 +23,9 @@ ZSH_THEME="robbyrussell" # Uncomment following line if you want to disable autosetting terminal title. # DISABLE_AUTO_TITLE="true" +# Uncomment following line if you want to disable command autocorrection +# DISABLE_CORRECTION="true" + # Uncomment following line if you want red dots to be displayed while waiting for completion # COMPLETION_WAITING_DOTS="true" From 55f09f89c8602efa6545411448e377aa87f64e7b Mon Sep 17 00:00:00 2001 From: Artie Kh Date: Thu, 13 Dec 2012 19:09:28 +0200 Subject: [PATCH 26/42] Added `verisions` option for `homebrew` completion --- plugins/brew/_brew | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/brew/_brew b/plugins/brew/_brew index 1dcf0a4bf..e43ba2900 100644 --- a/plugins/brew/_brew +++ b/plugins/brew/_brew @@ -35,6 +35,7 @@ _1st_arguments=( 'update:freshen up links' 'upgrade:upgrade outdated formulae' 'uses:show formulas which depend on a formula' + 'versions:show all available formula versions' ) local expl @@ -71,7 +72,7 @@ case "$words[1]" in _brew_installed_formulae _wanted installed_formulae expl 'installed formulae' compadd -a installed_formulae fi ;; - install|home|homepage|log|info|abv|uses|cat|deps|edit|options) + install|home|homepage|log|info|abv|uses|cat|deps|edit|options|versions) _brew_all_formulae _wanted formulae expl 'all formulae' compadd -a formulae ;; remove|rm|uninstall|unlink|cleanup|link|ln) From 6ce08acb27f14a2e73fdbd4c92f258a7e6899f64 Mon Sep 17 00:00:00 2001 From: Artie Kh Date: Sun, 30 Dec 2012 21:18:12 +0200 Subject: [PATCH 27/42] added support for subversion 1.7 for svn plugin --- plugins/svn/svn.plugin.zsh | 110 +++++++++++++++++++++---------------- 1 file changed, 62 insertions(+), 48 deletions(-) diff --git a/plugins/svn/svn.plugin.zsh b/plugins/svn/svn.plugin.zsh index e38e8920b..4f008ba4e 100644 --- a/plugins/svn/svn.plugin.zsh +++ b/plugins/svn/svn.plugin.zsh @@ -1,62 +1,76 @@ - -function svn_prompt_info { - if [ $(in_svn) ]; then - if [ "x$SVN_SHOW_BRANCH" = "xtrue" ]; then - unset SVN_SHOW_BRANCH - _DISPLAY=$(svn_get_branch_name) - else - _DISPLAY=$(svn_get_repo_name) - fi - echo "$ZSH_PROMPT_BASE_COLOR$ZSH_THEME_SVN_PROMPT_PREFIX\ -$ZSH_THEME_REPO_NAME_COLOR$_DISPLAY$ZSH_PROMPT_BASE_COLOR$ZSH_THEME_SVN_PROMPT_SUFFIX$ZSH_PROMPT_BASE_COLOR$(svn_dirty)$ZSH_PROMPT_BASE_COLOR" - unset _DISPLAY +# vim:ft=zsh ts=2 sw=2 sts=2 +# +function svn_prompt_info() { + if in_svn; then + if [ "x$SVN_SHOW_BRANCH" = "xtrue" ]; then + unset SVN_SHOW_BRANCH + _DISPLAY=$(svn_get_branch_name) + else + _DISPLAY=$(svn_get_repo_name) fi + echo "$ZSH_PROMPT_BASE_COLOR$ZSH_THEME_SVN_PROMPT_PREFIX\ +$ZSH_THEME_REPO_NAME_COLOR$_DISPLAY$ZSH_PROMPT_BASE_COLOR$ZSH_THEME_SVN_PROMPT_SUFFIX$ZSH_PROMPT_BASE_COLOR$(svn_dirty)$ZSH_PROMPT_BASE_COLOR" + unset _DISPLAY + fi } function in_svn() { - if [[ -d .svn ]]; then - echo 1 - fi + if $(svn info >/dev/null 2>&1); then + return 0 + fi + return 1 } -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" - fi +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" + fi } -function svn_get_branch_name { - _DISPLAY=$(svn info 2> /dev/null | awk -F/ '/^URL:/ { for (i=0; i<=NF; i++) { if ($i == "branches" || $i == "tags" ) { print $(i+1); break }; if ($i == "trunk") { print $i; break } } }') - if [ "x$_DISPLAY" = "x" ]; then - svn_get_repo_name +function svn_get_branch_name() { + _DISPLAY=$( + svn info 2> /dev/null | \ + awk -F/ \ + '/^URL:/ { \ + for (i=0; i<=NF; i++) { \ + if ($i == "branches" || $i == "tags" ) { \ + print $(i+1); \ + break;\ + }; \ + if ($i == "trunk") { print $i; break; } \ + } \ + }' + ) + + if [ "x$_DISPLAY" = "x" ]; then + svn_get_repo_name + else + echo $_DISPLAY + fi + unset _DISPLAY +} + +function svn_get_rev_nr() { + if in_svn; then + svn info 2> /dev/null | sed -n 's/Revision:\ //p' + fi +} + +function svn_dirty_choose() { + if in_svn; then + root=`svn info 2> /dev/null | sed -n 's/^Working Copy Root Path: //p'` + if $(svn status $root 2> /dev/null | grep -Eq '^\s*[ACDIM!?L]'); then + # Grep exits with 0 when "One or more lines were selected", return "dirty". + echo $1 else - echo $_DISPLAY + # Otherwise, no lines were found, or an error occurred. Return clean. + echo $2 fi - unset _DISPLAY + fi } -function svn_get_rev_nr { - if [ $(in_svn) ]; then - svn info 2> /dev/null | sed -n s/Revision:\ //p - fi -} - -function svn_dirty_choose { - if [ $(in_svn) ]; then - svn status 2> /dev/null | grep -Eq '^\s*[ACDIM!?L]' - if [ $pipestatus[-1] -eq 0 ]; then - # Grep exits with 0 when "One or more lines were selected", return "dirty". - echo $1 - else - # Otherwise, no lines were found, or an error occurred. Return clean. - echo $2 - fi - fi -} - -function svn_dirty { - svn_dirty_choose $ZSH_THEME_SVN_PROMPT_DIRTY $ZSH_THEME_SVN_PROMPT_CLEAN +function svn_dirty() { + svn_dirty_choose $ZSH_THEME_SVN_PROMPT_DIRTY $ZSH_THEME_SVN_PROMPT_CLEAN } From 4c91f6d13e32d7389cae299d96f6778451a45fc8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Serdar=20Dalg=C4=B1=C3=A7?= Date: Fri, 25 Jan 2013 12:58:55 +0200 Subject: [PATCH 28/42] Add autoenv plugin, which adopts using Kenneth Reitz's autoenv into oh-my-zsh. --- lib/directories.zsh | 3 +++ plugins/autoenv/autoenv.plugin.zsh | 18 ++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 plugins/autoenv/autoenv.plugin.zsh diff --git a/lib/directories.zsh b/lib/directories.zsh index 6c743e40e..93c6c176f 100644 --- a/lib/directories.zsh +++ b/lib/directories.zsh @@ -29,6 +29,9 @@ cd () { cd ../../../.. elif [[ "x$*" == "x......" ]]; then cd ../../../../.. + elif [ -d ~/.autoenv ]; then + source ~/.autoenv/activate.sh + autoenv_cd "$@" else builtin cd "$@" fi diff --git a/plugins/autoenv/autoenv.plugin.zsh b/plugins/autoenv/autoenv.plugin.zsh new file mode 100644 index 000000000..ca5666979 --- /dev/null +++ b/plugins/autoenv/autoenv.plugin.zsh @@ -0,0 +1,18 @@ +# The use_env call below is a reusable command to activate/create a new Python +# virtualenv, requiring only a single declarative line of code in your .env files. +# It only performs an action if the requested virtualenv is not the current one. +use_env() { + typeset venv + venv="$1" + if [[ "${VIRTUAL_ENV:t}" != "$venv" ]]; then + if workon | grep -q "$venv"; then + workon "$venv" + else + echo -n "Create virtualenv $venv now? (Yn) " + read answer + if [[ "$answer" == "Y" ]]; then + mkvirtualenv "$venv" + fi + fi + fi +} From 2e213b9b8f96722d4978a80ae53849fec437eb10 Mon Sep 17 00:00:00 2001 From: Yoav Weiss Date: Sun, 27 Jan 2013 14:50:33 +0100 Subject: [PATCH 29/42] Faster dirty git status check (using git diff) --- lib/git.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/git.zsh b/lib/git.zsh index 3e14695bd..d818c742d 100644 --- a/lib/git.zsh +++ b/lib/git.zsh @@ -13,7 +13,7 @@ parse_git_dirty() { if [[ $POST_1_7_2_GIT -gt 0 ]]; then SUBMODULE_SYNTAX="--ignore-submodules=dirty" fi - if [[ -n $(git status -s ${SUBMODULE_SYNTAX} 2> /dev/null) ]]; then + if [[ -n $(git diff --ignore-submodules HEAD 2> /dev/null) ]]; then echo "$ZSH_THEME_GIT_PROMPT_DIRTY" else echo "$ZSH_THEME_GIT_PROMPT_CLEAN" From 8a463b6df7048c8507f95344c3dc5d7a1355c48d Mon Sep 17 00:00:00 2001 From: Alex Date: Wed, 30 Jan 2013 00:44:42 -0500 Subject: [PATCH 30/42] Better custom theme loading oh-my-zsh.sh now also checks for $ZSH_CUSTOM/themes/$ZSH_THEME.zsh-theme when attempting to load a theme. This way custom themes can be a bit more organized in the 'custom' dir --- oh-my-zsh.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/oh-my-zsh.sh b/oh-my-zsh.sh index 689a79fef..2e1d3b477 100644 --- a/oh-my-zsh.sh +++ b/oh-my-zsh.sh @@ -73,6 +73,9 @@ else if [ -f "$ZSH_CUSTOM/$ZSH_THEME.zsh-theme" ] then source "$ZSH_CUSTOM/$ZSH_THEME.zsh-theme" + elif [ -f "$ZSH_CUSTOM/themes/$ZSH_THEME.zsh-theme" ] + then + source "$ZSH_CUSTOM/themes/$ZSH_THEME.zsh-theme" else source "$ZSH/themes/$ZSH_THEME.zsh-theme" fi From 171a76a3c45ac031262e4eb7eaa38cc020a59812 Mon Sep 17 00:00:00 2001 From: Yoav Weiss Date: Wed, 30 Jan 2013 09:32:01 +0100 Subject: [PATCH 31/42] Closer to original status command, using SUBMODULE SYNTAX --- lib/git.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/git.zsh b/lib/git.zsh index d818c742d..ccc5d3128 100644 --- a/lib/git.zsh +++ b/lib/git.zsh @@ -13,7 +13,7 @@ parse_git_dirty() { if [[ $POST_1_7_2_GIT -gt 0 ]]; then SUBMODULE_SYNTAX="--ignore-submodules=dirty" fi - if [[ -n $(git diff --ignore-submodules HEAD 2> /dev/null) ]]; then + if [[ -n $(git diff ${SUBMODULE_SYNTAX} 2> /dev/null) ]]; then echo "$ZSH_THEME_GIT_PROMPT_DIRTY" else echo "$ZSH_THEME_GIT_PROMPT_CLEAN" From ef8e3a67f293ab3d4dfc67da5af321de7c019ca4 Mon Sep 17 00:00:00 2001 From: Matt Guindin Date: Wed, 30 Jan 2013 20:46:08 -0500 Subject: [PATCH 32/42] [agnoster] modifying theme to show dot for dirty files and plus for staged files in git repos --- themes/agnoster.zsh-theme | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/themes/agnoster.zsh-theme b/themes/agnoster.zsh-theme index c3107c06c..3ca5385be 100644 --- a/themes/agnoster.zsh-theme +++ b/themes/agnoster.zsh-theme @@ -71,7 +71,6 @@ prompt_context() { prompt_git() { local ref dirty if $(git rev-parse --is-inside-work-tree >/dev/null 2>&1); then - ZSH_THEME_GIT_PROMPT_DIRTY='±' dirty=$(parse_git_dirty) ref=$(git symbolic-ref HEAD 2> /dev/null) || ref="➦ $(git show-ref --head -s --abbrev |head -n1 2> /dev/null)" if [[ -n $dirty ]]; then @@ -79,7 +78,19 @@ prompt_git() { else prompt_segment green black fi - echo -n "${ref/refs\/heads\//⭠ }$dirty" + + setopt promptsubst + autoload -Uz vcs_info + + zstyle ':vcs_info:*' enable git + zstyle ':vcs_info:*' get-revision true + zstyle ':vcs_info:*' check-for-changes true + zstyle ':vcs_info:*' stagedstr '✚' + zstyle ':vcs_info:git:*' unstagedstr '●' + zstyle ':vcs_info:*' formats ' %u%c' + zstyle ':vcs_info:*' actionformats '%u%c' + vcs_info + echo -n "${ref/refs\/heads\//⭠ }${vcs_info_msg_0_}" fi } From 11576dd40bfb78379724a9519081365bbd41d7a9 Mon Sep 17 00:00:00 2001 From: Yoav Weiss Date: Wed, 13 Feb 2013 11:28:13 +0100 Subject: [PATCH 33/42] Fixed dirty check to include files added to index --- lib/git.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/git.zsh b/lib/git.zsh index ccc5d3128..fde30e2b9 100644 --- a/lib/git.zsh +++ b/lib/git.zsh @@ -13,7 +13,7 @@ parse_git_dirty() { if [[ $POST_1_7_2_GIT -gt 0 ]]; then SUBMODULE_SYNTAX="--ignore-submodules=dirty" fi - if [[ -n $(git diff ${SUBMODULE_SYNTAX} 2> /dev/null) ]]; then + if [[ -n $(git diff ${SUBMODULE_SYNTAX} HEAD 2> /dev/null) ]]; then echo "$ZSH_THEME_GIT_PROMPT_DIRTY" else echo "$ZSH_THEME_GIT_PROMPT_CLEAN" From 9245a3086843c20ef1880f6d26720db73d5c724d Mon Sep 17 00:00:00 2001 From: Yoav Weiss Date: Wed, 13 Feb 2013 17:14:43 +0100 Subject: [PATCH 34/42] Did a full circle and went back to # On branch master # Changes to be committed: # (use "git reset HEAD ..." to unstage) # # modified: git.zsh #, ignoring untracked files, which seems to be the primary cause for slowness --- lib/git.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/git.zsh b/lib/git.zsh index fde30e2b9..ccd329665 100644 --- a/lib/git.zsh +++ b/lib/git.zsh @@ -13,7 +13,7 @@ parse_git_dirty() { if [[ $POST_1_7_2_GIT -gt 0 ]]; then SUBMODULE_SYNTAX="--ignore-submodules=dirty" fi - if [[ -n $(git diff ${SUBMODULE_SYNTAX} HEAD 2> /dev/null) ]]; then + if [[ -n $(git status -s ${SUBMODULE_SYNTAX} -uno 2> /dev/null) ]]; then echo "$ZSH_THEME_GIT_PROMPT_DIRTY" else echo "$ZSH_THEME_GIT_PROMPT_CLEAN" From 014ed1f0e5c85a10ab7538160e2d3421ab3dbf7e Mon Sep 17 00:00:00 2001 From: Heiko Reese Date: Thu, 21 Feb 2013 02:46:20 +0100 Subject: [PATCH 35/42] Disable ssh-agent support if another ssh-agent is already running. --- plugins/gpg-agent/gpg-agent.plugin.zsh | 35 +++++++++++++++----------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/plugins/gpg-agent/gpg-agent.plugin.zsh b/plugins/gpg-agent/gpg-agent.plugin.zsh index 8cc71fd57..63c433413 100644 --- a/plugins/gpg-agent/gpg-agent.plugin.zsh +++ b/plugins/gpg-agent/gpg-agent.plugin.zsh @@ -1,26 +1,31 @@ -# Based on ssh-agent code - local GPG_ENV=$HOME/.gnupg/gpg-agent.env -function start_agent { - /usr/bin/env gpg-agent --daemon --enable-ssh-support --write-env-file ${GPG_ENV} > /dev/null - chmod 600 ${GPG_ENV} - . ${GPG_ENV} > /dev/null +function start_agent_nossh { + eval $(/usr/bin/env gpg-agent --daemon --write-env-file ${GPG_ENV}) > /dev/null + export GPG_AGENT_INFO } -# Source GPG agent settings, if applicable +function start_agent_withssh { + eval $(/usr/bin/env gpg-agent --daemon --enable-ssh-support --write-env-file ${GPG_ENV}) > /dev/null + export GPG_AGENT_INFO + export SSH_AUTH_SOCK + export SSH_AGENT_PID +} + +# make sure all created files are u=rw only +umask 177 + +# source settings of old agent, if applicable if [ -f "${GPG_ENV}" ]; then . ${GPG_ENV} > /dev/null - ps -ef | grep ${SSH_AGENT_PID} | grep gpg-agent > /dev/null || { - start_agent; - } -else - start_agent; fi -export GPG_AGENT_INFO -export SSH_AUTH_SOCK -export SSH_AGENT_PID +# check for existing ssh-agent +if ssh-add -l > /dev/null 2> /dev/null; then + start_agent_nossh; +else + start_agent_withssh; +fi GPG_TTY=$(tty) export GPG_TTY From 174e09ca8dec0e2c393718505e9fc0cfc0996e21 Mon Sep 17 00:00:00 2001 From: Heiko Reese Date: Thu, 21 Feb 2013 03:40:32 +0100 Subject: [PATCH 36/42] Added --quiet to suppress message about gpg-agent already running. --- plugins/gpg-agent/gpg-agent.plugin.zsh | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/plugins/gpg-agent/gpg-agent.plugin.zsh b/plugins/gpg-agent/gpg-agent.plugin.zsh index 63c433413..109af44c8 100644 --- a/plugins/gpg-agent/gpg-agent.plugin.zsh +++ b/plugins/gpg-agent/gpg-agent.plugin.zsh @@ -1,20 +1,19 @@ local GPG_ENV=$HOME/.gnupg/gpg-agent.env function start_agent_nossh { - eval $(/usr/bin/env gpg-agent --daemon --write-env-file ${GPG_ENV}) > /dev/null + eval $(/usr/bin/env gpg-agent --quiet --daemon --write-env-file ${GPG_ENV} 2> /dev/null) + chmod 600 ${GPG_ENV} export GPG_AGENT_INFO } function start_agent_withssh { - eval $(/usr/bin/env gpg-agent --daemon --enable-ssh-support --write-env-file ${GPG_ENV}) > /dev/null + eval $(/usr/bin/env gpg-agent --quiet --daemon --enable-ssh-support --write-env-file ${GPG_ENV} 2> /dev/null) + chmod 600 ${GPG_ENV} export GPG_AGENT_INFO export SSH_AUTH_SOCK export SSH_AGENT_PID } -# make sure all created files are u=rw only -umask 177 - # source settings of old agent, if applicable if [ -f "${GPG_ENV}" ]; then . ${GPG_ENV} > /dev/null From f4b12321a9e4d5e0fa208b48a4515156865a33bb Mon Sep 17 00:00:00 2001 From: Alexey Poimtsev Date: Thu, 28 Feb 2013 00:26:03 +0400 Subject: [PATCH 37/42] Added rails4 plugin --- plugins/rails4/rails4.plugin.zsh | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 plugins/rails4/rails4.plugin.zsh diff --git a/plugins/rails4/rails4.plugin.zsh b/plugins/rails4/rails4.plugin.zsh new file mode 100644 index 000000000..b6765365e --- /dev/null +++ b/plugins/rails4/rails4.plugin.zsh @@ -0,0 +1,29 @@ +# Rails 4 aliases + +function _rails_command () { + if [ -e "script/server" ]; then + ruby script/$@ + elif [ -e "script/rails" ]; then + ruby script/rails $@ + else + ruby bin/rails $@ + fi +} + +alias rc='_rails_command console' +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' +alias rsd='_rails_command server --debugger' +alias devlog='tail -f log/development.log' +alias rdm='rake db:migrate' +alias rdr='rake db:rollback' +alias rds='rake db:seed' +alias rlc='rake log:clear' +alias rn='rake notes' +alias rr='rake routes' \ No newline at end of file From 8cd1b21b931c0f7a310fc32c43dd3288203ecd40 Mon Sep 17 00:00:00 2001 From: Alexey Poimtsev Date: Wed, 24 Apr 2013 01:40:09 +0400 Subject: [PATCH 38/42] Update rails4.plugin.zsh added alias for rake db:create --- plugins/rails4/rails4.plugin.zsh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/rails4/rails4.plugin.zsh b/plugins/rails4/rails4.plugin.zsh index b6765365e..fce827ee3 100644 --- a/plugins/rails4/rails4.plugin.zsh +++ b/plugins/rails4/rails4.plugin.zsh @@ -22,8 +22,9 @@ alias rs='_rails_command server' alias rsd='_rails_command server --debugger' alias devlog='tail -f log/development.log' alias rdm='rake db:migrate' +alias rdc='rake db:create' alias rdr='rake db:rollback' alias rds='rake db:seed' alias rlc='rake log:clear' alias rn='rake notes' -alias rr='rake routes' \ No newline at end of file +alias rr='rake routes' From dd6247057ea9b8e238aea5e16446dee089f11f3e Mon Sep 17 00:00:00 2001 From: Robby Russell Date: Tue, 23 Apr 2013 20:52:18 -0700 Subject: [PATCH 39/42] Updating the README file --- README.textile | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/README.textile b/README.textile index 0a4545bac..46e69691e 100644 --- a/README.textile +++ b/README.textile @@ -1,5 +1,4 @@ -A handful of functions, auto-complete helpers, and stuff that makes you shout... - +oh-my-zsh is an open source, community-driven framework for managing your ZSH configuration. It comes bundled with a ton of helpful functions, helpers, plugins, themes, and few things that make you shout... bq. "OH MY ZSHELL!" @@ -76,9 +75,7 @@ h3. (Don't) Send us your theme! (for now) -I'm hoping to collect a bunch of themes for our command prompts. You can see existing ones in the @themes/@ directory.- -We have enough themes for the time being. Please fork the project and add on in there, you can let people know how to grab it from there. - - +We have enough themes for the time being. Please fork the project and add on in there, you can let people know how to grab it from there. h2. Contributors From 17a092b0ffa1ecf4ef9f727054a414e26f9e1edd Mon Sep 17 00:00:00 2001 From: Kaiwen Xu Date: Mon, 29 Apr 2013 03:19:31 -0400 Subject: [PATCH 40/42] Change sublime text path select priority on mac. User changed symbolic link for sublime binary is now top priority, since this allows users to actually specify which version of sublime they want to use. Sublime text 2 binary has higher priority over sublime text (3) binary, since sublime text 2 is considered more stable. --- plugins/sublime/sublime.plugin.zsh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/plugins/sublime/sublime.plugin.zsh b/plugins/sublime/sublime.plugin.zsh index e74695de0..82faf87c9 100755 --- a/plugins/sublime/sublime.plugin.zsh +++ b/plugins/sublime/sublime.plugin.zsh @@ -2,10 +2,11 @@ local _sublime_darwin_paths > /dev/null 2>&1 _sublime_darwin_paths=( - "$HOME/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" + "/usr/local/bin/subl" "$HOME/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" - "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" + "$HOME/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" + "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" ) if [[ $('uname') == 'Linux' ]]; then From f28e16a15856baf92163dba8ac6eec1e02cf6c1f Mon Sep 17 00:00:00 2001 From: Lindolfo 'Lorn' Rodrigues Date: Tue, 30 Apr 2013 01:51:09 -0300 Subject: [PATCH 41/42] Cache for fasd --init Using cache technique for faster fasd --init as shown at: https://github.com/clvv/fasdi#install --- plugins/fasd/fasd.plugin.zsh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/plugins/fasd/fasd.plugin.zsh b/plugins/fasd/fasd.plugin.zsh index d42584f1a..8ad43fc23 100644 --- a/plugins/fasd/fasd.plugin.zsh +++ b/plugins/fasd/fasd.plugin.zsh @@ -1,5 +1,10 @@ if [ $commands[fasd] ]; then # check if fasd is installed - eval "$(fasd --init auto)" + fasd_cache="$HOME/.fasd-init-cache" + if [ "$(command -v fasd)" -nt "$fasd_cache" -o ! -s "$fasd_cache" ]; then + fasd --init auto >| "$fasd_cache" + fi + source "$fasd_cache" + unset fasd_cache alias v='f -e vim' alias o='a -e open' fi From 6de78ad2ba8688532b116de8322d7aaecbbcebbe Mon Sep 17 00:00:00 2001 From: bebugz Date: Thu, 9 May 2013 13:12:11 +0400 Subject: [PATCH 42/42] gentoo linux support --- plugins/autojump/autojump.plugin.zsh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/plugins/autojump/autojump.plugin.zsh b/plugins/autojump/autojump.plugin.zsh index 3894ccd2f..f856f2f01 100644 --- a/plugins/autojump/autojump.plugin.zsh +++ b/plugins/autojump/autojump.plugin.zsh @@ -3,6 +3,8 @@ if [ $commands[autojump] ]; then # check if autojump is installed . /usr/share/autojump/autojump.zsh elif [ -f /etc/profile.d/autojump.zsh ]; then # manual installation . /etc/profile.d/autojump.zsh + elif [ -f /etc/profile.d/autojump.sh ]; then # gentoo installation + . /etc/profile.d/autojump.sh elif [ -f $HOME/.autojump/etc/profile.d/autojump.zsh ]; then # manual user-local installation . $HOME/.autojump/etc/profile.d/autojump.zsh elif [ -f /opt/local/etc/profile.d/autojump.zsh ]; then # mac os x with ports