?? common.xsl
字號:
<?xml version="1.0"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!DOCTYPE xsl:stylesheet [
<!ENTITY nbsp SYSTEM "util/nbsp.xml">
<!ENTITY lf SYSTEM "util/lf.xml">
]>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns="http://www.w3.org/1999/xhtml">
<!-- -->
<!-- Please, don't hard-code output strings! Use the language -->
<!-- files and the translation "stuff"... -->
<!-- -->
<!-- Injected variables: -->
<!-- $is-chm - (boolean) target is for CHM generation or not -->
<!-- $is-zip - (boolean) target is for ZIP generation or not -->
<!-- $message - (node-set) localized common text snippets -->
<!-- $doclang - (string) document language -->
<!-- $output-encoding - (string) MIME charset name of the output -->
<!-- encoding -->
<!-- Constants used for case translation -->
<xsl:variable name="lowercase" select="'abcdefghijklmnopqrstuvwxyz'" />
<xsl:variable name="uppercase" select="'ABCDEFGHIJKLMNOPQRSTUVWXYZ'" />
<!-- space separated list of blockelements defined in common.dtd -->
<!-- used for inline content catching in <example>s -->
<xsl:variable name="blockelements">
p example note table ul ol dl pre img blockquote
</xsl:variable>
<!-- relative path to /manual/ -->
<xsl:variable name="metafile" select="document(/*/@metafile)/metafile" />
<xsl:variable name="path" select="$metafile/relpath" />
<!-- load outsourced page types -->
<xsl:include href="moduleindex.xsl" />
<xsl:include href="directiveindex.xsl" />
<xsl:include href="manualpage.xsl" />
<xsl:include href="synopsis.xsl" />
<xsl:include href="sitemap.xsl" />
<xsl:include href="indexpage.xsl" />
<xsl:include href="quickreference.xsl" />
<xsl:include href="faq.xsl" />
<!-- load utility snippets -->
<xsl:include href="util/modtrans.xsl" />
<!-- make sure, we set relative anchors only, if we're actually -->
<!-- transforming a modulefile (see <directive> template) -->
<xsl:variable name="in-modulesynopsis" select="boolean(/modulesynopsis)" />
<!-- when referencing to a directory, we may need to complete the path -->
<!-- with the index file (for offline applications like *.chm files) -->
<xsl:variable name="index-file">
<xsl:if test="$is-chm or $is-zip">index.html</xsl:if>
</xsl:variable>
<!-- it may be desired to open external targets in a new window -->
<xsl:variable name="ext-target" select="boolean($is-chm)" />
<!-- #################################################################### -->
<!-- Utility templates for constructing pages -->
<!-- #################################################################### -->
<!-- ==================================================================== -->
<!-- HTML head -->
<!-- ==================================================================== -->
<xsl:template name="head">
<head>
<!-- the meta element is necessary for offline handling like CHM -->
<xsl:choose>
<xsl:when test="$is-chm or $is-zip">
<meta http-equiv="Content-Type"
content="text/html; charset={$output-encoding}" />
</xsl:when>
<xsl:otherwise>
<xsl:comment>
&lf;
<xsl:text> </xsl:text>
<xsl:text>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</xsl:text>
<xsl:text>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</xsl:text>
&lf;
<xsl:text> </xsl:text>
<xsl:text>This file is generated from xml source: </xsl:text>
<xsl:text>DO NOT EDIT</xsl:text>
&lf;
<xsl:text> </xsl:text>
<xsl:text>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</xsl:text>
<xsl:text>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</xsl:text>
&lf;
<xsl:text> </xsl:text>
</xsl:comment>
</xsl:otherwise>
</xsl:choose>&lf;
<title>
<xsl:choose>
<xsl:when test="name">
<xsl:value-of select="name"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="title"/>
</xsl:otherwise>
</xsl:choose>
<xsl:text> </xsl:text>
<xsl:value-of select="normalize-space($message[@id='apachetitle'])"/>
</title>&lf;
<!-- chm files get a slightly different stylesheet -->
<xsl:choose>
<xsl:when test="$is-chm">
<link type="text/css" rel="stylesheet" media="all"
href="{$path}/style/css/manual-chm.css" />
</xsl:when>
<!-- zip packages do also -->
<xsl:when test="$is-zip">
<link title="Main stylesheet" type="text/css" media="all"
rel="stylesheet"
href="{$path}/style/css/manual-zip.css" />&lf;
<link title="No Sidebar - Default font size" type="text/css" media="all"
rel="alternate stylesheet"
href="{$path}/style/css/manual-zip-100pc.css"/>
</xsl:when>
<xsl:otherwise>
<link title="Main stylesheet" type="text/css" media="all"
rel="stylesheet"
href="{$path}/style/css/manual.css" />&lf;
<link title="No Sidebar - Default font size" type="text/css" media="all"
rel="alternate stylesheet"
href="{$path}/style/css/manual-loose-100pc.css"/>
</xsl:otherwise>
</xsl:choose>&lf;
<link type="text/css" media="print"
rel="stylesheet"
href="{$path}/style/css/manual-print.css"/>
<!-- chm files do not need a favicon -->
<xsl:if test="not($is-chm or $is-zip)">&lf;
<link rel="shortcut icon" href="{$path}/images/favicon.ico" />
</xsl:if>
</head>
</xsl:template>
<!-- /head -->
<!-- ==================================================================== -->
<!-- page top -->
<!-- ==================================================================== -->
<xsl:template name="top">
<div id="page-header">&lf;
<xsl:call-template name="super-menu" />&lf;
<p class="apache">
<xsl:value-of select="normalize-space($message
[@id='apachehttpserver'])"/>
</p>&lf;
<img src="{$path}/images/feather.gif" alt="" />
</div>&lf; <!-- /page-header -->
<div class="up">
<a href="./{$index-file}">
<xsl:if test="parentdocument">
<xsl:attribute name="href">
<xsl:value-of select="parentdocument/@href"/>
</xsl:attribute>
<xsl:call-template name="helper.uri.fix">
<xsl:with-param name="uri" select="parentdocument/@href" />
</xsl:call-template>
</xsl:if>
<img src="{$path}/images/left.gif" alt="<-" title="<-" />
</a>
</div>&lf;
<div id="path">&lf;
<a href="http://www.apache.org/">
<xsl:if test="$ext-target">
<xsl:attribute name="target">_blank</xsl:attribute>
</xsl:if>
<xsl:value-of select="$message[@id='apache']" />
</a>
<xsl:text> > </xsl:text>
<a href="http://httpd.apache.org/">
<xsl:if test="$ext-target">
<xsl:attribute name="target">_blank</xsl:attribute>
</xsl:if>
<xsl:value-of select="$message[@id='http-server']" />
</a>
<xsl:text> > </xsl:text>
<a href="http://httpd.apache.org/docs/">
<xsl:if test="$ext-target">
<xsl:attribute name="target">_blank</xsl:attribute>
</xsl:if>
<xsl:value-of select="$message[@id='documentation']" />
</a>
<xsl:if test="not(../indexpage)">
<xsl:text> > </xsl:text>
<a href="{$path}/{$index-file}">
<xsl:value-of select="$message[@id='version']"/>
</a>
</xsl:if>
<xsl:if test="../modulesynopsis or ../directiveindex or ../quickreference">
<xsl:text> > </xsl:text>
<a href="./{$index-file}">
<xsl:value-of select="$message[@id='modules']"/>
</a>
</xsl:if>
<xsl:if test="parentdocument/text()">
<xsl:text> > </xsl:text>
<a href="{parentdocument/@href}">
<xsl:call-template name="helper.uri.fix">
<xsl:with-param name="uri" select="parentdocument/@href"/>
</xsl:call-template>
<xsl:value-of select="parentdocument"/>
</a>
</xsl:if>
</div> <!-- /path -->
</xsl:template>
<!-- /top -->
<!-- ==================================================================== -->
<!-- out of date -->
<!-- ==================================================================== -->
<xsl:template name="outofdate">
<xsl:if test="$metafile/variants/variant[.=$doclang]/@outdated = 'yes'">
&lf;
<div class="outofdate">
<xsl:value-of select="$message[@id='outofdate']"/>
</div>
</xsl:if>
</xsl:template>
<!-- ==================================================================== -->
<!-- page bottom -->
<!-- ==================================================================== -->
<xsl:template name="bottom">
<xsl:call-template name="langavail">
<xsl:with-param name="position" select="'bottom'" />
</xsl:call-template>
<div id="footer">&lf;
<p class="apache">
<xsl:text>Copyright 2006 The Apache Software Foundation.</xsl:text><br />
<xsl:value-of select="$message[@id='licensed']"/>
<xsl:text> </xsl:text>
<a href="http://www.apache.org/licenses/LICENSE-2.0">
<xsl:if test="$ext-target">
<xsl:attribute name="target">_blank</xsl:attribute>
</xsl:if>
<xsl:text>Apache License, Version 2.0</xsl:text>
</a>
<xsl:text>.</xsl:text>
</p>&lf;
<xsl:call-template name="super-menu"/>
</div> <!-- /footer -->
</xsl:template>
<!-- /bottom -->
<!-- ==================================================================== -->
<!-- build an "available languages" section -->
<!-- ==================================================================== -->
<xsl:template name="langavail">
<xsl:param name="position" select="'top'" />
<xsl:if test="not($is-chm or $is-zip)">
<div class="{$position}lang">&lf;
<p>
<span>
<xsl:value-of select="$message[@id='langavail']" />
<xsl:text>: </xsl:text>
</span>
<xsl:for-each select="$metafile/variants/variant">
<xsl:sort select="." />
<a href="{$path}/{.}{$metafile/path}{$metafile/basename}.html">
<xsl:if test="$metafile/basename = 'index'">
<xsl:attribute name="href">
<xsl:value-of
select="concat($path, '/', ., $metafile/path)" />
</xsl:attribute>
</xsl:if>
<xsl:if test="$doclang != .">
<xsl:attribute name="hreflang">
<xsl:value-of select="." />
</xsl:attribute>
<xsl:attribute name="rel">alternate</xsl:attribute>
</xsl:if>
<xsl:attribute name="title">
<xsl:value-of select="document(concat('../lang/', .,
'.xml'))
/language/messages/message
[@id='nativename']" />
</xsl:attribute>
<xsl:value-of select="." />
</a>
<xsl:if test="position() != last()">
<xsl:text> |
</xsl:text>
</xsl:if>
</xsl:for-each>
</p>&lf;
</div> <!-- /.{$position}lang -->
</xsl:if>
<xsl:if test="$position = 'top'">
<xsl:call-template name="outofdate" />
</xsl:if>
</xsl:template>
<!-- /langavail -->
<!-- ==================================================================== -->
<!-- Process a documentation section -->
<!-- ==================================================================== -->
<xsl:template match="section">
<xsl:call-template name="toplink" />&lf;
<div class="section">&lf;
<!-- Section heading -->
<h2>
<xsl:choose>
<xsl:when test="@id">
<a id="{@id}" name="{@id}">
<xsl:apply-templates select="title" mode="print" />
</a>
</xsl:when>
<xsl:otherwise>
<xsl:apply-templates select="title" mode="print" />
</xsl:otherwise>
</xsl:choose>
</h2>
<!-- Section body -->
<xsl:apply-templates />
</div> <!-- /.section -->
</xsl:template>
<!-- /section -->
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -