Version 8 (modified by Aurélien Bompard, 8 years ago) (diff)

Update link the the new website

Export wiki pages as OpenDocument (ODT)


This plugins can convert a wiki page to an OpenDocument Text file (ODT).

The file can be opened with any compatible office suite, such as OpenOffice, KOffice, IBM Symphony, etc. Currently, it's only been tested with OpenOffice.

The XSLT stylesheets come from the XHTML2ODT project.


This plugin was tested with Trac version 0.11. Please ensure the following python modules are installed before installing this plugin:

Refer to the Trac plugin documentation for details on how to build and install plugins and macros. You will probably have to enable the plugin by editing the components section of your trac.ini, for example:

odtexport.* = enabled

After installing, a new alternative format should appear on the bottom of each wiki page, next to the "Plain Text" link.


In trac.ini, you can setup a few options :

  • get_remote_images (boolean, defaults to true) : wheather the plugin should download the remote images
  • replace_keyword (string, defaults to TRAC-ODT-INSERT) : the string in the ODT template file to replace with the wiki page content. This keyword must be unstyled and alone on its own line. If not present, the wiki content will be appended to the template.
  • cut_start_keyword (string, defaults to TRAC-ODT-CUT-START) and cut_stop_keyword (string, defaults to TRAC-ODT-CUT-STOP) : the text between these strings in the ODT template will be removed. See note below for the reason for these tags.
  • dpi (integer, defaults to 96) : the screen DPI.
  • img_default_width (string, defaults to 8cm) : the width of an exported image when the plugin can't compute it.
  • img_default_height (string, defaults to 6cm) : the height of an exported image when the plugin can't compute it.
  • remove_macros (list, defaults to PageOutline, TracGuideToc, TOC) : the macros which will be removed on export. This is mainly because the table of contents should be handled in the ODT directly, not by generating a list of links. Warning, if these macros are in a sub-page included by the IncludeMacro (or similar), they will not be removed.

Those options must be put under a [odtexport] section in the ini file, such as :

get_remote_images = False
replace_keyword = REPLACE_ME

About the CUT-START and CUT-STOP tags

In an ODT file, the only styles that will be saved are the styles which are applied to some content in the document. If you want to create an empty ODT document for this plugin, and still want to define styles which will be applied to the wiki content, you have to write some dummy text, apply the styles to this text, and surround the text in the CUT-START and CUT-STOP tags. This way, the styles will be retained in the ODT file, but the dummy text will be removed on export.

Choosing a template

The default template is named wikipage.odt. You can use a custom template by creating a file with this name and putting it in the templates directory of your Trac instance. This template will be used by default for all the pages.

You can also create other ODT files to be used as templates, and put them in the same directory. Then, you can use a special macro in the wiki page to choose the template. This macro is OdtTemplate and can be used as such: [[OdtTemplate(my_other_template)]]. The .odt suffix will be appended, don't put it in the macro.

Finally, you can simply attach the template to the page, and use the OdtTemplate macro to select it.

The order of preference when looking for the template file is:

  1. in the page's attachments
  2. in the Trac instance's templates directory
  3. in the OdtExportPlugin's templates directory

The first found is used.

Bugs/Feature Requests

Existing bugs and feature requests for OdtExportPlugin are here.

If you have any issues, create a new ticket.


Download the zipped source from [download:odtexportplugin here].


You can check out OdtExportPlugin from here using Subversion, or browse the source with Trac.


Once installed, a new entry shows up below the Download in other formats section at the end of the page. Click and save to disk, and open with a compatible office suite such as OpenOffice.

Recent Changes

15146 by rjollos on 2016-01-02 21:23:14
0.7dev: Fix missing attachment error for filenames with whitespace

Refs #12616.

15145 by rjollos on 2016-01-02 21:09:49
0.7dev: Encode attachment path as utf-8

This should resolve UnicodeDecodeErrors when exporting
documents with attachments.

Fixes #12616.

15144 by rjollos on 2016-01-02 20:53:38
0.7dev: Fix module has no attribute Image

This is a regression in [15141].

Refs #12616.



Author: Aurélien Bompard