From 5260bfd4eba3787d5d32086b55ed728f3f3ab7f8 Mon Sep 17 00:00:00 2001 From: Gael Pasgrimaud Date: Sun, 27 Nov 2011 15:07:31 +0100 Subject: [PATCH 1/8] allow django-manage completion. http://pypi.python.org/pypi/DjangoDevKit --- plugins/django/django.plugin.zsh | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/django/django.plugin.zsh b/plugins/django/django.plugin.zsh index 1d72a2f2c..0bbd031fe 100644 --- a/plugins/django/django.plugin.zsh +++ b/plugins/django/django.plugin.zsh @@ -220,3 +220,4 @@ _managepy() { compdef _managepy manage.py compdef _managepy django +compdef _managepy django-manage From e43dd05a6a731462c6124598ce2e4d1a9d3a5160 Mon Sep 17 00:00:00 2001 From: Michael Andersen Date: Thu, 29 Dec 2011 01:30:43 +0100 Subject: [PATCH 2/8] Mortal Scumbag Theme --- themes/mortalscumbag.zsh-theme | 58 ++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 themes/mortalscumbag.zsh-theme diff --git a/themes/mortalscumbag.zsh-theme b/themes/mortalscumbag.zsh-theme new file mode 100644 index 000000000..7e25b149f --- /dev/null +++ b/themes/mortalscumbag.zsh-theme @@ -0,0 +1,58 @@ +function my_git_prompt() { + tester=$(git rev-parse --git-dir 2> /dev/null) || return + + INDEX=$(git status --porcelain 2> /dev/null) + STATUS="" + + # is branch ahead? + if $(echo "$(git log origin/$(current_branch)..HEAD 2> /dev/null)" | grep '^commit' &> /dev/null); then + STATUS="$STATUS$ZSH_THEME_GIT_PROMPT_AHEAD" + fi + + # is anything staged? + if $(echo "$INDEX" | grep -E -e '^(D[ M]|[MARC][ MD]) ' &> /dev/null); then + STATUS="$STATUS$ZSH_THEME_GIT_PROMPT_STAGED" + fi + + # is anything unstaged? + if $(echo "$INDEX" | grep -E -e '^[ MARC][MD] ' &> /dev/null); then + STATUS="$STATUS$ZSH_THEME_GIT_PROMPT_UNSTAGED" + fi + + # is anything untracked? + if $(echo "$INDEX" | grep '^?? ' &> /dev/null); then + STATUS="$STATUS$ZSH_THEME_GIT_PROMPT_UNTRACKED" + fi + + # is anything unmerged? + if $(echo "$INDEX" | grep -E -e '^(A[AU]|D[DU]|U[ADU]) ' &> /dev/null); then + STATUS="$STATUS$ZSH_THEME_GIT_PROMPT_UNMERGED" + fi + + if [[ -n $STATUS ]]; then + STATUS=" $STATUS" + fi + + echo "$ZSH_THEME_GIT_PROMPT_PREFIX$(my_current_branch)$STATUS$ZSH_THEME_GIT_PROMPT_SUFFIX" +} + +function my_current_branch() { + echo $(current_branch || echo "(no branch)") +} + +function ssh_connection() { + if [[ -n $SSH_CONNECTION ]]; then + echo "%{$fg_bold[red]%}(ssh) " + fi +} + +PROMPT=$'\n$(ssh_connection)%{$fg_bold[green]%}%n@%m%{$reset_color%}$(my_git_prompt) : %~\n%# ' + +ZSH_THEME_PROMPT_RETURNCODE_PREFIX="%{$fg_bold[red]%}" +ZSH_THEME_GIT_PROMPT_PREFIX=" $fg[white]‹ %{$fg_bold[yellow]%}" +ZSH_THEME_GIT_PROMPT_AHEAD="%{$fg_bold[magenta]%}↑" +ZSH_THEME_GIT_PROMPT_STAGED="%{$fg_bold[green]%}●" +ZSH_THEME_GIT_PROMPT_UNSTAGED="%{$fg_bold[red]%}●" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg_bold[white]%}●" +ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg_bold[red]%}✕" +ZSH_THEME_GIT_PROMPT_SUFFIX=" $fg_bold[white]›%{$reset_color%}" From c04b4abe91b69c058bde8e5968abb759b9168b88 Mon Sep 17 00:00:00 2001 From: Daniel Bye Date: Fri, 13 Jan 2012 12:40:59 +0000 Subject: [PATCH 3/8] Removed calls to compinit in the extract and the bundler plugins. compinit should only be called once, after all modules, libs, etc are imported. --- plugins/bundler/bundler.plugin.zsh | 2 -- plugins/extract/extract.plugin.zsh | 2 -- 2 files changed, 4 deletions(-) diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index 55564a252..e120331ff 100644 --- a/plugins/bundler/bundler.plugin.zsh +++ b/plugins/bundler/bundler.plugin.zsh @@ -1,6 +1,4 @@ fpath=($ZSH/plugins/bundler $fpath) -autoload -U compinit -compinit -i alias be="bundle exec" alias bi="bundle install" diff --git a/plugins/extract/extract.plugin.zsh b/plugins/extract/extract.plugin.zsh index 8cc17f7d4..383331ccf 100644 --- a/plugins/extract/extract.plugin.zsh +++ b/plugins/extract/extract.plugin.zsh @@ -80,6 +80,4 @@ alias x=extract # add extract completion function to path fpath=($ZSH/plugins/extract $fpath) -autoload -U compinit -compinit -i From 0d99759cc371d7b8f70cde950f42cc3558559533 Mon Sep 17 00:00:00 2001 From: backspace Date: Sun, 15 Jan 2012 08:49:52 +0200 Subject: [PATCH 4/8] =?UTF-8?q?Don=E2=80=99t=20report=20that=20Oh=20My=20Z?= =?UTF-8?q?sh=20has=20been=20updated=20when=20it=20hasn=E2=80=99t.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tools/upgrade.sh | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/tools/upgrade.sh b/tools/upgrade.sh index 6ffe56f4c..b2a1c06c4 100644 --- a/tools/upgrade.sh +++ b/tools/upgrade.sh @@ -1,12 +1,19 @@ current_path=`pwd` printf '\033[0;34m%s\033[0m\n' "Upgrading Oh My Zsh" -( cd $ZSH && git pull origin master ) -printf '\033[0;32m%s\033[0m\n' ' __ __ ' -printf '\033[0;32m%s\033[0m\n' ' ____ / /_ ____ ___ __ __ ____ _____/ /_ ' -printf '\033[0;32m%s\033[0m\n' ' / __ \/ __ \ / __ `__ \/ / / / /_ / / ___/ __ \ ' -printf '\033[0;32m%s\033[0m\n' '/ /_/ / / / / / / / / / / /_/ / / /_(__ ) / / / ' -printf '\033[0;32m%s\033[0m\n' '\____/_/ /_/ /_/ /_/ /_/\__, / /___/____/_/ /_/ ' -printf '\033[0;32m%s\033[0m\n' ' /____/ ' -printf '\033[0;34m%s\033[0m\n' 'Hooray! Oh My Zsh has been updated and/or is at the current version.' -printf '\033[0;34m%s\033[1m%s\033[0m\n' 'To keep up on the latest, be sure to follow Oh My Zsh on twitter: ' 'http://twitter.com/ohmyzsh' -cd "$current_path" +cd $ZSH + +if git pull origin master +then + printf '\033[0;32m%s\033[0m\n' ' __ __ ' + printf '\033[0;32m%s\033[0m\n' ' ____ / /_ ____ ___ __ __ ____ _____/ /_ ' + printf '\033[0;32m%s\033[0m\n' ' / __ \/ __ \ / __ `__ \/ / / / /_ / / ___/ __ \ ' + printf '\033[0;32m%s\033[0m\n' '/ /_/ / / / / / / / / / / /_/ / / /_(__ ) / / / ' + printf '\033[0;32m%s\033[0m\n' '\____/_/ /_/ /_/ /_/ /_/\__, / /___/____/_/ /_/ ' + printf '\033[0;32m%s\033[0m\n' ' /____/ ' + printf '\033[0;34m%s\033[0m\n' 'Hooray! Oh My Zsh has been updated and/or is at the current version.' + printf '\033[0;34m%s\033[1m%s\033[0m\n' 'To keep up on the latest, be sure to follow Oh My Zsh on twitter: ' 'http://twitter.com/ohmyzsh' +else + printf '\033[0;31m%s\033[0m\n' 'There was an error updating. Try again later?' +fi + +cd "$current_path" \ No newline at end of file From b73f95ab260f49bf6baa484faa40591c51629c02 Mon Sep 17 00:00:00 2001 From: Daniel Bye Date: Mon, 16 Jan 2012 13:34:07 +0000 Subject: [PATCH 5/8] Removed the assignments to fpath as well, since that's all handled in the .oh-my-zsh/oh-my-zsh.sh boot script. --- plugins/bundler/bundler.plugin.zsh | 2 -- plugins/extract/extract.plugin.zsh | 3 --- 2 files changed, 5 deletions(-) diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index e120331ff..b473d203c 100644 --- a/plugins/bundler/bundler.plugin.zsh +++ b/plugins/bundler/bundler.plugin.zsh @@ -1,5 +1,3 @@ -fpath=($ZSH/plugins/bundler $fpath) - alias be="bundle exec" alias bi="bundle install" alias bl="bundle list" diff --git a/plugins/extract/extract.plugin.zsh b/plugins/extract/extract.plugin.zsh index 383331ccf..5c125e98b 100644 --- a/plugins/extract/extract.plugin.zsh +++ b/plugins/extract/extract.plugin.zsh @@ -78,6 +78,3 @@ function extract() { alias x=extract -# add extract completion function to path -fpath=($ZSH/plugins/extract $fpath) - From 73c2c8adc77568abdf2c7be1761c5cac6f06ad06 Mon Sep 17 00:00:00 2001 From: Nicolas Cavigneaux Date: Mon, 16 Jan 2012 15:19:36 +0100 Subject: [PATCH 6/8] Add Thor to bundled commands --- 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 55564a252..033f9cedf 100644 --- a/plugins/bundler/bundler.plugin.zsh +++ b/plugins/bundler/bundler.plugin.zsh @@ -10,7 +10,7 @@ alias bu="bundle update" # The following is based on https://github.com/gma/bundler-exec -bundled_commands=(annotate cap capify cucumber foreman guard heroku nanoc rackup rainbows rake rspec ruby shotgun spec spork thin unicorn unicorn_rails) +bundled_commands=(annotate cap capify cucumber foreman guard heroku nanoc rackup rainbows rake rspec ruby shotgun spec spork thin thor unicorn unicorn_rails) ## Functions From 4b3429d765f1f14f7dbf2cc451e3047388978bf6 Mon Sep 17 00:00:00 2001 From: Arbo von Monkiewitsch Date: Mon, 16 Jan 2012 18:21:27 +0100 Subject: [PATCH 7/8] fixing #812: adding plugins w/o plugin.zsh file to fpath. --- oh-my-zsh.sh | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/oh-my-zsh.sh b/oh-my-zsh.sh index aeeaa3daf..732a403b7 100644 --- a/oh-my-zsh.sh +++ b/oh-my-zsh.sh @@ -19,13 +19,19 @@ if [[ -z "$ZSH_CUSTOM" ]]; then ZSH_CUSTOM="$ZSH/custom" fi + +is_plugin() { + local base_dir=$1 + local name=$2 + test -f $base_dir/plugins/$name/$name.plugin.zsh \ + || test -f $base_dir/plugins/$name/_$name +} # Add all defined plugins to fpath. This must be done # before running compinit. -plugin=${plugin:=()} for plugin ($plugins); do - if [ -f $ZSH_CUSTOM/plugins/$plugin/$plugin.plugin.zsh ]; then + if is_plugin $ZSH_CUSTOM $plugin; then fpath=($ZSH_CUSTOM/plugins/$plugin $fpath) - elif [ -f $ZSH/plugins/$plugin/$plugin.plugin.zsh ]; then + elif is_plugin $ZSH $plugin; then fpath=($ZSH/plugins/$plugin $fpath) fi done From 8f1a5d3f1581c80510728143e146143deecaa61e Mon Sep 17 00:00:00 2001 From: max sharples Date: Tue, 17 Jan 2012 13:11:01 +1100 Subject: [PATCH 8/8] added a rake plugin to disable zsh file globbing when calling rake tasks with square brackets --- plugins/rake/rake.plugin.zsh | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 plugins/rake/rake.plugin.zsh diff --git a/plugins/rake/rake.plugin.zsh b/plugins/rake/rake.plugin.zsh new file mode 100644 index 000000000..16b933c14 --- /dev/null +++ b/plugins/rake/rake.plugin.zsh @@ -0,0 +1,6 @@ +alias rake="noglob rake" # allows square brackts for rake task invocation +alias brake='noglob bundle exec rake' # execute the bundled rake gem +alias srake='noglob sudo rake' # noglob must come before sudo +alias sbrake='noglob sudo bundle exec rake' # altogether now ... + +