def get_summary_string(self):
rows = [["<STR_LIT>", "<STR_LIT>", "<STR_LIT>", "<STR_LIT>"],<EOL>["<STR_LIT>", "<STR_LIT>", "<STR_LIT>", "<STR_LIT>"]]<EOL>for plugin_type in sorted(self.get_plugin_types()):<EOL><INDENT>type_name = plugin_type.replace('<STR_LIT:_>', '<STR_LIT:U+0020>')<EOL>for name in sorted(self.get_plugins(plugin_type)):<EOL><INDENT>module = self.get_plugin_module(plugin_type, name)<EOL>desc = (getattr(module, "<STR_LIT>", None) or '<STR_LIT>').strip()<EOL>rows.append((type_name, name, desc, "<STR_LIT>"))<EOL><DEDENT>for (name, reason) in sorted(self.get_failed_plugins(plugin_type)):<EOL><INDENT>msg = "<STR_LIT>" % reason<EOL>rows.append((type_name, name, '<STR_LIT>', msg))<EOL><DEDENT><DEDENT>return '<STR_LIT:\n>'.join(columnise(rows))<EOL>
Get a formatted string summarising the plugins that were loaded.