diff options
Diffstat (limited to 'lib/puppet/interface')
-rw-r--r-- | lib/puppet/interface/action.rb | 23 | ||||
-rw-r--r-- | lib/puppet/interface/documentation.rb | 31 |
2 files changed, 32 insertions, 22 deletions
diff --git a/lib/puppet/interface/action.rb b/lib/puppet/interface/action.rb index 748888c2e..185302b07 100644 --- a/lib/puppet/interface/action.rb +++ b/lib/puppet/interface/action.rb @@ -48,28 +48,7 @@ class Puppet::Interface::Action attr_doc :returns attr_doc :arguments def synopsis - output = PrettyPrint.format do |s| - s.text("puppet #{@face.name}") - s.text(" #{name}") unless default? - s.breakable - - options.each do |option| - option = get_option(option) - wrap = option.required? ? %w{ < > } : %w{ [ ] } - - s.group(0, *wrap) do - option.optparse.each do |item| - unless s.current_group.first? - s.breakable - s.text '|' - s.breakable - end - s.text item - end - end - end - s.text(" #{arguments}") if arguments - end + build_synopsis(@face.name, default? ? nil : name, arguments) end ######################################################################## diff --git a/lib/puppet/interface/documentation.rb b/lib/puppet/interface/documentation.rb index fcaec2568..47e478a44 100644 --- a/lib/puppet/interface/documentation.rb +++ b/lib/puppet/interface/documentation.rb @@ -61,6 +61,37 @@ class Puppet::Interface end attr_doc :description + + def build_synopsis(face, action = nil, arguments = nil) + output = PrettyPrint.format do |s| + s.text("puppet #{face}") + s.text(" #{action}") unless action.nil? + s.text(" ") + + options.each do |option| + option = get_option(option) + wrap = option.required? ? %w{ < > } : %w{ [ ] } + + s.group(0, *wrap) do + option.optparse.each do |item| + unless s.current_group.first? + s.breakable + s.text '|' + s.breakable + end + s.text item + end + end + + s.breakable + end + + if arguments then + s.text arguments.to_s + end + end + end + end module FullDocs |