aboutsummaryrefslogtreecommitdiff
path: root/source/02_augment/commits.xsl
diff options
context:
space:
mode:
Diffstat (limited to 'source/02_augment/commits.xsl')
-rw-r--r--source/02_augment/commits.xsl51
1 files changed, 34 insertions, 17 deletions
diff --git a/source/02_augment/commits.xsl b/source/02_augment/commits.xsl
index 27f9bcd..7f17240 100644
--- a/source/02_augment/commits.xsl
+++ b/source/02_augment/commits.xsl
@@ -2,49 +2,66 @@
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns:InputXSLT="function.inputxslt.application"
- exclude-result-prefixes="InputXSLT"
>
<xsl:include href="[utility/datasource.xsl]"/>
+<xsl:include href="[utility/formatter.xsl]"/>
<xsl:variable name="meta">
- <datasource type="main" mode="full" source="01_raw/commits.xml" target="repositories"/>
+ <datasource type="main" mode="full" source="01_raw/repository_feeds.xml" target="repositories"/>
<target mode="plain" value="commits.xml"/>
</xsl:variable>
-<xsl:template name="formatter">
- <xsl:param name="format"/>
- <xsl:param name="source"/>
-
- <xsl:copy-of select="InputXSLT:external-command(
- $format,
- $source
- )/self::command/node()"/>
+<xsl:template match="entry" mode="commit">
+ <commit hash="{id}">
+ <xsl:apply-templates select="@*|node()" mode="commit"/>
+ </commit>
</xsl:template>
-<xsl:template match="date" mode="commit">
+<xsl:template match="id" mode="commit"/>
+<xsl:template match="updated" mode="commit"/>
+<xsl:template match="content[@type = 'xhtml']" mode="commit"/>
+
+<xsl:template match="author" mode="commit">
<xsl:copy>
+ <xsl:value-of select="name"/>
+ </xsl:copy>
+</xsl:template>
+
+<xsl:template match="published" mode="commit">
+ <date>
<xsl:attribute name="time">
<xsl:value-of select="substring(text(), 12, 5)"/>
</xsl:attribute>
<xsl:apply-templates select="@*|node()" mode="commit"/>
- </xsl:copy>
+ </date>
</xsl:template>
-<xsl:template match="date/text()" mode="commit">
+<xsl:template match="published/text()" mode="commit">
<xsl:value-of select="substring(., 0, 11)"/>
</xsl:template>
-<xsl:template match="message/text()" mode="commit">
+<xsl:template match="link" mode="commit">
+ <link>
+ <xsl:value-of select="@href"/>
+ </link>
+</xsl:template>
+
+<xsl:template match="content[@type = 'text']" mode="commit">
+ <message>
+ <xsl:apply-templates select="node()" mode="commit"/>
+ </message>
+</xsl:template>
+
+<xsl:template match="content[@type = 'text']/text()" mode="commit">
<xsl:call-template name="formatter">
<xsl:with-param name="format">markdown</xsl:with-param>
<xsl:with-param name="source" select="."/>
</xsl:call-template>
</xsl:template>
-<xsl:template match="@*|node()" mode="commit">
+<xsl:template match="@* | node()" mode="commit">
<xsl:copy>
<xsl:apply-templates select="@*|node()" mode="commit"/>
</xsl:copy>
@@ -52,7 +69,7 @@
<xsl:template match="repositories/entry">
<entry handle="{@handle}">
- <xsl:apply-templates select="commit" mode="commit"/>
+ <xsl:apply-templates select="entry" mode="commit"/>
</entry>
</xsl:template>