diff options
Diffstat (limited to 'lib/lufa/LUFA/StudioIntegration/HV1')
5 files changed, 978 insertions, 0 deletions
diff --git a/lib/lufa/LUFA/StudioIntegration/HV1/helpcontentsetup.msha b/lib/lufa/LUFA/StudioIntegration/HV1/helpcontentsetup.msha new file mode 100644 index 0000000000..bd1d7ee219 --- /dev/null +++ b/lib/lufa/LUFA/StudioIntegration/HV1/helpcontentsetup.msha @@ -0,0 +1,27 @@ +<!-- + LUFA Library + Copyright (C) Dean Camera, 2017. + + dean [at] fourwalledcubicle [dot] com + www.lufa-lib.org +--> + +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <title>LUFA Help</title> + </head> + <body class="vendor-book"> + <div class="details"> + <span class="vendor">FourWalledCubicle</span> + <span class="product">LUFA</span> + <span class="name">LUFA Help</span> + <span class="locale">en-us</span> + </div> + <div class="package-list"> + <div class="package"> + <span class="name">lufa_studio_help.mshc</span> + <a class="current-link" href="lufa_studio_help.mshc">lufa_studio_help.mshc</a> + </div> + </div> + </body> +</html> diff --git a/lib/lufa/LUFA/StudioIntegration/HV1/lufa_docbook_transform.xslt b/lib/lufa/LUFA/StudioIntegration/HV1/lufa_docbook_transform.xslt new file mode 100644 index 0000000000..26c1d378e2 --- /dev/null +++ b/lib/lufa/LUFA/StudioIntegration/HV1/lufa_docbook_transform.xslt @@ -0,0 +1,806 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> + + <xsl:output method="xml" indent="no"/> + + <xsl:template name="generate.book.title"> + <xsl:text>LUFA Library</xsl:text> + </xsl:template> + + <xsl:template name="generate.book.id"> + <xsl:param name="book.title"/> + <xsl:choose> + <xsl:when test="@id"> + <xsl:value-of select="@id"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="translate($book.title, ' ','')"/> + </xsl:otherwise> + </xsl:choose> + </xsl:template> + + <xsl:template name="generate.index.id"> + <xsl:param name="name"/> + <xsl:variable name="book.title"> + <xsl:call-template name="generate.book.title"/> + </xsl:variable> + <xsl:variable name="book.id"> + <xsl:call-template name="generate.book.id"> + <xsl:with-param name="book.title" select="$book.title"/> + </xsl:call-template> + </xsl:variable> + + <indexterm id="{$name}"> + <primary> + <xsl:value-of select="$book.title"/> + </primary> + <secondary> + <xsl:value-of select="$name"/> + </secondary> + </indexterm> + </xsl:template> + + <xsl:template match="doxygen"> + <xsl:variable name="book.title"> + <xsl:call-template name="generate.book.title"/> + </xsl:variable> + + <xsl:variable name="book.id"> + <xsl:call-template name="generate.book.id"> + <xsl:with-param name="book.title" select="$book.title"/> + </xsl:call-template> + </xsl:variable> + + <book id="{$book.id}"> + <title> + <xsl:value-of select="$book.title"/> + </title> + + <!-- Add index chapter --> + <xsl:apply-templates select="compounddef[@kind = 'page' and @id = 'indexpage']"> + <xsl:with-param name="element.type" select="'chapter'"/> + <xsl:with-param name="page.title" select="'Library Information'"/> + </xsl:apply-templates> + + <!-- Add free-floating chapters --> + <xsl:apply-templates select="compounddef[@kind = 'page' and not(@id = 'indexpage') and not(//innerpage/@refid = @id)]"> + <xsl:with-param name="element.type" select="'chapter'"/> + </xsl:apply-templates> + + <!-- Add Modules chapter --> + <chapter> + <title>Modules</title> + <xsl:apply-templates select="compounddef[@kind = 'group' and not(//innergroup/@refid = @id)]"/> + </chapter> + </book> + </xsl:template> + + <xsl:template match="compounddef[@kind = 'page']"> + <xsl:param name="element.type" select="'section'"/> + <xsl:param name="page.title" select="title"/> + + <xsl:element name="{$element.type}"> + <xsl:attribute name="id"> + <xsl:value-of select="@id"/> + </xsl:attribute> + + <xsl:variable name="name"> + <xsl:text>LUFA.</xsl:text> + <xsl:value-of select="translate(compoundname, '_', '.')"/> + </xsl:variable> + + <xsl:call-template name="generate.index.id"> + <xsl:with-param name="name" select="$name"/> + </xsl:call-template> + + <title> + <xsl:value-of select="$page.title"/> + </title> + + <xsl:apply-templates select="detaileddescription"/> + + <xsl:if test="not(innerpage) and count(detaileddescription//sect1)"> + <para> + <emphasis role="bold">Subsections:</emphasis> + <itemizedlist> + <xsl:for-each select="detaileddescription//sect1"> + <listitem> + <link linkend="{@id}"> + <xsl:value-of select="title"/> + </link> + </listitem> + </xsl:for-each> + </itemizedlist> + </para> + </xsl:if> + + <xsl:for-each select="innerpage"> + <xsl:apply-templates select="ancestor::*/compounddef[@kind = 'page' and @id = current()/@refid]"/> + </xsl:for-each> + </xsl:element> + </xsl:template> + + <xsl:template match="compounddef[@kind = 'group']"> + <section id="{@id}"> + <title> + <xsl:value-of select="title"/> + </title> + + <xsl:variable name="name"> + <xsl:text>LUFA.</xsl:text> + <xsl:value-of select="translate(compoundname, '_', '.')"/> + </xsl:variable> + + <xsl:call-template name="generate.index.id"> + <xsl:with-param name="name" select="$name"/> + </xsl:call-template> + + <xsl:apply-templates select="detaileddescription"/> + + <xsl:if test="count(innergroup)"> + <para> + <emphasis role="bold">Subgroups:</emphasis> + <itemizedlist> + <xsl:for-each select="innergroup"> + <listitem> + <link linkend="{@refid}"> + <xsl:value-of select="text()"/> + </link> + </listitem> + </xsl:for-each> + </itemizedlist> + </para> + </xsl:if> + + <xsl:apply-templates select="sectiondef"/> + + <xsl:for-each select="innerclass"> + <xsl:apply-templates select="ancestor::*/compounddef[@id = current()/@refid]"/> + </xsl:for-each> + + <xsl:for-each select="innergroup"> + <xsl:apply-templates select="ancestor::*/compounddef[@kind = 'group' and @id = current()/@refid]"/> + </xsl:for-each> + </section> + </xsl:template> + + <xsl:template match="compounddef[@kind = 'struct' or @kind = 'union']"> + <xsl:variable name="name" select="compoundname"/> + + <section id="{@id}" xreflabel="{$name}"> + <title> + <xsl:choose> + <xsl:when test="@kind = 'struct'"> + <xsl:text>Struct </xsl:text> + </xsl:when> + + <xsl:when test="@kind = 'union'"> + <xsl:text>Union </xsl:text> + </xsl:when> + </xsl:choose> + + <xsl:value-of select="$name"/> + </title> + + <xsl:call-template name="generate.index.id"> + <xsl:with-param name="name" select="$name"/> + </xsl:call-template> + + <xsl:apply-templates select="detaileddescription"/> + + <xsl:for-each select="sectiondef[@kind = 'public-attrib']"> + <table> + <title> + <xsl:value-of select="$name"/> + </title> + + <tgroup cols="3"> + <thead> + <row> + <entry>Type</entry> + <entry>Name</entry> + <entry>Description</entry> + </row> + </thead> + + <tbody> + <xsl:for-each select="memberdef"> + <row id="{@id}" xreflabel="{name}"> + <entry> + <xsl:value-of select="type"/> + </entry> + <entry> + <xsl:value-of select="name"/> + <xsl:if test="starts-with(argsstring, '[')"> + <xsl:text>[]</xsl:text> + </xsl:if> + + <xsl:variable name="struct.element.name"> + <xsl:value-of select="$name"/> + <xsl:text>.</xsl:text> + <xsl:value-of select="name"/> + </xsl:variable> + + <xsl:call-template name="generate.index.id"> + <xsl:with-param name="name" select="$struct.element.name"/> + </xsl:call-template> + </entry> + <entry> + <xsl:apply-templates select="detaileddescription"/> + </entry> + </row> + </xsl:for-each> + </tbody> + </tgroup> + </table> + </xsl:for-each> + </section> + </xsl:template> + + <xsl:template match="memberdef[@kind = 'function']"> + <section id="{@id}" xreflabel="{name}"> + <title> + <xsl:text>Function </xsl:text> + <xsl:value-of select="name"/> + <xsl:text>()</xsl:text> + </title> + + <xsl:call-template name="generate.index.id"> + <xsl:with-param name="name" select="name"/> + </xsl:call-template> + + <para> + <emphasis role="italic"> + <xsl:value-of select="briefdescription"/> + </emphasis> + </para> + + <programlisting language="c"> + <emphasis role="keyword"> + <xsl:value-of select="type"/> + </emphasis> + <xsl:text> </xsl:text> + <xsl:value-of select="name"/> + <xsl:text>(</xsl:text> + + <xsl:choose> + <xsl:when test="not(param[1]/declname)"> + <emphasis role="keyword">void</emphasis> + </xsl:when> + + <xsl:otherwise> + <xsl:for-each select="param"> + <xsl:if test="position() > 1"> + <xsl:text>,</xsl:text> + </xsl:if> + <xsl:text> 	</xsl:text> + <emphasis role="keyword"> + <xsl:value-of select="type"/> + </emphasis> + <xsl:text> </xsl:text> + <xsl:value-of select="declname"/> + </xsl:for-each> + </xsl:otherwise> + </xsl:choose> + + <xsl:text>)</xsl:text> + </programlisting> + + <xsl:apply-templates select="detaileddescription"/> + </section> + </xsl:template> + + <xsl:template match="memberdef[@kind = 'enum']"> + <section id="{@id}" xreflabel="{name}"> + <title> + <xsl:text>Enum </xsl:text> + <xsl:value-of select="name"/> + </title> + + <xsl:call-template name="generate.index.id"> + <xsl:with-param name="name" select="name"/> + </xsl:call-template> + + <xsl:apply-templates select="detaileddescription"/> + + <table> + <title>Members</title> + <tgroup cols="2"> + <thead> + <row> + <entry>Enum Value</entry> + <entry>Description</entry> + </row> + </thead> + + <tbody> + <xsl:for-each select="enumvalue"> + <row> + <entry> + <para id="{@id}" xreflabel="{name}"> + <xsl:value-of select="name"/> + + <xsl:call-template name="generate.index.id"> + <xsl:with-param name="name" select="name"/> + </xsl:call-template> + </para> + </entry> + <entry> + <xsl:apply-templates select="detaileddescription"/> + </entry> + </row> + </xsl:for-each> + </tbody> + </tgroup> + </table> + </section> + </xsl:template> + + <xsl:template match="memberdef[@kind = 'define']"> + <section id="{@id}" xreflabel="{name}"> + <title> + <xsl:text>Macro </xsl:text> + <xsl:value-of select="name"/> + </title> + + <xsl:call-template name="generate.index.id"> + <xsl:with-param name="name" select="name"/> + </xsl:call-template> + + <programlisting language="c"> + <emphasis role="preprocessor"> + <xsl:text>#define </xsl:text> + <xsl:value-of select="name"/> + <xsl:if test="count(param) > 0"> + <xsl:text>(</xsl:text> + <xsl:for-each select="param/defname"> + <xsl:if test="position() > 1"> + <xsl:text>,</xsl:text> + </xsl:if> + <xsl:value-of select="."/> + </xsl:for-each> + <xsl:text>)</xsl:text> + </xsl:if> + <xsl:text> </xsl:text> + + <!-- Split long macro definitions across multiple lines --> + <xsl:if test="(string-length(initializer) > 50) or (count(param) > 0)"> + <xsl:text>\ 	</xsl:text> + </xsl:if> + + <xsl:value-of select="initializer"/> + </emphasis> + <xsl:text> </xsl:text> + </programlisting> + + <xsl:apply-templates select="detaileddescription"/> + </section> + </xsl:template> + + <xsl:template match="memberdef[@kind = 'typedef']"> + <section id="{@id}" xreflabel="{name}"> + <title> + <xsl:text>Type </xsl:text> + <xsl:value-of select="name"/> + </title> + + <xsl:call-template name="generate.index.id"> + <xsl:with-param name="name" select="name"/> + </xsl:call-template> + + <programlisting language="c"> + <emphasis role="keyword"> + <xsl:text>typedef </xsl:text> + <xsl:value-of select="type"/> + </emphasis> + <xsl:text> </xsl:text> + <xsl:value-of select="name"/> + <xsl:text> </xsl:text> + <xsl:value-of select="argsstring"/> + </programlisting> + + <xsl:apply-templates select="detaileddescription"/> + </section> + </xsl:template> + + + <xsl:template match="memberdef[@kind = 'variable']"> + <section id="{@id}" xreflabel="{name}"> + <title> + <xsl:text>Variable </xsl:text> + <xsl:value-of select="name"/> + </title> + + <xsl:call-template name="generate.index.id"> + <xsl:with-param name="name" select="name"/> + </xsl:call-template> + + <programlisting language="c"> + <emphasis role="keyword"> + <xsl:value-of select="type"/> + </emphasis> + <xsl:text> </xsl:text> + <xsl:value-of select="name"/> + </programlisting> + + <xsl:apply-templates select="detaileddescription"/> + </section> + </xsl:template> + + <xsl:template match="linebreak | simplesectsep"> + <!-- MUST be on two separate lines, as this is a *literal* newline --> + <literallayout> + </literallayout> + </xsl:template> + + <xsl:template match="verbatim"> + <programlisting> + <xsl:apply-templates/> + </programlisting> + </xsl:template> + + <xsl:template match="sectiondef"> + <para> + <xsl:value-of select="description"/> + </para> + + <xsl:apply-templates select="memberdef"/> + </xsl:template> + + <xsl:template match="simplesect" mode="struct"> + <footnote> + <xsl:apply-templates/> + </footnote> + </xsl:template> + + <xsl:template match="simplesect"> + <xsl:choose> + <xsl:when test="@kind = 'par'"> + <note> + <title> + <xsl:value-of select="title"/> + </title> + <xsl:apply-templates/> + </note> + </xsl:when> + + <xsl:when test="@kind = 'return'"> + <note> + <title>Returns</title> + <xsl:apply-templates/> + </note> + </xsl:when> + + <xsl:when test="@kind = 'warning'"> + <warning> + <title>Warning</title> + <xsl:apply-templates/> + </warning> + </xsl:when> + + <xsl:when test="@kind = 'pre'"> + <note> + <title>Precondition</title> + <xsl:apply-templates/> + </note> + </xsl:when> + + <xsl:when test="@kind = 'see'"> + <note> + <title>See also</title> + <xsl:apply-templates/> + </note> + </xsl:when> + + <xsl:when test="@kind = 'note'"> + <note> + <title>Note</title> + <xsl:apply-templates/> + </note> + </xsl:when> + + </xsl:choose> + </xsl:template> + + <xsl:template match="parameterlist[@kind = 'param']"> + <table> + <title>Parameters</title> + <tgroup cols="3"> + <thead> + <row> + <entry>Data Direction</entry> + <entry>Parameter Name</entry> + <entry>Description</entry> + </row> + </thead> + <tbody> + <xsl:for-each select="parameteritem"> + <row> + <xsl:apply-templates select="."/> + </row> + </xsl:for-each> + </tbody> + </tgroup> + </table> + </xsl:template> + + <xsl:template match="parameterlist[@kind = 'retval']"> + <table> + <title>Return Values</title> + <tgroup cols="2"> + <thead> + <row> + <entry>Return Value</entry> + <entry>Description</entry> + </row> + </thead> + <tbody> + <xsl:for-each select="parameteritem"> + <row> + <xsl:apply-templates select="."/> + </row> + </xsl:for-each> + </tbody> + </tgroup> + </table> + </xsl:template> + + <xsl:template match="parameteritem"> + <xsl:if test="parent::parameterlist/@kind = 'param'"> + <entry> + <para> + <xsl:choose> + <xsl:when test="not(descendant::parametername/@direction)"> + <emphasis role="italic">?</emphasis> + </xsl:when> + + <xsl:otherwise> + <emphasis role="bold"> + [<xsl:value-of select="descendant::parametername/@direction"/>] + </emphasis> + </xsl:otherwise> + </xsl:choose> + </para> + </entry> + </xsl:if> + + <entry> + <para> + <xsl:value-of select="parameternamelist/parametername"/> + </para> + </entry> + + <entry> + <xsl:apply-templates select="parameterdescription"/> + </entry> + </xsl:template> + + <xsl:template match="parameterdescription"> + <para> + <xsl:apply-templates/> + </para> + </xsl:template> + + <xsl:template match="type"> + <xsl:apply-templates/> + </xsl:template> + + <xsl:template match="bold"> + <emphasis role="bold"> + <xsl:apply-templates/> + </emphasis> + </xsl:template> + + <xsl:template match="emphasis"> + <emphasis role="italic"> + <xsl:apply-templates/> + </emphasis> + </xsl:template> + + <xsl:template match="small"> + <xsl:apply-templates/> + </xsl:template> + + <xsl:template match="mdash | ndash"> + <!-- Doxygen bug; double dashed are replaced with single HTML dash + entities, even in verbatim-like <tt> sections --> + <xsl:text>--</xsl:text> + </xsl:template> + + <xsl:template match="computeroutput | preformatted"> + <computeroutput> + <xsl:apply-templates/> + </computeroutput> + </xsl:template> + + <xsl:template match="codeline"> + <xsl:apply-templates/> + </xsl:template> + + <xsl:template match="ulink"> + <ulink url="{@url}"> + <xsl:value-of select="."/> + </ulink> + </xsl:template> + + <xsl:template match="superscript"> + <superscript> + <xsl:apply-templates/> + </superscript> + </xsl:template> + + <xsl:template match="subscript"> + <subscript> + <xsl:apply-templates/> + </subscript> + </xsl:template> + + <xsl:template match="para"> + <para> + <xsl:apply-templates/> + </para> + </xsl:template> + + <xsl:template match="ref"> + <xsl:choose> + <!-- Don't show links inside program listings --> + <xsl:when test="ancestor::programlisting"> + <xsl:value-of select="."/> + </xsl:when> + + <!-- Don't show links to file compound definitions, as they are discarded --> + <xsl:when test="ancestor::*/compounddef[@kind = 'file' and @id = current()/@refid]"> + <xsl:value-of select="."/> + </xsl:when> + + <!-- Show links outside program listings --> + <xsl:otherwise> + <link linkend="{@refid}"> + <xsl:value-of select="text()"/> + </link> + </xsl:otherwise> + </xsl:choose> + </xsl:template> + + <xsl:template match="entry"> + <entry> + <xsl:apply-templates/> + </entry> + </xsl:template> + + <xsl:template match="table[caption]"> + <table> + <title> + <xsl:value-of select="caption"/> + </title> + + <tgroup cols="{@cols}"> + <thead> + <xsl:apply-templates select="row[entry/@thead = 'yes']"/> + </thead> + + <tbody> + <xsl:apply-templates select="row[entry/@thead != 'yes']"/> + </tbody> + </tgroup> + </table> + </xsl:template> + + <xsl:template match="table[not(caption)]"> + <informaltable> + <tgroup cols="{@cols}"> + <thead> + <xsl:apply-templates select="row[entry/@thead = 'yes']"/> + </thead> + + <tbody> + <xsl:apply-templates select="row[entry/@thead != 'yes']"/> + </tbody> + </tgroup> + </informaltable> + </xsl:template> + + <xsl:template match="row"> + <row> + <xsl:apply-templates/> + </row> + </xsl:template> + + <xsl:template match="itemizedlist"> + <itemizedlist> + <xsl:apply-templates/> + </itemizedlist> + </xsl:template> + + <xsl:template match="orderedlist"> + <orderedlist> + <xsl:apply-templates/> + </orderedlist> + </xsl:template> + + <xsl:template match="listitem"> + <listitem> + <xsl:apply-templates/> + </listitem> + </xsl:template> + + <xsl:template match="programlisting"> + <programlisting language="c"> + <xsl:for-each select="codeline[position() > 1 or highlight]"> + <xsl:apply-templates select="."/> + <xsl:text> </xsl:text> + </xsl:for-each> + </programlisting> + </xsl:template> + + <xsl:template match="highlight"> + <emphasis role="{@class}"> + <xsl:apply-templates/> + </emphasis> + </xsl:template> + + <xsl:template match="highlight[1]/text()"> + <xsl:choose> + <xsl:when test="substring(., 1, 1) = '*'"> + <xsl:value-of select="substring(., 2)"/> + </xsl:when> + + <xsl:otherwise> + <xsl:value-of select="."/> + </xsl:otherwise> + </xsl:choose> + </xsl:template> + + <xsl:template match="sp[ancestor::codeline]"> + <xsl:text> </xsl:text> + </xsl:template> + + <xsl:template match="image"> + <mediaobject> + <imageobject> + <imagedata align="center"> + <xsl:attribute name="fileref"> + <xsl:text>images/</xsl:text> + <xsl:value-of select="@name"/> + </xsl:attribute> + </imagedata> + </imageobject> + </mediaobject> + </xsl:template> + + <xsl:template match="detaileddescription"> + <xsl:apply-templates/> + </xsl:template> + + <xsl:template match="sect1 | sect2 | sect3 | sect4 | sect5 | sect6 | sect7 | sect8 | sect9"> + <section> + <xsl:if test="@id"> + <xsl:attribute name="id"> + <xsl:value-of select="@id"/> + </xsl:attribute> + </xsl:if> + + <title> + <xsl:value-of select="title"/> + </title> + + <xsl:apply-templates/> + </section> + </xsl:template> + + <xsl:template match="anchor"> + <xsl:if test="@id"> + <indexterm id="{@id}"/> + </xsl:if> + </xsl:template> + + <xsl:template match="title"/> + + <xsl:template match="htmlonly"/> + + <xsl:template match="*"> + <xsl:message>NO XSL TEMPLATE MATCH: <xsl:value-of select="local-name()"/></xsl:message> + </xsl:template> + +</xsl:stylesheet> diff --git a/lib/lufa/LUFA/StudioIntegration/HV1/lufa_helpcontentsetup_transform.xslt b/lib/lufa/LUFA/StudioIntegration/HV1/lufa_helpcontentsetup_transform.xslt new file mode 100644 index 0000000000..c9ff58f597 --- /dev/null +++ b/lib/lufa/LUFA/StudioIntegration/HV1/lufa_helpcontentsetup_transform.xslt @@ -0,0 +1,47 @@ +<!-- + LUFA Library + Copyright (C) Dean Camera, 2017. + + dean [at] fourwalledcubicle [dot] com + www.lufa-lib.org +--> + +<!-- Atmel Studio HV1 Setup XHTML transform file --> + +<!-- Updates a helpcontentsetup.msha document to add appropriate version + information. --> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xhtml="http://www.w3.org/1999/xhtml" version="1.0"> + <xsl:output method="xml" omit-xml-declaration="yes"/> + + <!-- Need to input the LUFA help package filename for later use --> + <xsl:param name="help-package-filename"/> + + <!-- Recursively match and copy/process all nodes/attributes --> + <xsl:template match="node()"> + <xsl:copy> + <xsl:copy-of select="@*"/> + <xsl:apply-templates select="node()"/> + </xsl:copy> + </xsl:template> + + <!-- Update the LUFA help package file name --> + <xsl:template match="xhtml:div[@class='package']/xhtml:span[@class='name']"> + <xsl:copy> + <xsl:copy-of select="@class"/> + + <xsl:value-of select="$help-package-filename"/> + </xsl:copy> + </xsl:template> + + <xsl:template match="xhtml:div[@class='package']/xhtml:a[@class='current-link']"> + <xsl:copy> + <xsl:copy-of select="@class"/> + + <xsl:attribute name="href"> + <xsl:value-of select="$help-package-filename"/> + </xsl:attribute> + + <xsl:value-of select="$help-package-filename"/> + </xsl:copy> + </xsl:template> +</xsl:stylesheet> diff --git a/lib/lufa/LUFA/StudioIntegration/HV1/lufa_hv1_transform.xslt b/lib/lufa/LUFA/StudioIntegration/HV1/lufa_hv1_transform.xslt new file mode 100644 index 0000000000..e7e230166d --- /dev/null +++ b/lib/lufa/LUFA/StudioIntegration/HV1/lufa_hv1_transform.xslt @@ -0,0 +1,45 @@ +<!--
+ LUFA Library
+ Copyright (C) Dean Camera, 2017.
+
+ dean [at] fourwalledcubicle [dot] com
+ www.lufa-lib.org
+-->
+
+<!-- Docbook XML to Microsoft Help Viewer 1.0 transform file -->
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+
+ <xsl:import href="../Docbook/mshelp/docbook.xsl"/>
+
+ <xsl:output method="xml" indent="no"/>
+
+ <xsl:template match="emphasis[@role = 'keyword' or @role = 'keywordtype' or @role = 'keywordflow']">
+ <span class="hl-keyword" style="color: #0079C1">
+ <xsl:apply-templates/>
+ </span>
+ </xsl:template>
+
+ <xsl:template match="emphasis[@role = 'stringliteral' or @role = 'charliteral']">
+ <span class="hl-string" style="color: #800000">
+ <xsl:apply-templates/>
+ </span>
+ </xsl:template>
+
+ <xsl:template match="emphasis[@role = 'comment']">
+ <em class="hl-comment" style="color: #008000">
+ <xsl:apply-templates/>
+ </em>
+ </xsl:template>
+
+ <xsl:template match="emphasis[@role = 'preprocessor']">
+ <span class="hl-preprocessor" style="color: #A000A0">
+ <xsl:apply-templates/>
+ </span>
+ </xsl:template>
+
+ <xsl:template match="emphasis[@role = 'normal' and ancestor::programlisting]">
+ <xsl:apply-templates />
+ </xsl:template>
+
+</xsl:stylesheet>
diff --git a/lib/lufa/LUFA/StudioIntegration/HV1/lufa_studio_help_styling.css b/lib/lufa/LUFA/StudioIntegration/HV1/lufa_studio_help_styling.css new file mode 100644 index 0000000000..a4a025cc8b --- /dev/null +++ b/lib/lufa/LUFA/StudioIntegration/HV1/lufa_studio_help_styling.css @@ -0,0 +1,53 @@ +/*
+ LUFA Library
+ Copyright (C) Dean Camera, 2017.
+
+ dean [at] fourwalledcubicle [dot] com
+ www.lufa-lib.org
+*/
+
+.programlisting {
+ display: block;
+ margin-left: 15px;
+ padding: 10px;
+ background-color: #f4f4f4;
+ border: 1px solid #aaaaaa;
+ font-family: "Consolas", "Courier New", sans-serif;
+ }
+
+ code {
+ background-color: #f4f4f4;
+ font-family: "Consolas", "Courier New", sans-serif;
+ }
+
+.note, .warning, .tip {
+ display: block;
+ margin-left: 15px;
+ padding-left: 10px;
+ padding-bottom: 5px;
+ background-color: #f4f4f4;
+ border: 1px solid #aaaaaa;
+}
+
+table {
+ border: 1px solid #aaaaaa;
+ border-collapse: collapse;
+ margin-left: 15px;
+ font-size: 10pt;
+}
+
+table thead {
+ background-color: #f4f4f4;
+}
+
+table thead th {
+ padding: 5px;
+}
+
+table tbody td {
+ padding: 5px;
+}
+
+ul {
+ padding-left: 20px;
+}
|