summaryrefslogtreecommitdiff
path: root/xmlhelp
diff options
context:
space:
mode:
authorAndras Timar <atimar@suse.com>2013-02-13 16:28:16 +0100
committerAndras Timar <atimar@suse.com>2013-02-13 16:37:35 +0100
commita775aa57f7b1d5f0f69b8faa5277d1914455ba38 (patch)
tree5aa3130772eba2cc2285cdff43b3947451449e84 /xmlhelp
parent4552bd5a7c61c4f9428ad73e19bbee5b78e510ab (diff)
compact help xml files with xslt which removes the cruft
Change-Id: Iee923174169d6ba9961a9cee14115c9a4bf7ba09
Diffstat (limited to 'xmlhelp')
-rw-r--r--xmlhelp/Package_xsl.mk1
-rw-r--r--xmlhelp/util/compact.xsl47
2 files changed, 48 insertions, 0 deletions
diff --git a/xmlhelp/Package_xsl.mk b/xmlhelp/Package_xsl.mk
index 6a11a4620d92..9dc400b0d9d4 100644
--- a/xmlhelp/Package_xsl.mk
+++ b/xmlhelp/Package_xsl.mk
@@ -27,6 +27,7 @@
$(eval $(call gb_Package_Package,xmlhelp_xsl,$(SRCDIR)/xmlhelp/util))
+$(eval $(call gb_Package_add_file,xmlhelp_xsl,bin/compact.xsl,compact.xsl))
$(eval $(call gb_Package_add_file,xmlhelp_xsl,bin/embed.xsl,embed.xsl))
$(eval $(call gb_Package_add_file,xmlhelp_xsl,bin/idxcaption.xsl,idxcaption.xsl))
$(eval $(call gb_Package_add_file,xmlhelp_xsl,bin/idxcontent.xsl,idxcontent.xsl))
diff --git a/xmlhelp/util/compact.xsl b/xmlhelp/util/compact.xsl
new file mode 100644
index 000000000000..457c955e2a23
--- /dev/null
+++ b/xmlhelp/util/compact.xsl
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+-->
+
+<!-- Remove unwanted attributes or/and nodes -->
+<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+ <xsl:output method="xml" encoding="UTF-8"/>
+
+ <xsl:strip-space elements="*"/>
+ <xsl:preserve-space elements="paragraph"/>
+
+ <!-- Copy everything -->
+ <xsl:template match="@*|node()|text()">
+ <xsl:copy>
+ <xsl:apply-templates select="@*[normalize-space()]|node()|text()"/>
+ </xsl:copy>
+ </xsl:template>
+
+ <!-- To remove attributes or nodes,
+ simply write a matching template that doesn't do anything.
+ Therefore, it is removed -->
+ <xsl:template match="@localize"/>
+ <xsl:template match="@xml-lang"/>
+ <xsl:template match="alt"/>
+ <xsl:template match="bookmark_value"/>
+ <xsl:template match="comment()"/> <!-- Remove all XML comments -->
+ <xsl:template match="comment"/>
+ <xsl:template match="history"/>
+ <xsl:template match="image/@id"/>
+ <xsl:template match="image/@width"/>
+ <xsl:template match="image/@height"/>
+ <xsl:template match="link/@name"/>
+ <xsl:template match="paragraph/@id"/>
+ <xsl:template match="paragraph/@l10n"/>
+ <xsl:template match="paragraph/@oldref"/>
+ <xsl:template match="table/@id"/>
+ <xsl:template match="title/@id"/>
+ <xsl:template match="topic/@id"/>
+ <xsl:template match="topic/@indexer"/>
+ <xsl:template match="topic/@status"/>
+
+</xsl:stylesheet>