VirtualBox

source: vbox/trunk/doc/manual/docbook-refentry-to-H-help.xsl@ 96300

最後變更 在這個檔案從96300是 96300,由 vboxsync 提交於 3 年 前

doc: comment fixing

  • 屬性 svn:eol-style 設為 native
  • 屬性 svn:keywords 設為 Author Date Id Revision
  • 屬性 svn:mergeinfo 設為 (切換已刪除的分支)
    /branches/VBox-3.0/doc/manual/docbook-refentry-to-manual-overview.xsl58652,​70973
    /branches/VBox-3.2/doc/manual/docbook-refentry-to-manual-overview.xsl66309,​66318
    /branches/VBox-4.0/doc/manual/docbook-refentry-to-manual-overview.xsl70873
    /branches/VBox-4.1/doc/manual/docbook-refentry-to-manual-overview.xsl74233,​78414,​78691,​82579,​85941,​85944-85947,​85949-85950,​85953,​86701,​86728,​87009
    /branches/VBox-4.2/doc/manual/docbook-refentry-to-manual-overview.xsl82653,​86229-86230,​86234,​86529,​91503-91504,​91506-91508,​91510,​91514-91515,​91521
    /branches/VBox-4.3/doc/manual/docbook-refentry-to-manual-overview.xsl91223,​94066,​94839,​94897,​95154,​95164,​95167,​95295,​95338,​95353-95354,​95356,​95367,​95451,​95475,​95477,​95480,​95507,​95640,​95659,​95661,​95663,​98913-98915,​99358
    /branches/VBox-4.3/trunk/doc/manual/docbook-refentry-to-manual-overview.xsl91223
    /branches/andy/draganddrop/doc/manual/docbook-refentry-to-manual-overview.xsl90781-91268
    /branches/andy/guestctrl20/doc/manual/docbook-refentry-to-manual-overview.xsl78916,​78930
    /branches/andy/pdmaudio/doc/manual/docbook-refentry-to-manual-overview.xsl94582,​94641,​94654,​94688,​94778,​94783,​94816,​95197,​95215-95216,​95250,​95279,​95505-95506,​95543,​95694,​96323,​96470-96471,​96582,​96587,​96802-96803,​96817,​96904,​96967,​96999,​97020-97021,​97025,​97050,​97099
    /branches/bird/hardenedwindows/doc/manual/docbook-refentry-to-manual-overview.xsl92692-94610
    /branches/dsen/gui/doc/manual/docbook-refentry-to-manual-overview.xsl79076-79078,​79089,​79109-79110,​79112-79113,​79127-79130,​79134,​79141,​79151,​79155,​79157-79159,​79193,​79197
    /branches/dsen/gui2/doc/manual/docbook-refentry-to-manual-overview.xsl79224,​79228,​79233,​79235,​79258,​79262-79263,​79273,​79341,​79345,​79354,​79357,​79387-79388,​79559-79569,​79572-79573,​79578,​79581-79582,​79590-79591,​79598-79599,​79602-79603,​79605-79606,​79632,​79635,​79637,​79644
    /branches/dsen/gui3/doc/manual/docbook-refentry-to-manual-overview.xsl79645-79692
    /trunk/src/doc/manual/docbook-refentry-to-manual-overview.xsl92342
檔案大小: 5.9 KB
 
