require 'set' class ListPluginParametersTag < Tags::DefaultTag infos( :name => 'WebgenDocu/PluginParameterRefTag', :summary => "Lists all available plugin parameters" ) register_tag 'listPluginParameters' def initialize( plugin_manager ) super @process_output = false end def process_tag( tag, chain ) plugins = @plugin_manager.plugins.select {|k,v| k !~ /^WebgenDocu/ } mydata = {} plugins.each do |name, plugin| next if plugin.class.config.params.empty? (mydata[name[/^.*?(?=\/)/].gsub(/([A-Z][a-z])/, ' \1').strip] ||= []) << plugin end output = "