Wednesday, March 08, 2017

Useful DITA OT plugins

Share to Facebook Share to Twitter Email This Share on Google Plus Share on Tumblr

The DITA Open Toolkit is the most commonly used engine for publishing DITA content to various output formats. It has a plugin-based architecture and it comes bundled by default with plugins for publishing to XHTML-based and PDF formats. There are other useful open-source plugins which can be installed in the DITA Open Toolkit and provide various publishing or reporting capabilities. I will try to compile below a list with my favorite open source plugins, many of which are bundled by default with Oxygen XML Editor:

DITA to MS Word

This very useful plugin developed by Jarno Elovirta (the main DITA OT developer) can be used to publish DITA to MS Word (OOXML): https://github.com/jelovirt/com.elovirta.ooxml. The plugin is robust and can handle quite large DITA projects.

Convert MS Word to DITA

The DITA For Publishers project developed by Eliot Kimber contains a plugin which can convert MS Word (OOXML) documents to DITA topics: http://www.dita4publishers.org/d4p-users-guide/user_docs/d4p-users-guide/word2dita/word-to-dita-plugin.html. Useful advice and other ways to migrate from MS Word to DITA can be found here: http://blog.oxygenxml.com/2016/05/how-to-migrate-from-word-to-dita.html.

DITA to EPUB

The DITA For Publishers project developed by Eliot Kimber contains a plugin which can convert DITA content to EPUB3: http://www.dita4publishers.org/d4p-users-guide/user_docs/d4p-users-guide/epub-plugin/generating-epubs.html. There are also plugins which can take the EPUB3 output and generate Kindle or Mobi formats.

Use Markdown content directly in DITA Maps

This plugin developed again by Jarno Elovirta can be used to publish hybrid DITA projects containing both DITA and Markdown topics to any output format: https://github.com/jelovirt/dita-ot-markdown.

Embed video and audio resources in DITA topics

This handy little plugin developed by Oxygen allows you to embed audio, video, or Youtube resources in DITA topics and properly display the embedded content in the XHTML-based outputs: https://github.com/oxygenxml/dita-media-support.

Publish RelaxNG-based DITA topics

RelaxNG is the default schema type in which the DITA vocabulary is described by the specification developers. But the DITA Open Toolkit does not allow publishing RNG-based DITA content by default. Installing this plugin developed by Oxygen will make this possible: https://github.com/oxygenxml/dita-relaxng-defaults.

Present Oxygen track changes in the PDF output

This useful plugin developed by Oxygen allows you to preserve Oxygen change tracking highlights in the PDF output: https://github.com/oxygenxml/dita-classic-pdf-review.

Publish DITA to PDF using CSS

The hard thing about the default PDF output is the customization which involves modifying XSLT scripts and having knowledge of both XSLT and XSL-FO. This plugin developed by Oxygen allows you to use CSS to customize the PDF obtained from DITA content: https://github.com/oxygenxml/dita-css. The plugin needs a commercial license of RenderX XEP or Antenna House in order to produce the PDF: https://www.oxygenxml.com/doc/versions/18.1/ug-editor/topics/ditamap-pdf-css-x-dita2.html. But for Oxygen XML Editor 19 we are actively working on a PDF CSS engine which will allow the plugin to work from Oxygen without any additional licenses: http://archive.xmlprague.cz/2017/files/presentations/css2pdf-xslfo.pdf.

A list with all open-source DITA OT plugins developed and shared by Oxygen XML Editor can be found on GitHub: https://github.com/search?q=topic%3Adita-ot-plugin+org%3Aoxygenxml&type=Repositories. My DITA OT Day 2016 presentation covers most of these: https://www.oxygenxml.com/events/2016/dita-ot_day.html#Seven_Open-Source_DITA-OT_plugins.