de revision 5a35480e
1154daed1Smrg 2154daed1Smrg// based on a keyboard map from an 'xkb/symbols/de' file 3154daed1Smrg// 45a35480eSmrg// $XKeyboardConfig$ 5154daed1Smrg// $XFree86: xc/programs/xkbcomp/symbols/de,v 1.6 2003/09/08 13:12:51 pascal Exp $ 6154daed1Smrg 7154daed1Smrgdefault 8154daed1Smrgxkb_symbols "basic" { 9154daed1Smrg 10154daed1Smrg include "latin(type4)" 11154daed1Smrg 12154daed1Smrg name[Group1]="Germany"; 13154daed1Smrg 14154daed1Smrg key <AE02> { [ 2, quotedbl, twosuperior, oneeighth ] }; 15154daed1Smrg key <AE03> { [ 3, section, threesuperior, sterling ] }; 16154daed1Smrg key <AE04> { [ 4, dollar, onequarter, currency ] }; 17154daed1Smrg 18154daed1Smrg key <AE11> {type[Group1]="FOUR_LEVEL_PLUS_LOCK", symbols[Group1]= 19154daed1Smrg [ssharp, question, backslash, questiondown, 0x1001E9E ]}; 20154daed1Smrg// The unicode capital letter sharp s U+1E9E is transformed to "SS" 21154daed1Smrg// to match the rules for capitalizing sharp s in german. 22154daed1Smrg// If the capital sharp s is needed, delete the line 23154daed1Smrg// starting with <U1E9C> from /usr/share/X11/locale/iso8859-15/Compose. 24154daed1Smrg// If both doubled S and capital sharp s are needed, use 0x1001E9E 25154daed1Smrg// for capital sharp s and some free unicode codepoint like 0x1001E9C 26154daed1Smrg// for doubled S. Don`t forget to change this in the Compose file, too. 27154daed1Smrg 28154daed1Smrg key <AE12> { [dead_acute, dead_grave, dead_cedilla, dead_ogonek ] }; 29154daed1Smrg 30154daed1Smrg key <AD03> { [ e, E, EuroSign, EuroSign ] }; 31154daed1Smrg key <AD06> { [ z, Z, leftarrow, yen ] }; 32154daed1Smrg key <AD11> { [udiaeresis, Udiaeresis, dead_diaeresis, dead_abovering ] }; 33154daed1Smrg key <AD12> { [ plus, asterisk, dead_tilde, dead_macron ] }; 34154daed1Smrg 35154daed1Smrg key <AC10> { [odiaeresis, Odiaeresis, dead_doubleacute, dead_doubleacute ] }; 36154daed1Smrg key <AC11> { [adiaeresis, Adiaeresis, dead_circumflex, dead_caron] }; 37154daed1Smrg key <TLDE> { [dead_circumflex, degree, notsign, notsign ] }; 38154daed1Smrg 39154daed1Smrg key <BKSL> { [numbersign, apostrophe, dead_grave, dead_breve ] }; 40154daed1Smrg key <AB01> { [ y, Y, guillemotleft, less ] }; 41154daed1Smrg 42154daed1Smrg include "kpdl(comma)" 43154daed1Smrg 44154daed1Smrg include "level3(ralt_switch)" 45154daed1Smrg}; 46154daed1Smrg 47154daed1Smrgpartial alphanumeric_keys 48154daed1Smrgxkb_symbols "nodeadkeys" { 49154daed1Smrg 50154daed1Smrg // modify the basic German layout to not have any dead keys 51154daed1Smrg 52154daed1Smrg include "de(basic)" 53154daed1Smrg name[Group1]="Germany - Eliminate dead keys"; 54154daed1Smrg 55154daed1Smrg key <TLDE> { [asciicircum, degree, notsign, notsign ] }; 56154daed1Smrg key <AE12> { [apostrophe, grave, cedilla, cedilla ] }; 57154daed1Smrg key <AD11> { [udiaeresis, Udiaeresis, diaeresis, diaeresis ] }; 58154daed1Smrg key <AD12> { [ plus, asterisk, asciitilde, macron ] }; 59154daed1Smrg key <AC10> { [odiaeresis, Odiaeresis, doubleacute, doubleacute ] }; 60154daed1Smrg key <AC11> { [adiaeresis, Adiaeresis, asciicircum, asciicircum ] }; 61154daed1Smrg key <BKSL> { [numbersign, apostrophe, grave, grave ] }; 62154daed1Smrg key <AB10> { [ minus, underscore, dead_belowdot, abovedot ] }; 63154daed1Smrg}; 64154daed1Smrg 65154daed1Smrgpartial alphanumeric_keys 66154daed1Smrgxkb_symbols "deadgraveacute" { 67154daed1Smrg // modify the basic German layout to have only acute and grave 68154daed1Smrg // as dead keys (tilde and circumflex are needed as spacing characters 69154daed1Smrg // in many programming languages) 70154daed1Smrg 71154daed1Smrg include "de(basic)" 72154daed1Smrg name[Group1]="Germany - Dead grave acute"; 73154daed1Smrg 74154daed1Smrg key <TLDE> { [asciicircum, degree, notsign, notsign ] }; 75154daed1Smrg key <AD12> { [ plus, asterisk, asciitilde, dead_macron ] }; 76154daed1Smrg key <BKSL> { [numbersign, apostrophe, grave, grave ] }; 77154daed1Smrg}; 78154daed1Smrg 79154daed1Smrgpartial alphanumeric_keys 80154daed1Smrgxkb_symbols "deadacute" { 81154daed1Smrg // modify the basic German layout to have only acute as 82154daed1Smrg // dead keys (ASCII grave, tilde and circumflex are needed as 83154daed1Smrg // spacing characters in many programming languages and text formatters) 84154daed1Smrg 85154daed1Smrg include "de(deadgraveacute)" 86154daed1Smrg 87154daed1Smrg name[Group1]="Germany - Dead acute"; 88154daed1Smrg 89154daed1Smrg key <AE12> { [dead_acute, grave, dead_cedilla, dead_ogonek ] }; 90154daed1Smrg key <BKSL> { [numbersign, apostrophe, dead_grave, dead_grave ] }; 91154daed1Smrg}; 92154daed1Smrg 93154daed1Smrgpartial alphanumeric_keys 94154daed1Smrgxkb_symbols "ro" { 95154daed1Smrg // add romanian-specific letters to the basic German layout. 96154daed1Smrg // Romanian symbols are accessible with combination of <AltGr> and 97154daed1Smrg // 'a', 's', 't', 'i', 'ä (ä)' (+<Shift> for capital letters). 98154daed1Smrg // To view romanian-specific symbols, add "export LC_CTYPE=ro_RO" 99154daed1Smrg // or "export LC_CTYPE=de_DE.utf8" to your .profile. 100154daed1Smrg 101154daed1Smrg include "de(basic)" 102154daed1Smrg 103154daed1Smrg name[Group1]="Germany - Romanian keyboard with German letters"; 104154daed1Smrg 105154daed1Smrg key <AD05> { [ t, T, tcedilla, Tcedilla ] }; 106154daed1Smrg key <AD08> { [ i, I, icircumflex, Icircumflex ] }; 107154daed1Smrg key <AC01> { [ a, A, acircumflex, Acircumflex ] }; 108154daed1Smrg key <AC02> { [ s, S, scedilla, Scedilla ] }; 109154daed1Smrg key <AC11> { [ adiaeresis, Adiaeresis, abreve, Abreve ] }; 110154daed1Smrg}; 111154daed1Smrg 112154daed1Smrgpartial alphanumeric_keys 113154daed1Smrgxkb_symbols "ro_nodeadkeys" { 114154daed1Smrg // add romanian-specific letters to the German nodeadkeys layout. 115154daed1Smrg // Read the comment for de_ro ! 116154daed1Smrg 117154daed1Smrg include "de(nodeadkeys)" 118154daed1Smrg name[Group1]="Germany - Romanian keyboard with German letters, eliminate dead keys"; 119154daed1Smrg 120154daed1Smrg key <AD05> { [ t, T, tcedilla, Tcedilla ] }; 121154daed1Smrg key <AD08> { [ i, I, icircumflex, Icircumflex ] }; 122154daed1Smrg key <AC01> { [ a, A, acircumflex, Acircumflex ] }; 123154daed1Smrg key <AC02> { [ s, S, scedilla, Scedilla ] }; 124154daed1Smrg key <AC11> { [ adiaeresis, Adiaeresis, abreve, Abreve ] }; 125154daed1Smrg}; 126154daed1Smrg 127154daed1Smrg// German Dvorak keymap by Thorsten Staerk (www.staerk.de/thorsten) 128154daed1Smrg// Have acute and grave as dead keys, tilde and circumflex alive as they are needed 129154daed1Smrg// in many programming languages. 130154daed1Smrg// to use this keymap, use a 105-key-keyboard and the command setxkbmap -model pc105 -layout dvorak -variant de 131154daed1Smrg// source: http://www-lehre.informatik.uni-osnabrueck.de/~rfreund/dvorak.php 132154daed1Smrgpartial alphanumeric_keys 133154daed1Smrgxkb_symbols "dvorak" { 134154daed1Smrg include "us(dvorak)" 135154daed1Smrg 136154daed1Smrg name[Group1]="Germany - Dvorak"; 137154daed1Smrg 138154daed1Smrg key <TLDE> { [ asciicircum, degree ] }; 139154daed1Smrg 140154daed1Smrg key <AE01> { [ 1, exclam, onesuperior ] }; 141154daed1Smrg key <AE02> { [ 2, quotedbl, twosuperior ] }; 142154daed1Smrg key <AE03> { [ 3, section, threesuperior ] }; 143154daed1Smrg key <AE04> { [ 4, dollar, bar ] }; 144154daed1Smrg key <AE05> { [ 5, percent, bar ] }; 145154daed1Smrg key <AE06> { [ 6, ampersand, brokenbar ] }; 146154daed1Smrg key <AE07> { [ 7, slash, braceleft ] }; 147154daed1Smrg key <AE08> { [ 8, parenleft, bracketleft ] }; 148154daed1Smrg key <AE09> { [ 9, parenright, bracketright ] }; 149154daed1Smrg key <AE10> { [ 0, equal, braceright ] }; 150154daed1Smrg key <AE11> { [ plus, asterisk, asciitilde ] }; 151154daed1Smrg key <AE12> { [ less, greater, dead_grave ] }; 152154daed1Smrg 153154daed1Smrg key <AD01> { [ udiaeresis, Udiaeresis, at ] }; 154154daed1Smrg key <AD02> { [ comma, semicolon, dead_diaeresis ] }; 155154daed1Smrg key <AD03> { [ period, colon ] }; 156154daed1Smrg key <AD08> { [ c, C, copyright, Cacute ] }; 157154daed1Smrg key <AD09> { [ t, T, trademark ] }; 158154daed1Smrg key <AD10> { [ z, Z, zabovedot, Zabovedot ] }; 159154daed1Smrg key <AD11> { [ question, ssharp ] }; 160154daed1Smrg key <AD12> { [ slash, backslash, dead_acute ] }; 161154daed1Smrg 162154daed1Smrg key <AC01> { [ a, A, at, aogonek ] }; 163154daed1Smrg key <AC02> { [ o, O, oacute, Oacute ] }; 164154daed1Smrg key <AC03> { [ e, E, EuroSign, eogonek ] }; 165154daed1Smrg key <AC04> { [ i, I ] }; 166154daed1Smrg key <AC05> { [ u, U ] }; 167154daed1Smrg key <AC06> { [ h, H ] }; 168154daed1Smrg key <AC07> { [ d, D ] }; 169154daed1Smrg key <AC08> { [ r, R, registered ] }; 170154daed1Smrg key <AC09> { [ n, N, nacute, Nacute ] }; 171154daed1Smrg key <AC10> { [ s, S, sacute, Sacute] }; 172154daed1Smrg key <AC11> { [ l, L, lstroke, Lstroke ] }; 173154daed1Smrg 174154daed1Smrg key <AB01> { [ odiaeresis, Odiaeresis ] }; 175154daed1Smrg key <AB02> { [ q, Q, at ] }; 176154daed1Smrg key <AB07> { [ m, M, mu ] }; 177154daed1Smrg key <AB10> { [ numbersign, apostrophe ] }; 178154daed1Smrg 179154daed1Smrg key <BKSL> { [ minus, underscore, hyphen, diaeresis] }; 180154daed1Smrg 181154daed1Smrg key <LSGT> { [ adiaeresis, Adiaeresis, bar ] }; 182154daed1Smrg 183154daed1Smrg include "level3(ralt_switch)" 184154daed1Smrg}; 185154daed1Smrg 186154daed1Smrgpartial alphanumeric_keys 187154daed1Smrgxkb_symbols "Sundeadkeys" { 188154daed1Smrg 189154daed1Smrg // For naming consistency 190154daed1Smrg 191154daed1Smrg include "de(basic)" 192154daed1Smrg 193154daed1Smrg}; 194154daed1Smrg 195154daed1Smrgpartial alphanumeric_keys 196154daed1Smrgxkb_symbols "sundeadkeys" { 197154daed1Smrg 198154daed1Smrg // For naming consistency 199154daed1Smrg 200154daed1Smrg include "de(Sundeadkeys)" 201154daed1Smrg 202154daed1Smrg name[Group1]="Germany - Sun dead keys"; 203154daed1Smrg}; 204154daed1Smrg 205154daed1Smrg 206154daed1Smrg// German NEO Eurokeys-Style 207154daed1Smrg// adopted 2004 by Hanno Behrens <Hanno.Behrens@gmx.de> 208154daed1Smrg// inspired by Dvorak/de-ergo http://www.goebel-consult.de/de-ergo/ 209154daed1Smrg 210154daed1Smrgpartial alphanumeric_keys 211154daed1Smrgxkb_symbols "neo" { 212154daed1Smrg 213154daed1Smrg include "us(dvorak)" 214154daed1Smrg 215154daed1Smrg name[Group1]= "Germany - Neostyle"; 216154daed1Smrg 217154daed1Smrg key <TLDE> { [ dead_circumflex, degree, notsign, paragraph ] }; 218154daed1Smrg 219154daed1Smrg key <AE01> { [ 1, exclam, exclamdown, onesuperior ] }; 220154daed1Smrg key <AE02> { [ 2, quotedbl, dead_diaeresis, twosuperior ] }; 221154daed1Smrg key <AE03> { [ 3, paragraph, sterling, threesuperior ] }; 222154daed1Smrg key <AE04> { [ 4, dollar, currency, onequarter ] }; 223154daed1Smrg key <AE05> { [ 5, percent, bar, onehalf ] }; 224154daed1Smrg key <AE06> { [ 6, ampersand, brokenbar, threequarters ] }; 225154daed1Smrg key <AE07> { [ 7, slash, braceleft, division ] }; 226154daed1Smrg key <AE08> { [ 8, parenleft, bracketleft, guillemotleft ] }; 227154daed1Smrg key <AE09> { [ 9, parenright, bracketright, guillemotright ] }; 228154daed1Smrg key <AE10> { [ 0, equal, braceright ] }; 229154daed1Smrg key <AE11> { [ minus, underscore, hyphen, diaeresis ] }; 230154daed1Smrg key <AE12> { [ dead_acute,dead_grave, dead_cedilla, dead_ogonek ] }; 231154daed1Smrg 232154daed1Smrg key <AD01> { [ q, Q, at ] }; 233154daed1Smrg key <AD02> { [ v, V, masculine, ordfeminine ] }; 234154daed1Smrg key <AD03> { [ l, L, lstroke, Lstroke ] }; 235154daed1Smrg key <AD04> { [ c, C, ccedilla,copyright ] }; 236154daed1Smrg key <AD05> { [ w, W, Greek_omega, Greek_OMEGA ] }; 237154daed1Smrg key <AD06> { [ k, K, Greek_kappa, Greek_KAPPA ] }; 238154daed1Smrg key <AD07> { [ h, H, Greek_epsilon, Greek_EPSILON ] }; 239154daed1Smrg key <AD08> { [ g, G, Greek_gamma, Greek_GAMMA ] }; 240154daed1Smrg key <AD09> { [ f, F, ordfeminine ] }; 241154daed1Smrg key <AD10> { [ j, J, Greek_iota, Greek_IOTA ] }; 242154daed1Smrg key <AD11> { [ ssharp, question, backslash, questiondown ] }; 243154daed1Smrg key <AD12> { [ plus, asterisk, dead_tilde, plusminus ] }; 244154daed1Smrg 245154daed1Smrg key <AC01> { [ u, U, Greek_delta, Greek_DELTA ] }; 246154daed1Smrg key <AC02> { [ i, I, idotless, Iabovedot ] }; 247154daed1Smrg key <AC03> { [ a, A, at, Greek_alpha ] }; 248154daed1Smrg key <AC04> { [ e, E, EuroSign, cent ] }; 249154daed1Smrg key <AC05> { [ o, O, oslash, Ooblique ] }; 250154daed1Smrg key <AC06> { [ s, S, Greek_sigma, Greek_SIGMA ] }; 251154daed1Smrg key <AC07> { [ n, N, Greek_nu, Greek_NU ] }; 252154daed1Smrg key <AC08> { [ r, R, registered,trademark ] }; 253154daed1Smrg key <AC09> { [ t, T, thorn, THORN ] }; //Greek_theta, Greek_THETA/tcedilla, Tcedilla 254154daed1Smrg key <AC10> { [ d, D, eth, ETH ] }; 255154daed1Smrg key <AC11> { [ y, Y, yen ] }; 256154daed1Smrg key <BKSL> { [ numbersign, apostrophe, grave ] }; 257154daed1Smrg 258154daed1Smrg 259154daed1Smrg key <LSGT> { [ less, greater, guillemotleft, guillemotright ] }; 260154daed1Smrg key <AB01> { [ odiaeresis, Odiaeresis, oe, OE ] }; 261154daed1Smrg key <AB02> { [ udiaeresis,Udiaeresis, apostrophe, asciitilde ] }; 262154daed1Smrg key <AB03> { [ adiaeresis, Adiaeresis, ae, AE ] }; 263154daed1Smrg key <AB04> { [ p, P, thorn, THORN ] }; 264154daed1Smrg key <AB05> { [ z, Z, Greek_zeta, Greek_ZETA ] }; 265154daed1Smrg key <AB06> { [ b, B, Greek_beta, Greek_BETA ] }; 266154daed1Smrg key <AB07> { [ m, M, mu, Greek_MU ] }; 267154daed1Smrg key <AB08> { [ comma, semicolon, dead_cedilla, cedilla ] }; 268154daed1Smrg key <AB09> { [ period, colon, periodcentered ] }; 269154daed1Smrg key <AB10> { [ x, X, multiply ] }; 270154daed1Smrg 271154daed1Smrg key <SPCE> { [ space, space, nobreakspace, nobreakspace ] }; 272154daed1Smrg 273154daed1Smrg 274154daed1Smrg // End "Editing" section, begin "Keypad" 275154daed1Smrg// key <NMLK> { [ Num_Lock, Pointer_EnableKeys ] }; 276154daed1Smrg 277154daed1Smrg// Ungrab cancels server/keyboard/pointer grabs 278154daed1Smrg// key <KPDV> { [KP_Divide, KP_Divide, division] }; 279154daed1Smrg 280154daed1Smrg// ClsGrb kills whichever client has a grab in effect 281154daed1Smrg// key <KPMU> { [KP_Multiply, KP_Multiply, periodcentered] }; 282154daed1Smrg 283154daed1Smrg// -VMode switches to the previous video mode 284154daed1Smrg// key <KPSU> { [ KP_Subtract, KP_Subtract, notsign] }; 285154daed1Smrg 286154daed1Smrg key <KP7> { [ KP_Home, KP_7, seveneighths, oneeighth ] }; 287154daed1Smrg key <KP8> { [ KP_Up, KP_8, uparrow, fiveeighths ] }; 288154daed1Smrg key <KP9> { [ KP_Prior, KP_9, threeeighths, threeeighths ] }; 289154daed1Smrg 290154daed1Smrg// +VMode switches to the next video mode 291154daed1Smrg// key <KPAD> { [ KP_Add, KP_Add, plusminus ] }; 292154daed1Smrg 293154daed1Smrg key <KP4> { [ KP_Left, KP_4, leftarrow, onequarter ] }; 294154daed1Smrg key <KP5> { [ KP_Begin, KP_5, dagger, onehalf ] }; 295154daed1Smrg key <KP6> { [ KP_Right, KP_6, rightarrow, threequarters ] }; 296154daed1Smrg 297154daed1Smrg key <KP1> { [ KP_End, KP_1, onesuperior, onesuperior ] }; 298154daed1Smrg key <KP2> { [ KP_Down, KP_2, downarrow, twosuperior ] }; 299154daed1Smrg key <KP3> { [ KP_Next, KP_3, threesuperior, threesuperior ] }; 300154daed1Smrg key <KPEN> { [ KP_Enter ] }; 301154daed1Smrg key <KPEQ> { [ KP_Equal ] }; 302154daed1Smrg 303154daed1Smrg key <KP0> { [ KP_Insert, KP_0, percent, degree ] }; 304154daed1Smrg key <KPDL> { [ KP_Delete, KP_Decimal, periodcentered, comma ] }; 305154daed1Smrg // End "Keypad" section 306154daed1Smrg 307154daed1Smrg include "level3(ralt_switch)" 308154daed1Smrg}; 309154daed1Smrg 310154daed1Smrg// Copied from macintosh_vndr/de 311154daed1Smrg// olh@suse.de very close to MacOS map 312154daed1Smrg 313154daed1Smrgpartial alphanumeric_keys 314154daed1Smrgxkb_symbols "mac" { 315154daed1Smrg 316154daed1Smrg include "de" 317154daed1Smrg name[Group1]= "Germany - Macintosh"; 318154daed1Smrg 319154daed1Smrg // Alphanumeric section 320154daed1Smrg key <AE01> { [ 1, exclam, exclamdown, at ] }; 321154daed1Smrg key <AE05> { [ 5, percent, bracketleft ] }; 322154daed1Smrg key <AE06> { [ 6, ampersand, bracketright ] }; 323154daed1Smrg key <AE07> { [ 7, slash, bar, backslash ] }; 324154daed1Smrg key <AE08> { [ 8, parenleft, braceleft, asciitilde ] }; 325154daed1Smrg key <AE09> { [ 9, parenright, braceright ] }; 326154daed1Smrg key <AD01> { [ q, Q, guillemotleft, guillemotright ] }; 327154daed1Smrg key <AD04> { [ r, R, registered ] }; 328154daed1Smrg key <AD07> { [ u, U, diaeresis, Aacute ] }; 329154daed1Smrg key <AD08> { [ i, I, slash, Ucircumflex ] }; 330154daed1Smrg key <AD11> { [ udiaeresis, Udiaeresis, periodcentered, degree ] }; 331154daed1Smrg key <AD12> { [ plus, asterisk, asciitilde ] }; 332154daed1Smrg key <AC01> { [ a, A, aring, Aring ] }; 333154daed1Smrg key <AC05> { [ g, G, copyright ] }; 334154daed1Smrg key <AC06> { [ h, H, ordfeminine ] }; 335154daed1Smrg key <AC09> { [ l, L, at ] }; 336154daed1Smrg key <AC10> { [ odiaeresis, Odiaeresis, dead_acute ] }; 337154daed1Smrg key <AB06> { [ n, N, asciitilde ] }; 338154daed1Smrg 339154daed1Smrg}; 340154daed1Smrg 341154daed1Smrgpartial alphanumeric_keys 342154daed1Smrgxkb_symbols "mac_nodeadkeys" { 343154daed1Smrg // modify the standard German mac layout to not have any dead keys 344154daed1Smrg include "de(mac)" 345154daed1Smrg name[Group1]= "Germany - Macintosh, eliminate dead keys"; 346154daed1Smrg key <AE04> { [ 4, dollar, onequarter, currency ] }; 347154daed1Smrg 348154daed1Smrg key <TLDE> { [ asciicircum, degree, notsign ] }; 349154daed1Smrg key <AE12> { [ acute, grave, cedilla ] }; 350154daed1Smrg key <AD11> { [ udiaeresis, Udiaeresis, diaeresis ] }; 351154daed1Smrg key <AD12> { [ plus, asterisk, asciitilde, macron ] }; 352154daed1Smrg key <AC10> { [ odiaeresis, Odiaeresis, acute ] }; 353154daed1Smrg key <AC11> { [ adiaeresis, Adiaeresis, asciicircum ] }; 354154daed1Smrg 355154daed1Smrg key <BKSL> { [ numbersign, apostrophe, grave ] }; 356154daed1Smrg}; 357