1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137
|
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:output method="text" encoding="UTF-8" doctype-system="xkb.dtd"/>
<xsl:template match="/xkbConfigRegistry">
<xsl:text><![CDATA[.\" WARNING: this man page is autogenerated. Do not edit or you will lose all your changes.
.TH XKEYBOARD-CONFIG __miscmansuffix__ __vendorversion__
.SH NAME
xkeyboard-config \- XKB data description files
.SH DESCRIPTION
xkeyboard-config provides the description files for the X Keyboard
Extension (XKB). The configuration options below are usually applied with
setxkbmap(__appmansuffix__).
.SH MODELS
.TS
left,box;
lB lB
___
lB l.
Model Description
]]></xsl:text>
<xsl:apply-templates select="modelList"/>
<xsl:text><![CDATA[
.TE
.SH LAYOUTS
.TS
left,box;
lB lB
____
lB l.
Layout(Variant) Description
]]></xsl:text>
<xsl:apply-templates select="layoutList"/>
<xsl:text><![CDATA[
.TE
.SH OPTIONS
]]></xsl:text>
<xsl:apply-templates select="optionList"/>
<xsl:text><![CDATA[
.SH FILES
__xkb_base__/compat
__xkb_base__/compiled
__xkb_base__/geometry
__xkb_base__/keycodes
__xkb_base__/keymap
__xkb_base__/rules
__xkb_base__/semantics
__xkb_base__/symbols
__xkb_base__/types
.SH SEE ALSO
setxkbmap(__appmansuffix__)
]]></xsl:text>
</xsl:template>
<!-- split model/description into a normal table -->
<xsl:template match="modelList">
<xsl:for-each select="model">
<xsl:value-of select="configItem/name"/><xsl:text>	</xsl:text><xsl:value-of select="configItem/description"/>
<xsl:text> </xsl:text>
</xsl:for-each>
</xsl:template>
<!-- split layout/variant/description into a table like this
layout1 description
layout1(variant1) description
layout1(variant2) description
layout2 description
layout2(variant1) description
-->
<xsl:template match="layoutList">
<xsl:for-each select="layout">
<xsl:value-of select="configItem/name"/>
<xsl:text>	</xsl:text>
<xsl:value-of select="configItem/description"/>
<xsl:text> </xsl:text>
<xsl:for-each select="variantList/variant">
<xsl:value-of select="../../configItem/name"/>
<xsl:text>(</xsl:text>
<xsl:value-of select="configItem/name"/>
<xsl:text>)</xsl:text>
<xsl:text>	</xsl:text>
<xsl:value-of select="configItem/description"/>
<xsl:text> </xsl:text>
</xsl:for-each>
<xsl:text> </xsl:text>
<xsl:text>_ </xsl:text>
</xsl:for-each>
</xsl:template>
<!-- split option into a table like this
option description:
optarg description
optarg description
optarg description
option2 description:
optarg description
optarg description
-->
<xsl:template match="optionList">
<xsl:for-each select="group">
<xsl:text><![CDATA[
.SS]]></xsl:text>
<xsl:text> </xsl:text>
<xsl:value-of select="configItem/description"/>
<xsl:text><![CDATA[
.BR
.TS
left,box;
lB lB
___
lB l.
Option Description
]]></xsl:text>
<xsl:for-each select="option">
<xsl:value-of select="configItem/name"/>
<xsl:text>	</xsl:text>
<xsl:value-of select="configItem/description"/>
<xsl:text> </xsl:text>
</xsl:for-each>
<xsl:text><![CDATA[
.TE
]]></xsl:text>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
|