1<?xml version="1.0"?>
2<!--
3 docbook-refentry-to-H-help.xsl:
4 XSLT stylesheet for generating command and sub-command
5 constants header for the built-in help.
6-->
7<!--
8 Copyright (C) 2006-2020 Oracle Corporation
9
10 This file is part of VirtualBox Open Source Edition (OSE), as
11 available from http://www.alldomusa.eu.org. This file is free software;
12 you can redistribute it and/or modify it under the terms of the GNU
13 General Public License (GPL) as published by the Free Software
14 Foundation, in version 2 as it comes in the "COPYING" file of the
15 VirtualBox OSE distribution. VirtualBox OSE is distributed in the
16 hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
17-->
18
19<xsl:stylesheet
20 version="1.0"
21 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
22 xmlns:str="http://xsltsl.org/string"
23 >
24
25 <xsl:import href="string.xsl"/>
26
27 <xsl:output method="text" version="1.0" encoding="utf-8" indent="yes"/>
28 <xsl:strip-space elements="*"/>
29
30 <xsl:param name="g_sMode" select="not-specified"/>
31
32
33 <!-- Default action, do nothing. -->
34 <xsl:template match="node()|@*"/>
35
36 <!--
37 Generate SCOPE enum for a refentry. We convert the
38 cmdsynopsisdiv/cmdsynopsis IDs into constants.
39 -->
40 <xsl:template match="refentry">
41 <xsl:variable name="RefEntry" select="."/>
42 <xsl:variable name="sRefEntryId" select="@id"/>
43 <xsl:variable name="sBaseNm">
44 <xsl:choose>
45 <xsl:when test="contains($sRefEntryId, '-')"> <!-- Multi level command. -->
46 <xsl:call-template name="str:to-upper">
47 <xsl:with-param name="text" select="translate(substring-after($sRefEntryId, '-'), '-', '_')"/>
48 </xsl:call-template>
49 </xsl:when>
50 <xsl:otherwise> <!-- Simple command. -->
51 <xsl:call-template name="str:to-upper">
52 <xsl:with-param name="text" select="translate($sRefEntryId, '-', '_')"/>
53 </xsl:call-template>
54 </xsl:otherwise>
55 </xsl:choose>
56 </xsl:variable>
57
58 <xsl:choose>
59 <!-- Generate subcommand enums and defines -->
60 <xsl:when test="$g_sMode = 'subcmd'">
61 <!-- Start enum type and start off with the refentry id. -->
62 <xsl:text>
63enum
64{
65#define HELP_SCOPE_</xsl:text>
66 <xsl:value-of select="$sBaseNm"/>
67 <xsl:value-of select="substring(' ',1,56 - string-length($sBaseNm) - 11)"/>
68 <xsl:text> RT_BIT_64(HELP_SCOPE_</xsl:text><xsl:value-of select="$sBaseNm"/><xsl:text>_BIT)
69 HELP_SCOPE_</xsl:text><xsl:value-of select="$sBaseNm"/><xsl:text>_BIT = 0</xsl:text>
70
71 <!-- Synopsis IDs -->
72 <xsl:for-each select="./refsynopsisdiv/cmdsynopsis[@id != concat('synopsis-', $sRefEntryId)]">
73 <xsl:variable name="sSubNm">
74 <xsl:text>HELP_SCOPE_</xsl:text>
75 <xsl:call-template name="str:to-upper">
76 <xsl:with-param name="text" select="translate(substring-after(substring-after(@id, '-'), '-'), '-', '_')"/>
77 </xsl:call-template>
78 </xsl:variable>
79 <xsl:text>,
80#define </xsl:text>
81 <xsl:value-of select="$sSubNm"/>
82 <xsl:value-of select="substring(' ',1,56 - string-length($sSubNm))"/>
83 <xsl:text> RT_BIT_64(</xsl:text><xsl:value-of select="$sSubNm"/><xsl:text>_BIT)
84 </xsl:text>
85 <xsl:value-of select="$sSubNm"/><xsl:text>_BIT</xsl:text>
86 </xsl:for-each>
87
88 <!-- Add scoping info for refsect1 and refsect2 IDs that aren't part of the synopsis. -->
89 <xsl:for-each select=".//refsect1[@id] | .//refsect2[@id]">
90 <xsl:variable name="sThisId" select="@id"/>
91 <xsl:if test="not($RefEntry[@id = $sThisId]) and not($RefEntry/refsynopsisdiv/cmdsynopsis[@id = concat('synopsis-', $sThisId)])">
92 <xsl:variable name="sSubNm">
93 <xsl:text>HELP_SCOPE_</xsl:text>
94 <xsl:choose>
95 <xsl:when test="contains($sRefEntryId, '-')"> <!-- Multi level command. -->
96 <xsl:call-template name="str:to-upper">
97 <xsl:with-param name="text" select="translate(substring-after(@id, '-'), '-', '_')"/>
98 </xsl:call-template>
99 </xsl:when>
100 <xsl:otherwise> <!-- Simple command. -->
101 <xsl:call-template name="str:to-upper">
102 <xsl:with-param name="text" select="translate(@id, '-', '_')"/>
103 </xsl:call-template>
104 </xsl:otherwise>
105 </xsl:choose>
106 </xsl:variable>
107 <xsl:text>,
108#define </xsl:text>
109 <xsl:value-of select="$sSubNm"/>
110 <xsl:value-of select="substring(' ',1,56 - string-length($sSubNm))"/>
111 <xsl:text> RT_BIT_64(</xsl:text><xsl:value-of select="$sSubNm"/><xsl:text>_BIT)
112 </xsl:text>
113 <xsl:value-of select="$sSubNm"/><xsl:text>_BIT</xsl:text>
114 </xsl:if>
115 </xsl:for-each>
116
117 <!-- Done - complete the enum. -->
118 <xsl:text>,
119 HELP_SCOPE_</xsl:text><xsl:value-of select="$sBaseNm"/><xsl:text>_END
120};
121AssertCompile((int)HELP_SCOPE_</xsl:text><xsl:value-of select="$sBaseNm"/><xsl:text>_END &gt;= 1);
122AssertCompile((int)HELP_SCOPE_</xsl:text><xsl:value-of select="$sBaseNm"/><xsl:text>_END &lt; 64);
123AssertCompile(RT_BIT_64(HELP_SCOPE_</xsl:text><xsl:value-of select="$sBaseNm"/><xsl:text>_END - 1) &amp; RTMSGREFENTRYSTR_SCOPE_MASK);
124</xsl:text>
125 </xsl:when>
126
127 <!-- Generate command enum value. -->
128 <xsl:when test="$g_sMode = 'cmd'">
129 <xsl:text> HELP_CMD_</xsl:text><xsl:value-of select="$sBaseNm"/><xsl:text>,
130</xsl:text>
131 </xsl:when>
132
133 <!-- Shouldn't happen. -->
134 <xsl:otherwise>
135 <xsl:message terminate="yes">Bad or missing g_sMode string parameter value.</xsl:message>
136 </xsl:otherwise>
137 </xsl:choose>
138 </xsl:template>
139
140</xsl:stylesheet>
141
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette