Method: Bundler::CLI.reformatted_help_args

Defined in:
lib/bundler/cli.rb

.reformatted_help_args(args) ⇒ Object

Reformat the arguments passed to bundle that include a –help flag into the corresponding ‘bundle help #command` call


652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
# File 'lib/bundler/cli.rb', line 652

def self.reformatted_help_args(args)
  bundler_commands = (COMMAND_ALIASES.keys + COMMAND_ALIASES.values).flatten

  help_flags = %w[--help -h]
  exec_commands = ["exec"] + COMMAND_ALIASES["exec"]

  help_used = args.index {|a| help_flags.include? a }
  exec_used = args.index {|a| exec_commands.include? a }

  command = args.find {|a| bundler_commands.include? a }

  if exec_used && help_used
    if exec_used + help_used == 1
      %w[help exec]
    else
      args
    end
  elsif help_used
    args = args.dup
    args.delete_at(help_used)
    ["help", command || args].flatten.compact
  else
    args
  end
end