From 4144f4beea4e56231adeb3574d3516b35c3331cf Mon Sep 17 00:00:00 2001 From: Christopher Chow Date: Wed, 23 Feb 2011 03:05:25 +1100 Subject: Add tab completion to bundler plugin. --- plugins/bundler/_bundler | 82 ++++++++++++++++++++++++++++++++++++++ plugins/bundler/bundler.plugin.zsh | 4 ++ 2 files changed, 86 insertions(+) create mode 100644 plugins/bundler/_bundler (limited to 'plugins/bundler') diff --git a/plugins/bundler/_bundler b/plugins/bundler/_bundler new file mode 100644 index 000000000..5d22cac9a --- /dev/null +++ b/plugins/bundler/_bundler @@ -0,0 +1,82 @@ +#compdef bundle + +local curcontext="$curcontext" state line _gems _opts ret=1 + +_arguments -C -A "-v" -A "--version" \ + '(- 1 *)'{-v,--version}'[display version information]' \ + '1: :->cmds' \ + '*:: :->args' && ret=0 + +case $state in + cmds) + _values "bundle command" \ + "install[Install the gems specified by the Gemfile or Gemfile.lock]" \ + "update[Update dependencies to their latest versions]" \ + "package[Package the .gem files required by your application]" \ + "exec[Execute a script in the context of the current bundle]" \ + "config[Specify and read configuration options for bundler]" \ + "check[Determine whether the requirements for your application are installed]" \ + "list[Show all of the gems in the current bundle]" \ + "show[Show the source location of a particular gem in the bundle]" \ + "console[Start an IRB session in the context of the current bundle]" \ + "open[Open an installed gem in the editor]" \ + "viz[Generate a visual representation of your dependencies]" \ + "init[Generate a simple Gemfile, placed in the current directory]" \ + "gem[Create a simple gem, suitable for development with bundler]" \ + "help[Describe available tasks or one specific task]" + ret=0 + ;; + args) + case $line[1] in + help) + _values 'commands' \ + 'install' \ + 'update' \ + 'package' \ + 'exec' \ + 'config' \ + 'check' \ + 'list' \ + 'show' \ + 'console' \ + 'open' \ + 'viz' \ + 'init' \ + 'gem' \ + 'help' && ret=0 + ;; + install) + _arguments \ + '(--no-color)--no-color[disable colorization in output]' \ + '(--local)--local[do not attempt to connect to rubygems.org]' \ + '(--quiet)--quiet[only output warnings and errors]' \ + '(--gemfile)--gemfile=-[use the specified gemfile instead of Gemfile]:gemfile' \ + '(--system)--system[install to the system location]' \ + '(--deployment)--deployment[install using defaults tuned for deployment environments]' \ + '(--frozen)--frozen[do not allow the Gemfile.lock to be updated after this install]' \ + '(--path)--path=-[specify a different path than the system default]:path:_files' \ + '(--binstubs)--binstubs=-[generate bin stubs for bundled gems to ./bin]:directory:_files' \ + '(--without)--without=-[exclude gems that are part of the specified named group]:groups' + ret=0 + ;; + exec) + _normal && ret=0 + ;; + (open|show) + _gems=( $(bundle show 2> /dev/null | sed -e '/^ \*/!d; s/^ \* \([^ ]*\) .*/\1/') ) + if [[ $_gems != "" ]]; then + _values 'gems' $_gems && ret=0 + fi + ;; + *) + _opts=( $(bundle help $line[1] | sed -e '/^ \[-/!d; s/^ \[\(-[^=]*\)=.*/\1/') ) + _opts+=( $(bundle help $line[1] | sed -e '/^ -/!d; s/^ \(-.\), \[\(-[^=]*\)=.*/\1 \2/') ) + if [[ $_opts != "" ]]; then + _values 'options' $_opts && ret=0 + fi + ;; + esac + ;; +esac + +return ret diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index fb40e2cec..caa2f6771 100644 --- a/plugins/bundler/bundler.plugin.zsh +++ b/plugins/bundler/bundler.plugin.zsh @@ -1,3 +1,7 @@ +fpath=($ZSH/plugins/bundler $fpath) +autoload -U compinit +compinit -i + alias be="bundle exec" alias bi="bundle install" alias bu="bundle update" -- cgit v1.2.3-70-g09d2 From 11fcdb844d67492080befd8dcd1f995deb26b8ee Mon Sep 17 00:00:00 2001 From: Ches Martin Date: Sat, 13 Aug 2011 04:53:23 +0700 Subject: Add guard to bundler plugin's wrapped commands --- plugins/bundler/bundler.plugin.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'plugins/bundler') diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index f005700ff..a6c116407 100644 --- a/plugins/bundler/bundler.plugin.zsh +++ b/plugins/bundler/bundler.plugin.zsh @@ -6,7 +6,7 @@ alias bp="bundle package" # The following is based on https://github.com/gma/bundler-exec -bundled_commands=(cap capify cucumber heroku rackup rails rake rspec ruby shotgun spec spork thin unicorn unicorn_rails) +bundled_commands=(cap capify cucumber guard heroku rackup rails rake rspec ruby shotgun spec spork thin unicorn unicorn_rails) ## Functions -- cgit v1.2.3-70-g09d2 From 9c5c70dc0a2531b621ba825c2599189717694d56 Mon Sep 17 00:00:00 2001 From: Hakan Ensari Date: Wed, 31 Aug 2011 12:51:10 +0100 Subject: order aliases alphabetically --- plugins/bundler/bundler.plugin.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'plugins/bundler') diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index a6c116407..17e17efd9 100644 --- a/plugins/bundler/bundler.plugin.zsh +++ b/plugins/bundler/bundler.plugin.zsh @@ -1,8 +1,8 @@ alias be="bundle exec" alias bi="bundle install" alias bl="bundle list" -alias bu="bundle update" alias bp="bundle package" +alias bu="bundle update" # The following is based on https://github.com/gma/bundler-exec -- cgit v1.2.3-70-g09d2 From ee507c90461beb06590af1c5e30bd78a62d8c4be Mon Sep 17 00:00:00 2001 From: Hakan Ensari Date: Wed, 31 Aug 2011 12:53:02 +0100 Subject: add foreman, nanoc, and rainbows to list of bundled commands --- plugins/bundler/bundler.plugin.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'plugins/bundler') diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index 17e17efd9..bd26ca312 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=(cap capify cucumber guard heroku rackup rails rake rspec ruby shotgun spec spork thin unicorn unicorn_rails) +bundled_commands=(cap capify cucumber foreman guard heroku nanoc rackup rails rainbows rake rspec ruby shotgun spec spork thin unicorn unicorn_rails) ## Functions -- cgit v1.2.3-70-g09d2 From 965e1cfefa41bd0419126d9321eecec4fcbbb0e3 Mon Sep 17 00:00:00 2001 From: Mario Fernandez Date: Sat, 10 Sep 2011 11:35:08 +0200 Subject: fix completion for commands wrapped with bundler --- plugins/bundler/bundler.plugin.zsh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'plugins/bundler') diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index a6c116407..bd77b0781 100644 --- a/plugins/bundler/bundler.plugin.zsh +++ b/plugins/bundler/bundler.plugin.zsh @@ -33,5 +33,10 @@ _run-with-bundler() { ## Main program for cmd in $bundled_commands; do - alias $cmd="_run-with-bundler $cmd" + eval "function bundled_$cmd () { _run-with-bundler $cmd \$@}" + alias $cmd=bundled_$cmd + + if which _$cmd > /dev/null 2>&1; then + compdef _$cmd bundled_$cmd + fi done -- cgit v1.2.3-70-g09d2 From 444145b495338ca3fbc86f0956003a1074f845df Mon Sep 17 00:00:00 2001 From: Mario Fernandez Date: Wed, 9 Nov 2011 23:01:45 +0100 Subject: FIX: commands like ruby and rake where not being completed --- plugins/bundler/bundler.plugin.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'plugins/bundler') diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index 3c96b8da9..89f62232b 100644 --- a/plugins/bundler/bundler.plugin.zsh +++ b/plugins/bundler/bundler.plugin.zsh @@ -41,6 +41,6 @@ for cmd in $bundled_commands; do alias $cmd=bundled_$cmd if which _$cmd > /dev/null 2>&1; then - compdef _$cmd bundled_$cmd + compdef _$cmd bundled_$cmd=$cmd fi done -- cgit v1.2.3-70-g09d2 From 2176cf37fb1eed028c53a2095098d585489b1cce Mon Sep 17 00:00:00 2001 From: Simon Jefford Date: Thu, 29 Dec 2011 21:54:19 +0000 Subject: bundler plugin - don't "bundle exec rails" As per http://blog.wyeworks.com/2011/12/27/bundle-exec-rails-executes-bundler-setup-3-times --- plugins/bundler/bundler.plugin.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'plugins/bundler') diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index 89f62232b..7b73c8fed 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=(cap capify cucumber foreman guard heroku nanoc rackup rails rainbows rake rspec ruby shotgun spec spork thin unicorn unicorn_rails) +bundled_commands=(cap capify cucumber foreman guard heroku nanoc rackup rainbows rake rspec ruby shotgun spec spork thin unicorn unicorn_rails) ## Functions -- cgit v1.2.3-70-g09d2 From 7a361870a97d9d34158542503f942fb0c67accfc Mon Sep 17 00:00:00 2001 From: lucapette Date: Fri, 6 Jan 2012 22:10:57 +0100 Subject: add annotate --- plugins/bundler/bundler.plugin.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'plugins/bundler') diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index 7b73c8fed..55564a252 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=(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 unicorn unicorn_rails) ## Functions -- cgit v1.2.3-70-g09d2 From c04b4abe91b69c058bde8e5968abb759b9168b88 Mon Sep 17 00:00:00 2001 From: Daniel Bye Date: Fri, 13 Jan 2012 12:40:59 +0000 Subject: 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(-) (limited to 'plugins/bundler') 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 -- cgit v1.2.3-70-g09d2 From b73f95ab260f49bf6baa484faa40591c51629c02 Mon Sep 17 00:00:00 2001 From: Daniel Bye Date: Mon, 16 Jan 2012 13:34:07 +0000 Subject: 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(-) (limited to 'plugins/bundler') 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) - -- cgit v1.2.3-70-g09d2 From 73c2c8adc77568abdf2c7be1761c5cac6f06ad06 Mon Sep 17 00:00:00 2001 From: Nicolas Cavigneaux Date: Mon, 16 Jan 2012 15:19:36 +0100 Subject: Add Thor to bundled commands --- plugins/bundler/bundler.plugin.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'plugins/bundler') 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 -- cgit v1.2.3-70-g09d2 From 96265d26454868b8b654e4a5271939748e1dd148 Mon Sep 17 00:00:00 2001 From: Jeff Wallace Date: Tue, 17 Jan 2012 10:00:12 -0800 Subject: fix bundler plugin for root level folders this fix allows _within-bundled-project() to properly pickup a Gemfile within a root level folder (ie. /my_project) --- plugins/bundler/bundler.plugin.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'plugins/bundler') diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index 033f9cedf..b8f8ed3da 100644 --- a/plugins/bundler/bundler.plugin.zsh +++ b/plugins/bundler/bundler.plugin.zsh @@ -20,7 +20,7 @@ _bundler-installed() { _within-bundled-project() { local check_dir=$PWD - while [ "$(dirname $check_dir)" != "/" ]; do + while [ $check_dir != "/" ]; do [ -f "$check_dir/Gemfile" ] && return check_dir="$(dirname $check_dir)" done -- cgit v1.2.3-70-g09d2 From e0b235608032256f5b725676f7c6217480a52722 Mon Sep 17 00:00:00 2001 From: Tate Johnson Date: Sun, 22 Jan 2012 21:34:25 +1000 Subject: Add middleman to bundled commands --- plugins/bundler/bundler.plugin.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'plugins/bundler') diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index 12123eea6..74a3adaf8 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 foreman guard heroku nanoc rackup rainbows rake rspec ruby shotgun spec spork thin thor unicorn unicorn_rails) +bundled_commands=(annotate cap capify cucumber foreman guard heroku middleman nanoc rackup rainbows rake rspec ruby shotgun spec spork thin thor unicorn unicorn_rails) ## Functions -- cgit v1.2.3-70-g09d2 From a26f9b9948405a10d3c04280a0ad2e49e69ba6f8 Mon Sep 17 00:00:00 2001 From: Alexander Greim Date: Wed, 25 Jan 2012 06:56:09 +0100 Subject: adding engine yard command (ey) to bundler binstubs --- plugins/bundler/bundler.plugin.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'plugins/bundler') diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index 96c649664..5e9b82336 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 foreman guard heroku middleman nanoc rackup rainbows rake rspec ruby shotgun spec spork thin thor unicorn unicorn_rails) +bundled_commands=(annotate cap capify cucumber ey foreman guard heroku middleman nanoc rackup rainbows rake rspec ruby shotgun spec spork thin thor unicorn unicorn_rails) ## Functions -- cgit v1.2.3-70-g09d2 From 0da18650c6d8f63c230c36e92786855361f42ef3 Mon Sep 17 00:00:00 2001 From: Wim Griffioen Date: Thu, 26 Jan 2012 19:31:45 +0100 Subject: added rails to bundled_commands --- plugins/bundler/bundler.plugin.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'plugins/bundler') diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index 5e9b82336..e1f571237 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 heroku middleman nanoc rackup rainbows rake rspec ruby shotgun spec spork thin thor unicorn unicorn_rails) +bundled_commands=(annotate cap capify cucumber ey foreman guard heroku middleman nanoc rackup rainbows rails rake rspec ruby shotgun spec spork thin thor unicorn unicorn_rails) ## Functions -- cgit v1.2.3-70-g09d2 From 8de877d63222ed4effad7d52d68fccca2c01b6dd Mon Sep 17 00:00:00 2001 From: Amar Raja Date: Tue, 29 May 2012 10:20:49 +0200 Subject: Prevent the heroku command from being automatically bundle-exec'ed The heroku command should not be executed via bundler, see: https://github.com/heroku/heroku/issues/173 --- plugins/bundler/bundler.plugin.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'plugins/bundler') diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index e1f571237..2b80b76e6 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 heroku 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 spork thin thor unicorn unicorn_rails) ## Functions -- cgit v1.2.3-70-g09d2 From c4608ba281147af564fc0979b63bc8b23f1e55fb Mon Sep 17 00:00:00 2001 From: Tim Littlemore Date: Fri, 1 Jun 2012 15:26:22 +0100 Subject: Removing ey command from bundled_commands. It is not usually bundled. --- plugins/bundler/bundler.plugin.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'plugins/bundler') diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index 2b80b76e6..1ca48089e 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 foreman guard middleman nanoc rackup rainbows rails rake rspec ruby shotgun spec spork thin thor unicorn unicorn_rails) ## Functions -- cgit v1.2.3-70-g09d2 From 87ab8771dac655272895e5904fcf93217ea4a64b Mon Sep 17 00:00:00 2001 From: Sebastian Nowak Date: Sun, 15 Jul 2012 21:26:30 +0200 Subject: 'rails' command should not be run with bundle exec http://blog.wyeworks.com/2011/12/27/bundle-exec-rails-executes-bundler-setup-3-times http://yehudakatz.com/2011/05/30/gem-versioning-and-bundler-doing-it-right/ --- plugins/bundler/bundler.plugin.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'plugins/bundler') diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index 1ca48089e..39b76ecdf 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 foreman guard middleman nanoc rackup rainbows rails rake rspec ruby shotgun spec spork thin thor unicorn unicorn_rails) +bundled_commands=(annotate cap capify cucumber foreman guard middleman nanoc rackup rainbows rake rspec ruby shotgun spec spork thin thor unicorn unicorn_rails) ## Functions -- cgit v1.2.3-70-g09d2