New DITA-OT plugin for creating reveal.js based web presentations

117 views
Skip to first unread message

Stefan Eike

unread,
Sep 20, 2014, 10:19:14 AM9/20/14
to dita-...@googlegroups.com
Hi,

I'm working on my first DITA-OT plugin. This plugin transforms DITA maps into reveal.js based web presentations. Please have a look at my blog post: http://xephon2.github.io/2014/09/20/dita-ot-revealjs

Best regards
Stefan

Radu Coravu

unread,
Sep 22, 2014, 8:30:25 AM9/22/14
to Stefan Eike, dita-...@googlegroups.com
Hi Stefan,

Thanks for telling us about this.
I tested the plugin and the output is very nice looking.
I had some problems with how topic references which are not on the first level in the DITA Map are rendered in the web browser though.

Regards,
Radu

Radu Coravu
<oXygen/>  XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com


--
You received this message because you are subscribed to the Google Groups "DITA-OT Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dita-ot-dev...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Stefan Eike

unread,
Sep 22, 2014, 12:01:18 PM9/22/14
to dita-...@googlegroups.com, s.ei...@gmail.com
Hi Radu,

thank you for your feedback. I'm currently working on this.

Regards,
Stefan

Stefan Eike

unread,
Sep 25, 2014, 11:05:58 AM9/25/14
to dita-...@googlegroups.com, s.ei...@gmail.com
Hi Radu,

the processing of nested topics (two levels only) should work now.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE map PUBLIC "-//OASIS//DTD DITA Map//EN" "map.dtd">
<map xml:lang="de" chunk="to-content">
 
<title>DITA Topic Map</title>
 
<topicref href="topics/firstLvlTopic.dita">
 
<topicref href="topics/SecondLvlTopic1.dita"/>
 
<topicref href="topics/SecondLvlTopic2.dita">
   
<!-- This fails: -->
   
<topicref href="topics/ThirdLvlTopic.dita"/>  
 
</topicref>
 
</topicref>
</map>

Regards,
Stefan


Am Montag, 22. September 2014 14:30:25 UTC+2 schrieb Radu Coravu:

Radu Coravu

unread,
Sep 29, 2014, 3:26:40 AM9/29/14
to Stefan Eike, dita-...@googlegroups.com
Hi Stefan,

Sorry, still does not work in some simple cases, for example the XSLT code only matches DITA topics and not tasks, concepts and so on. So the template matching should be DITA specialization aware.
Looking at the code in the reveal.xsl, it seems that what should be done is to obtain from an XML containing a nested set of topics a flat list of HTML section elements.
In my opinion the template which matches "//topic" should be rewritten to do something like:

            <xsl:template match="*[contains(@class, ' topic/topic ')]">
                <section>
                    <xsl:apply-templates select="node()[not(contains(@class,' topic/topic '))]"/>
                </section>
                <xsl:apply-templates select="*[contains(@class, ' topic/topic ')]"/>
            </xsl:template>

Stefan Eike

unread,
Oct 1, 2014, 3:57:19 PM10/1/14
to dita-...@googlegroups.com, s.ei...@gmail.com


Hi Radu,

I added tasks and concepts to the selectors yesterday. I didn't know the @class selector. Thank you for the recommendation. Now I refactored the templates again and they look much better know. Now the processing of level 3+ topics works with my test data as well. I pull them all to the second level to appear as vertical slides.



Further on, I added several Ant properties to customize the output during the build process. Please have a look at the README.md for explanations. I really appreciate your support. Thank you! :) Maybe you should raise an issue or send me a pull request on Github next time, because the other subscribers of the mailing list are probably not interested in the plugin.

Best regards
Stefan

Stefan Eike

unread,
Mar 12, 2015, 8:08:42 AM3/12/15
to dita-...@googlegroups.com, s.ei...@gmail.com
Reply all
Reply to author
Forward
0 new messages