summaryrefslogtreecommitdiff
path: root/man/man.xsl
blob: a5bd14d01ae9ef103a96c04f07edb7210b3ad61b (plain)
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>&#9;</xsl:text><xsl:value-of select="configItem/description"/>
            <xsl:text>&#10;</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>&#9;</xsl:text>
            <xsl:value-of select="configItem/description"/>
            <xsl:text>&#10;</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>&#9;</xsl:text>
                <xsl:value-of select="configItem/description"/>
                <xsl:text>&#10;</xsl:text>
            </xsl:for-each>
            <xsl:text>&#10;</xsl:text>
            <xsl:text>_&#10;</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>&#10;</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>&#9;</xsl:text>
                <xsl:value-of select="configItem/description"/>
                <xsl:text>&#10;</xsl:text>
            </xsl:for-each>
            <xsl:text><![CDATA[
.TE

]]></xsl:text>
        </xsl:for-each>
    </xsl:template>
</xsl:stylesheet>