[jboss-cvs] JBossAS SVN: r70795 - in trunk/docbook-support/jbossorg-docbook-xslt: src/main/resources/xslt/org/jboss and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Mar 12 22:30:12 EDT 2008


Author: newtonm
Date: 2008-03-12 22:30:11 -0400 (Wed, 12 Mar 2008)
New Revision: 70795

Added:
   trunk/docbook-support/jbossorg-docbook-xslt/src/main/resources/xslt/org/jboss/highlight-pdf.xsl
Modified:
   trunk/docbook-support/jbossorg-docbook-xslt/pom.xml
   trunk/docbook-support/jbossorg-docbook-xslt/src/main/resources/xslt/org/jboss/main-pdf.xsl
Log:
Added code highlighting to PDF output.

Modified: trunk/docbook-support/jbossorg-docbook-xslt/pom.xml
===================================================================
--- trunk/docbook-support/jbossorg-docbook-xslt/pom.xml	2008-03-13 01:34:22 UTC (rev 70794)
+++ trunk/docbook-support/jbossorg-docbook-xslt/pom.xml	2008-03-13 02:30:11 UTC (rev 70795)
@@ -30,6 +30,16 @@
         </dependencies>
     </dependencyManagement>
 
+   <build>
+      <extensions>
+         <extension>
+            <groupId>org.apache.maven.wagon</groupId>
+            <artifactId>wagon-webdav</artifactId>
+            <version>1.0-beta-2</version>
+         </extension>
+      </extensions>
+   </build>
+
     <distributionManagement>
         <repository>
             <!-- Copy the dist to the local checkout of the JBoss maven2 repo ${maven.repository.root} -->
@@ -38,12 +48,11 @@
             <id>repository.jboss.org</id>
             <url>file://${maven.repository.root}</url>
         </repository>
-        <snapshotRepository>
+        <!--<snapshotRepository>
             <id>snapshots.jboss.org</id>
             <name>JBoss Snapshot Repository</name>
-            <!--<url>dav:https://snapshots.jboss.org/maven2</url>-->
-            <url>file://${maven.snapshot.root}</url>
-        </snapshotRepository>
+            <url>dav:https://snapshots.jboss.org/maven2</url>
+        </snapshotRepository>-->
     </distributionManagement>
 
 </project>

