Index: trac/ticket/query.py
===================================================================
--- trac/ticket/query.py	(revision 10171)
+++ trac/ticket/query.py	(working copy)
@@ -44,7 +44,9 @@
 
 from trac.wiki.api import IWikiSyntaxProvider
 from trac.wiki.macros import WikiMacroBase # TODO: should be moved in .api
+from trac.wiki.formatter import format_to_html
 
+
 class QuerySyntaxError(TracError):
     """Exception raised when a ticket query cannot be parsed from a string."""
 
@@ -1099,6 +1101,10 @@
     def export_csv(self, req, query, sep=',', mimetype='text/plain'):
         content = StringIO()
         cols = query.get_columns()
+
+        if 'description' in query.rows:
+            query.cols.insert(2, 'description')
+
         writer = csv.writer(content, delimiter=sep, quoting=csv.QUOTE_MINIMAL)
         writer.writerow([unicode(c).encode('utf-8') for c in cols])
 
@@ -1115,6 +1121,8 @@
                                                                value)
                     elif col in query.time_fields:
                         value = format_datetime(value, tzinfo=req.tz)
+                    elif col == 'description':
+                        value = format_to_html(self.env, context, value)
                     values.append(unicode(value).encode('utf-8'))
                 writer.writerow(values)
         return (content.getvalue(), '%s;charset=utf-8' % mimetype)

