id,summary,reporter,owner,description,type,status,priority,component,severity,resolution,keywords,cc,release
2801,CSV Support for 0.11,sagacis@gmail.com,rjollos,I changed the file slightly to make it work as a plugin for 0.11_ as seen below.  \r\n{{{\r\n#!python\r\nfrom trac.wiki.macros import WikiMacroBase\r\nfrom trac.util import escape\r\nimport csv\r\n\r\nclass CsvMacro(WikiMacroBase):\r\n\r\n    def get_macros(self):\r\n        yield 'CSV'\r\n\r\n    def get_macro_description(self_ name):\r\n       return inspect.getdoc(CsvMacro)\r\n\r\n    def expand_macro(self_ formatter_ name_ txt):\r\n        sniffer = csv.Sniffer()\r\n        txt = txt.encode('ascii'_ 'replace')\r\n        reader = csv.reader(StringIO(txt)_ sniffer.sniff(txt))\r\n        formatter.out.write('<table class="wiki">\\n')\r\n        for row in reader:\r\n            formatter.out.write('<tr>')\r\n            for col in row:\r\n                formatter.out.write('<td>%s</td>' % escape(col))\r\n            formatter.out.write('</tr>\\n')\r\n        formatter.out.write('</table>\\n')\r\n}}},enhancement,closed,normal,CsvMacro,normal,fixed,,g1itch,0.11