Added: trunk/docbook-support/jbossorg-docbook-xslt/src/main/resources/xslt/org/jboss/highlight-pdf.xsl
===================================================================
--- trunk/docbook-support/jbossorg-docbook-xslt/src/main/resources/xslt/org/jboss/highlight-pdf.xsl	                        (rev 0)
+++ trunk/docbook-support/jbossorg-docbook-xslt/src/main/resources/xslt/org/jboss/highlight-pdf.xsl	2008-03-13 02:30:11 UTC (rev 70795)
@@ -0,0 +1,81 @@
+<?xml version='1.0'?>
+
+<!--
+        Copyright 2007 Red Hat, Inc.
+        License: GPL
+        Author: Mark Newton <mark.newton at jboss.org>
+-->
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+                xmlns:fo="http://www.w3.org/1999/XSL/Format"
+                version="1.0"
+                xmlns:rf="java:org.jboss.highlight.FORendererFactory"
+                xmlns:jhr="java:org.jboss.highlight.renderer.JavaFORenderer" 
+                xmlns:jfr="org.jboss.highlight.renderer.Renderer"
+                exclude-result-prefixes="jhr,rf">
+
+  <xsl:template match="programlisting[@role='XML']|programlisting[@role='JAVA']|programlisting[@role='XHTML']|programlisting[@role='JSP']|programlisting[@role='CSS']">
+		
+    <xsl:variable name="role">
+      <xsl:value-of select="s:toUpperCase(string(@role))" xmlns:s="java:java.lang.String"/>
+    </xsl:variable>
+
+    <xsl:variable name="child.content">
+      <xsl:apply-templates/>
+    </xsl:variable>
+
+    <fo:block background-color="#F5F5F5" border-style="solid" border-width=".3mm" border-color="#CCCCCC" font-family="verdana,helvetica,sans-serif" space-before="12pt" space-after="12pt" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve">
+
+    <xsl:variable name="factory" select="rf:instance()"/>
+    <xsl:variable name="hiliter" select="rf:getRenderer($factory, string($role))"/>
+
+    <xsl:choose>
+      <xsl:when test="$hiliter">
+        <xsl:variable name="caller" select="jfr:parseText($hiliter, string($child.content), 'UTF-8')"/>
+        <xsl:variable name="noOfTokens" select="jhr:getNoOfTokens($caller)"/>
+
+        <xsl:call-template name="iterator">
+          <xsl:with-param name="caller" select="$caller"/>
+          <xsl:with-param name="noOfTokens" select="$noOfTokens"/>
+        </xsl:call-template>
+      </xsl:when>
+    </xsl:choose>
+
+    </fo:block>
+  </xsl:template>
+
+
+  <xsl:template name="iterator">
+    <xsl:param name="caller"/>
+    <xsl:param name="noOfTokens"/>
+    <xsl:param name="i" select="0"/>
+
+    <xsl:variable name="style" select="jhr:getStyle($caller, $i)"/>
+    <xsl:variable name="token" select="jhr:getToken($caller, $i)"/>
+    <!--<xsl:if test="$token = '\n'">
+      </fo:block>
+      <fo:block>
+    </xsl:if>-->
+
+    <xsl:choose>
+      <xsl:when test="$style = 'java_keyword'"> <fo:inline color="#7F1B55" font-weight="bold"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'java_plain'"> <fo:inline color="#000000"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'java_type'"> <fo:inline color="#000000"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'java_separator'"> <fo:inline color="#000000"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'java_literal'"> <fo:inline color="#2A00FF"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'java_comment'"> <fo:inline color="#3F7F5F"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'java_javadoc_comment'"> <fo:inline color="#3F5FBF" font-style="italic"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'java_operator'"> <fo:inline color="#000000"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:when test="$style = 'java_javadoc_tag'"> <fo:inline color="#7F9FBF" font-weight="bold" font-style="italic"> <xsl:value-of select="$token"/> </fo:inline></xsl:when>
+      <xsl:otherwise> <fo:inline color="black"> <xsl:value-of select="$token"/> </fo:inline></xsl:otherwise>
+    </xsl:choose>
+
+    <xsl:if test="$i &lt; $noOfTokens - 1">
+      <xsl:call-template name="iterator">
+        <xsl:with-param name="caller" select="$caller"/>
+        <xsl:with-param name="noOfTokens" select="$noOfTokens"/>
+        <xsl:with-param name="i" select="$i + 1"/>
+      </xsl:call-template>  
+    </xsl:if>
+  </xsl:template>
+                
+</xsl:stylesheet>

Modified: trunk/docbook-support/jbossorg-docbook-xslt/src/main/resources/xslt/org/jboss/main-pdf.xsl
===================================================================
--- trunk/docbook-support/jbossorg-docbook-xslt/src/main/resources/xslt/org/jboss/main-pdf.xsl	2008-03-13 01:34:22 UTC (rev 70794)
+++ trunk/docbook-support/jbossorg-docbook-xslt/src/main/resources/xslt/org/jboss/main-pdf.xsl	2008-03-13 02:30:11 UTC (rev 70795)
@@ -22,6 +22,8 @@
 <xsl:import href="http://docbook.sourceforge.net/release/xsl/1.72.0/fo/docbook.xsl"/>
 <xsl:import href="http://docbook.sourceforge.net/release/xsl/1.72.0/fo/graphics.xsl"/>
 <xsl:import href="redhat.xsl"/>
+<xsl:import href="highlight-pdf.xsl"/>
+
 <xsl:param name="alignment">left</xsl:param>
 <xsl:param name="use.extensions" select="0"/>
 <xsl:param name="tablecolumns.extensions" select="0"/>




More information about the jboss-cvs-commits mailing list