📄 generate-java.xsl
字号:
<xsl:element name="h3"><xsl:text>See Also</xsl:text></xsl:element><xsl:text disable-output-escaping="yes">
*
* <blockquote>
* </xsl:text>
<xsl:call-template name="example-link">
<xsl:with-param name="name" select="$name" />
<xsl:with-param name="class" select="$class" />
</xsl:call-template><xsl:element name="br" />
<xsl:text disable-output-escaping="yes">
* </blockquote>
</xsl:text>
</xsl:if>
</xsl:when>
<xsl:otherwise>
<xsl:apply-templates select="$documentation-root/documentation/topics/example[@name=$name and @class=$class and @scope=$scope and @type=$type]/description" mode="example" />
</xsl:otherwise>
</xsl:choose>
<xsl:text> */
</xsl:text>
</xsl:template>
<xsl:template match="description" mode="example">
<xsl:text>
*
* </xsl:text><xsl:element name="h3"><xsl:text>Example</xsl:text></xsl:element> <xsl:text>
*
</xsl:text>
<xsl:apply-templates select="*" />
</xsl:template>
<xsl:template match="text">
<xsl:choose>
<xsl:when test="ancestor::cell">
<xsl:apply-templates mode="text" />
<xsl:if test="position() != last()">
<xsl:element name="br" /><xsl:text>
* </xsl:text>
</xsl:if>
</xsl:when>
<xsl:when test="preceding-sibling::text">
<xsl:text> * </xsl:text><xsl:element name="p"><xsl:apply-templates mode="text" /></xsl:element>
<xsl:text>
</xsl:text>
<xsl:call-template name="separate-paragraph" />
</xsl:when>
<xsl:otherwise>
<xsl:text> * </xsl:text><xsl:apply-templates mode="text" />
<xsl:if test="ancestor::*[name() = 'method' or name() = 'property']">
<xsl:text>
* </xsl:text>
<xsl:element name="a">
<xsl:attribute name="name"><xsl:value-of select="../../@name" /></xsl:attribute>
</xsl:element>
</xsl:if>
<xsl:text>
</xsl:text>
<xsl:call-template name="separate-paragraph" />
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="title">
<xsl:text> * </xsl:text><xsl:element name="h3"><xsl:apply-templates /></xsl:element><xsl:text>
</xsl:text>
<xsl:call-template name="separate-paragraph" />
</xsl:template>
<xsl:template match="list">
<xsl:text> * </xsl:text><xsl:element name="ul">
<xsl:apply-templates /><xsl:text> * </xsl:text></xsl:element><xsl:text>
</xsl:text>
<xsl:call-template name="separate-paragraph" />
</xsl:template>
<xsl:template match="item">
<xsl:text> * </xsl:text><xsl:element name="li"><xsl:apply-templates /></xsl:element>
</xsl:template>
<xsl:template match="code">
<xsl:text> * </xsl:text><xsl:element name="pre">
<xsl:apply-templates mode="comments" />
</xsl:element><xsl:text>
</xsl:text>
<xsl:call-template name="separate-paragraph" />
</xsl:template>
<xsl:template match="table">
<xsl:text> * </xsl:text><xsl:element name="table">
<xsl:attribute name="border">1</xsl:attribute>
<xsl:attribute name="cellspacing">0</xsl:attribute>
<xsl:attribute name="cellpadding">3</xsl:attribute>
<xsl:apply-templates select="*" /><xsl:text>
* </xsl:text>
</xsl:element><xsl:text>
</xsl:text>
<xsl:call-template name="separate-paragraph" />
</xsl:template>
<xsl:template match="row">
<xsl:text>
* </xsl:text><xsl:element name="tr">
<xsl:apply-templates select="*" /><xsl:text>
* </xsl:text>
</xsl:element>
</xsl:template>
<xsl:template match="cell">
<xsl:text>
* </xsl:text><xsl:element name="td">
<xsl:attribute name="valign">top</xsl:attribute>
<xsl:apply-templates select="*" />
</xsl:element>
</xsl:template>
<xsl:template match="see">
<xsl:text> * </xsl:text><xsl:choose>
<xsl:when test="preceding-sibling::see">
<xsl:apply-templates mode="text" /><xsl:element name="br" />
</xsl:when>
<xsl:otherwise>
<xsl:element name="h3"><xsl:text>See Also</xsl:text></xsl:element><xsl:text disable-output-escaping="yes">
*
* <blockquote>
* </xsl:text>
<xsl:if test="$external-examples and (ancestor::class or ancestor::method or ancestor::property)">
<xsl:variable name="type">
<xsl:choose>
<xsl:when test="ancestor::class"><xsl:value-of select="'class'" /></xsl:when>
<xsl:otherwise><xsl:value-of select="'member'" /></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:variable name="name" select="../../@name" />
<xsl:variable name="class">
<xsl:choose>
<xsl:when test="ancestor::class"><xsl:value-of select="$name" /></xsl:when>
<xsl:otherwise><xsl:value-of select="../../@class" /></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:variable name="scope" select="../../@scope" />
<xsl:if test="$external-examples and (ancestor::class or ancestor::method or ancestor::property) and $documentation-root/documentation/topics/example[@name=$name and @class=$class and @scope=$scope and @type=$type]/description">
<xsl:call-template name="example-link">
<xsl:with-param name="name" select="$name" />
<xsl:with-param name="class" select="$class" />
</xsl:call-template><xsl:element name="br" />
<xsl:text>
* </xsl:text>
</xsl:if>
</xsl:if>
<xsl:apply-templates mode="text" /><xsl:element name="br" />
</xsl:otherwise>
</xsl:choose><xsl:text>
</xsl:text>
<xsl:if test="not(following-sibling::see)">
<xsl:text disable-output-escaping="yes"> * </blockquote>
</xsl:text>
<xsl:call-template name="separate-paragraph" />
</xsl:if>
</xsl:template>
<xsl:template match="link">
<xsl:call-template name="link" />
</xsl:template>
<xsl:template match="link" mode="text">
<xsl:call-template name="link" />
</xsl:template>
<xsl:template match="text()" mode="text" >
<xsl:call-template name="escape-text" />
</xsl:template>
<xsl:template match="text()" mode="comments" >
<xsl:call-template name="convert-comments" />
</xsl:template>
<xsl:template name="example-link">
<xsl:param name="name" />
<xsl:param name="class" />
<xsl:variable name="prefix">
<xsl:choose>
<xsl:when test="ancestor::class">
<xsl:value-of select="$name" />
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="concat($class, '.', $name)" />
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:element name="a">
<xsl:attribute name="href"><xsl:value-of select="concat($prefix, '-example.html')" /></xsl:attribute>
<xsl:text>Example</xsl:text>
</xsl:element>
</xsl:template>
<xsl:template name="link">
<xsl:variable name="id" select="@id" />
<xsl:variable name="reference" select="$documentation-root/documentation/references/reference[@id=$id]" />
<xsl:choose>
<xsl:when test="ancestor::*[name() = 'class' or name() = 'method' or name() = 'property'] and $reference[@type = 'class']">
<xsl:text>{@link </xsl:text>
<xsl:variable name="name">
<xsl:call-template name="descope-name">
<xsl:with-param name="name" select="$reference/@name" />
</xsl:call-template>
</xsl:variable>
<xsl:choose>
<xsl:when test="$name = .">
<xsl:value-of select="$name" />
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$name" />
<xsl:text> </xsl:text><xsl:apply-templates mode="text" />
</xsl:otherwise>
</xsl:choose>
<xsl:text>}</xsl:text>
</xsl:when>
<xsl:when test="$reference[@type = 'class']">
<xsl:element name="a">
<xsl:attribute name="href">
<xsl:call-template name="descope-name">
<xsl:with-param name="name" select="$reference/@name" />
</xsl:call-template>
<xsl:text>.html</xsl:text>
</xsl:attribute>
<xsl:apply-templates />
</xsl:element>
</xsl:when>
<xsl:when test="$reference[@type = 'method' or @type = 'property']">
<xsl:element name="a">
<xsl:attribute name="href">
<xsl:call-template name="descope-name">
<xsl:with-param name="name" select="substring-before($reference/@name, '#')" />
</xsl:call-template>
<xsl:text>.html#</xsl:text>
<xsl:value-of select="substring-after($reference/@name, '#')" />
</xsl:attribute>
<xsl:apply-templates />
</xsl:element>
</xsl:when>
<xsl:when test="$reference[@type = 'example']">
<xsl:element name="a">
<xsl:attribute name="href">
<xsl:call-template name="descope-name">
<xsl:with-param name="name" select="$reference/@name" />
</xsl:call-template>
<xsl:text>-example.html</xsl:text>
</xsl:attribute>
<xsl:apply-templates />
</xsl:element>
</xsl:when>
<xsl:when test="$reference[@type = 'page']">
<xsl:element name="a">
<xsl:attribute name="href">
<xsl:value-of select="$reference/@name" />
<xsl:text>.html</xsl:text>
</xsl:attribute>
<xsl:apply-templates />
</xsl:element>
</xsl:when>
<xsl:otherwise>
<xsl:element name="a">
<xsl:attribute name="href"><xsl:value-of select="'#'" /></xsl:attribute>
<xsl:apply-templates />
</xsl:element>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="separate-paragraph">
<xsl:if test="position() != last()">
<xsl:text> *
</xsl:text>
</xsl:if>
</xsl:template>
<xsl:template name="descope-name">
<xsl:param name="name" />
<xsl:choose>
<xsl:when test="starts-with($name, 'lotus.domino.')">
<xsl:value-of select="substring-after($name, 'lotus.domino.')" />
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$name" />
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="escape-text">
<!--xsl:if test="starts-with(., '@')"><xsl:text>\</xsl:text></xsl:if-->
<xsl:param name="text" select="." />
<xsl:call-template name="replace-all">
<xsl:with-param name="text">
<xsl:call-template name="replace-all">
<xsl:with-param name="text">
<xsl:call-template name="replace-all">
<xsl:with-param name="text">
<xsl:call-template name="replace-all">
<xsl:with-param name="text" select="$text" />
<xsl:with-param name="find" select="'/*'" />
<xsl:with-param name="replace" select="'/...'" />
</xsl:call-template>
</xsl:with-param>
<xsl:with-param name="find" select="'*/'" />
<xsl:with-param name="replace" select="'.../'" />
</xsl:call-template>
</xsl:with-param>
<xsl:with-param name="find" select="'c:\notes\data\'" />
<xsl:with-param name="replace" select="'c:/notes/data/'" />
</xsl:call-template>
</xsl:with-param>
<xsl:with-param name="find" select="'c:\notes\'" />
<xsl:with-param name="replace" select="'c:/notes/'" />
</xsl:call-template>
</xsl:template>
<xsl:template name="convert-comments">
<xsl:param name="text" select="." />
<xsl:call-template name="replace-all">
<xsl:with-param name="text">
<xsl:call-template name="replace-all">
<xsl:with-param name="text" select="$text" />
<xsl:with-param name="find" select="'*/'" />
</xsl:call-template>
</xsl:with-param>
<xsl:with-param name="find" select="'/*'" />
<xsl:with-param name="replace" select="'//'" />
</xsl:call-template>
</xsl:template>
<xsl:template name="replace-all">
<xsl:param name="text" />
<xsl:param name="find" />
<xsl:param name="replace" />
<xsl:choose>
<xsl:when test="contains($text, $find)">
<xsl:value-of select="substring-before($text, $find)" />
<xsl:value-of select="$replace" />
<xsl:call-template name="replace-all">
<xsl:with-param name="text">
<xsl:value-of select="substring-after($text, $find)" />
</xsl:with-param>
<xsl:with-param name="find" select="$find" />
<xsl:with-param name="replace" select="$replace" />
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$text" />
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -