1<?xml version="1.0" encoding="UTF-8"?> 2<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > 3 <xsl:output method="text" encoding="UTF-8" doctype-system="xkb.dtd"/> 4 <xsl:template match="/xkbConfigRegistry"> 5 <xsl:text><![CDATA[.\" WARNING: this man page is autogenerated. Do not edit or you will lose all your changes. 6.TH XKEYBOARD-CONFIG 7 @vendorversion@ 7.SH NAME 8xkeyboard-config \- XKB data description files 9.SH DESCRIPTION 10xkeyboard-config provides the description files for the X Keyboard 11Extension (XKB) and for libxkbcommon. Typically it is 12the task of the desktop environment to apply the 13requested configuration. Users running an X server can also use the 14setxkbmap(1) tool to apply keyboard configuration at runtime or configure XKB 15settings in the xorg.conf(5). 16 17.SH XKB DATA FILES LOAD PATHS 18 19xkeyboard-config provides the XKB data files installed in 20@xkb_base@. User-specific data files may be elsewhere but it depends on 21the tool whether those files are loaded. For example, the libxkbcommon 22library will by default load XKB data files from the user's home directory. 23See the libxkbcommon documentation for details. 24 25.SH THE "CUSTOM" LAYOUT 26 27The "custom" layout is a layout that is listed as available to tools 28reading the data files but is not actually provided by xkeyboard-config. 29A user may save a layout specification in the @xkb_base@/symbols/custom file 30and that layout will be available to most tools interacting with the 31xkeyboard-config data files. This is primarily aimed at systems running X 32where additional lookup paths cannot easily be added. 33.PP 34Because the "custom" layout is merely listed as available but not 35provided by xkeyboard-config, the layout will not be overwritten on updates. 36 37.SH MODELS 38.TS 39left,box; 40lB lB 41___ 42lB l. 43Model Description 44]]></xsl:text> 45 <xsl:apply-templates select="modelList"/> 46 <xsl:text><![CDATA[ 47.TE 48.SH LAYOUTS 49.TS 50left,box; 51lB lB 52____ 53lB l. 54Layout(Variant) Description 55]]></xsl:text> 56 <xsl:apply-templates select="layoutList"/> 57 <xsl:text><![CDATA[ 58.TE 59.SH OPTIONS 60]]></xsl:text> 61 <xsl:apply-templates select="optionList"/> 62 <xsl:text><![CDATA[ 63.SH FILES 64@xkb_base@/compat 65 66@xkb_base@/compiled 67 68@xkb_base@/geometry 69 70@xkb_base@/keycodes 71 72@xkb_base@/keymap 73 74@xkb_base@/rules 75 76@xkb_base@/semantics 77 78@xkb_base@/symbols 79 80@xkb_base@/types 81 82.SH SEE ALSO 83setxkbmap(1) 84]]></xsl:text> 85 </xsl:template> 86 87<!-- split model/description into a normal table --> 88 <xsl:template match="modelList"> 89 <xsl:for-each select="model"> 90 <xsl:value-of select="configItem/name"/><xsl:text>	</xsl:text><xsl:value-of select="configItem/description"/> 91 <xsl:text> </xsl:text> 92 </xsl:for-each> 93 </xsl:template> 94 95<!-- split layout/variant/description into a table like this 96 97 layout1 description 98 layout1(variant1) description 99 layout1(variant2) description 100 layout2 description 101 layout2(variant1) description 102--> 103 <xsl:template match="layoutList"> 104 <xsl:for-each select="layout"> 105 <xsl:value-of select="configItem/name"/> 106 <xsl:text>	</xsl:text> 107 <xsl:value-of select="configItem/description"/> 108 <xsl:text> </xsl:text> 109 <xsl:for-each select="variantList/variant"> 110 <xsl:value-of select="../../configItem/name"/> 111 <xsl:text>(</xsl:text> 112 <xsl:value-of select="configItem/name"/> 113 <xsl:text>)</xsl:text> 114 <xsl:text>	</xsl:text> 115 <xsl:value-of select="configItem/description"/> 116 <xsl:text> </xsl:text> 117 </xsl:for-each> 118 <xsl:text> </xsl:text> 119 <xsl:text>_ </xsl:text> 120 </xsl:for-each> 121 </xsl:template> 122 123<!-- split option into a table like this 124 125option description: 126 optarg description 127 optarg description 128 optarg description 129 130option2 description: 131 optarg description 132 optarg description 133--> 134 <xsl:template match="optionList"> 135 <xsl:for-each select="group"> 136 <xsl:text><![CDATA[ 137.SS]]></xsl:text> 138 <xsl:text> </xsl:text> 139 <xsl:value-of select="configItem/description"/> 140 <xsl:text><![CDATA[ 141.BR 142.TS 143left,box; 144lB lB 145___ 146lB l. 147Option Description 148]]></xsl:text> 149 <xsl:for-each select="option"> 150 <xsl:value-of select="configItem/name"/> 151 <xsl:text>	</xsl:text> 152 <xsl:value-of select="configItem/description"/> 153 <xsl:text> </xsl:text> 154 </xsl:for-each> 155 <xsl:text><![CDATA[ 156.TE 157 158]]></xsl:text> 159 </xsl:for-each> 160 </xsl:template> 161</xsl:stylesheet> 162