Class: GLI::Commands::HelpModules::ArgNameFormatter

Inherits:
Object
  • Object
show all
Defined in:
lib/gli/commands/help_modules/arg_name_formatter.rb

Overview

Handles wrapping text

Instance Method Summary collapse

Instance Method Details

#format(arguments_description, arguments_options, arguments) ⇒ Object



6
7
8
9
10
11
12
# File 'lib/gli/commands/help_modules/arg_name_formatter.rb', line 6

def format(arguments_description,arguments_options,arguments)
  # Select which format to use: argname or arguments
  # Priority to old way: argname
  desc = format_argname(arguments_description, arguments_options)
  desc = format_arguments(arguments) if desc.strip == ''
  desc
end

#format_argname(arguments_description, arguments_options) ⇒ Object



33
34
35
36
37
38
39
40
41
42
43
# File 'lib/gli/commands/help_modules/arg_name_formatter.rb', line 33

def format_argname(arguments_description,arguments_options)
  return '' if String(arguments_description).strip == ''
  desc = arguments_description
  if arguments_options.include? :optional
    desc = "[#{desc}]"
  end
  if arguments_options.include? :multiple
    desc = "#{desc}..."
  end
  " " + desc
end

#format_arguments(arguments) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/gli/commands/help_modules/arg_name_formatter.rb', line 14

def format_arguments(arguments)
  return '' if arguments.empty?
  desc = ""

  # Go through the arguments, building the description string
  arguments.each do |arg|
    arg_desc = "#{arg.name}"
    if arg.optional?
      arg_desc = "[#{arg_desc}]"
    end
    if arg.multiple?
      arg_desc = "#{arg_desc}..."
    end
    desc = desc + " " + arg_desc
  end

  desc
end