summaryrefslogtreecommitdiffstats
path: root/lib/puppet/interface
diff options
context:
space:
mode:
Diffstat (limited to 'lib/puppet/interface')
-rw-r--r--lib/puppet/interface/action.rb2
-rw-r--r--lib/puppet/interface/action_manager.rb5
-rw-r--r--lib/puppet/interface/documentation.rb4
3 files changed, 9 insertions, 2 deletions
diff --git a/lib/puppet/interface/action.rb b/lib/puppet/interface/action.rb
index 3c377a49f..748888c2e 100644
--- a/lib/puppet/interface/action.rb
+++ b/lib/puppet/interface/action.rb
@@ -46,6 +46,7 @@ class Puppet::Interface::Action
########################################################################
# Documentation...
attr_doc :returns
+ attr_doc :arguments
def synopsis
output = PrettyPrint.format do |s|
s.text("puppet #{@face.name}")
@@ -67,6 +68,7 @@ class Puppet::Interface::Action
end
end
end
+ s.text(" #{arguments}") if arguments
end
end
diff --git a/lib/puppet/interface/action_manager.rb b/lib/puppet/interface/action_manager.rb
index c5eb8e08a..fbf588d7d 100644
--- a/lib/puppet/interface/action_manager.rb
+++ b/lib/puppet/interface/action_manager.rb
@@ -34,7 +34,10 @@ module Puppet::Interface::ActionManager
elsif self.class.respond_to?(:actions)
result += self.class.actions
end
- result.sort
+ # We need to uniq the result, because we duplicate actions when they are
+ # fetched to ensure that they have the correct bindings; they shadow the
+ # parent, and uniq implements that. --daniel 2011-06-01
+ result.uniq.sort
end
def get_action(name)
diff --git a/lib/puppet/interface/documentation.rb b/lib/puppet/interface/documentation.rb
index 48e9a8b1a..fcaec2568 100644
--- a/lib/puppet/interface/documentation.rb
+++ b/lib/puppet/interface/documentation.rb
@@ -77,8 +77,10 @@ class Puppet::Interface
if @short_description.nil? then
return nil if @description.nil?
lines = @description.split("\n")
- grab = [5, lines.index('') || 5].min
+ first_paragraph_break = lines.index('') || 5
+ grab = [5, first_paragraph_break].min
@short_description = lines[0, grab].join("\n")
+ @short_description += ' [...]' if (grab < lines.length and first_paragraph_break >= 5)
end
@short_description
end