linux/X gelöscht, Keybuddy2 wieder komplett entfernt

This commit is contained in:
qwertfisch 2021-02-16 02:56:53 +01:00 committed by Gitea
parent 100c1b810e
commit 58b12f6881
49 changed files with 0 additions and 22398 deletions

View File

@ -1,38 +0,0 @@
all: portable \
grafik \
linux/bin/installiere_neo \
windows/kbdneo2/Treiber \
Compose
# wo befinden sich die zu bearbeitenden Dateien (bzw. eigentlich nur Name
# des Parameters)
windows/kbdneo2/Treiber:
-make -kC windows/kbdneo2/Treiber
portable:
-make -kC portable deploy
grafik:
-make -kC grafik
linux/bin/installiere_neo:
-make -kC linux
Compose:
-make -C Compose XCompose
svnclean:
-make -C portable clean
-make -C linux clean
-make -C windows/kbdneo2/Treiber clean
-make -C Compose clean
clean: svnclean
-make -kC grafik clean
svnupdate:
make svnclean
svn up
make -k
.PHONY: all clean svnupdate svnclean portable grafik linux/bin/installiere_neo windows/kbdneo2/Treiber Compose

View File

@ -1,12 +0,0 @@
partial xkb_compatibility "caps_lock" {
// Keysym Caps_Lock locks Lock modifier.
// With this, the keysym Caps_Lock can be used without binding the whole
// key to a real modifier.
// This is essential when you don't want to use caps lock on the first
// level.
// This should not have any compatibility issues when used together with
// other layouts which don't utilize this capability.
interpret Caps_Lock {
action = LockMods(modifiers = Lock);
};
};

View File

@ -1,51 +0,0 @@
// Fairly complete set of symbol interpretations
// to provide reasonable default behavior
default partial xkb_compatibility "default" {
virtual_modifiers LevelFive;
interpret.repeat= False;
setMods.clearLocks= True;
latchMods.clearLocks= True;
latchMods.latchToLock= True;
interpret ISO_Level5_Shift+Any {
useModMapMods= level1;
virtualModifier= LevelFive;
action= SetMods(modifiers=LevelFive);
};
interpret ISO_Level5_Shift {
action= SetMods(modifiers=LevelFive);
};
interpret ISO_Level5_Latch+Any {
virtualModifier= LevelFive;
action= LatchMods(modifiers=LevelFive);
};
interpret ISO_Level5_Latch {
action= LatchMods(modifiers=LevelFive);
};
interpret ISO_Level5_Lock+Any {
virtualModifier= LevelFive;
action= LockMods(modifiers=LevelFive);
};
interpret ISO_Level5_Lock {
action= LockMods(modifiers=LevelFive);
};
};
partial xkb_compatibility "level5_lock" {
// This defines a Level5-Lock using the NumLock real modifier in order to
// create arbitrary level-behaviour, which would not be possible with the
// virtual modifier.
// See also: types/level5 : EIGHT_LEVEL_LEVEL_FIVE_LOCK
// See also: symbols/level5(lock)
virtual_modifiers NumLock;
interpret ISO_Level5_Lock {
action = LockMods(modifiers = NumLock);
};
};

View File

@ -1,122 +0,0 @@
default partial xkb_compatibility "misc" {
virtual_modifiers Alt,Meta,Super,Hyper,ScrollLock;
// Interpretations for some other useful keys
interpret Terminate_Server {
action = Terminate();
};
setMods.clearLocks= True;
// Sets the "Alt" virtual modifier
interpret Alt_L+Any {
//useModMapMods= level1;
virtualModifier= Alt;
action = SetMods(modifiers=modMapMods);
};
interpret Alt_L {
action = SetMods(modifiers=Alt);
};
interpret Alt_R+Any {
//useModMapMods= level1;
virtualModifier= Alt;
action = SetMods(modifiers=modMapMods);
};
interpret Alt_R {
action = SetMods(modifiers=Alt);
};
// Sets the "Meta" virtual modifier
interpret Meta_L+Any {
// useModMapMods= level1;
virtualModifier= Meta;
action = SetMods(modifiers=modMapMods);
};
interpret Meta_L {
action = SetMods(modifiers=Meta);
};
interpret Meta_R+Any {
//useModMapMods= level1;
virtualModifier= Meta;
action = SetMods(modifiers=modMapMods);
};
interpret Meta_R {
action = SetMods(modifiers=Meta);
};
// Sets the "Super" virtual modifier
interpret Super_L+Any {
// useModMapMods= level1;
virtualModifier= Super;
action = SetMods(modifiers=modMapMods);
};
interpret Super_L {
action = SetMods(modifiers=Super);
};
interpret Super_R+Any {
//useModMapMods= level1;
virtualModifier= Super;
action = SetMods(modifiers=modMapMods);
};
interpret Super_R {
action = SetMods(modifiers=Super);
};
// Sets the "Hyper" virtual modifier
interpret Hyper_L+Any {
// useModMapMods= level1;
virtualModifier= Hyper;
action = SetMods(modifiers=modMapMods);
};
interpret Hyper_L {
action = SetMods(modifiers=Hyper);
};
interpret Hyper_R+Any {
//useModMapMods= level1;
virtualModifier= Hyper;
action = SetMods(modifiers=modMapMods);
};
interpret Hyper_R {
action = SetMods(modifiers=Hyper);
};
// Sets the "ScrollLock" virtual modifier and
// makes it actually lock when pressed. Sets
// up a map for the scroll lock indicator.
interpret Scroll_Lock+Any {
virtualModifier= ScrollLock;
action = LockMods(modifiers=modMapMods);
};
include "ledscroll"
include "misc(assign_shift_left_action)"
};
partial xkb_compatibility "assign_shift_left_action" {
// Because of the irrevertable modifier mapping in symbols/pc <LFSH> is
// getting bound to the Lock modifier when using
// symbols/shift(both_capslock), creating unwanted behaviour.
// This is a quirk, to circumvent the problem.
interpret Shift_L {
action = SetMods(modifiers = Shift);
};
};

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,627 +0,0 @@
// based on a keyboard map from an 'xkb/symbols/de' file
default
xkb_symbols "basic" {
include "latin(type4)"
name[Group1]="German";
key <AE02> { [ 2, quotedbl, twosuperior, oneeighth ] };
key <AE03> { [ 3, section, threesuperior, sterling ] };
key <AE04> { [ 4, dollar, onequarter, currency ] };
key <AE11> {type[Group1]="FOUR_LEVEL_PLUS_LOCK", symbols[Group1]=
[ssharp, question, backslash, questiondown, 0x1001E9E ]};
// The unicode capital letter sharp s U+1E9E is transformed to "SS"
// to match the rules for capitalizing sharp s in german.
// If the capital sharp s is needed, delete the line
// starting with <U1E9C> from /usr/share/X11/locale/iso8859-15/Compose.
// If both doubled S and capital sharp s are needed, use 0x1001E9E
// for capital sharp s and some free unicode codepoint like 0x1001E9C
// for doubled S. Don`t forget to change this in the Compose file, too.
key <AE12> { [dead_acute, dead_grave, dead_cedilla, dead_ogonek ] };
key <AD03> { [ e, E, EuroSign, EuroSign ] };
key <AD06> { [ z, Z, leftarrow, yen ] };
key <AD11> { [udiaeresis, Udiaeresis, dead_diaeresis, dead_abovering ] };
key <AD12> { [ plus, asterisk, dead_tilde, dead_macron ] };
key <AC02> { [ s, S, U017F, U1E9E ] };
key <AC07> { [ j, J, dead_belowdot, dead_abovedot ] };
key <AC10> { [odiaeresis, Odiaeresis, dead_doubleacute, dead_belowdot ] };
key <AC11> { [adiaeresis, Adiaeresis, dead_circumflex, dead_caron ] };
key <TLDE> { [dead_circumflex, degree, U2032, U2033 ] };
key <BKSL> { [numbersign, apostrophe, rightsinglequotemark, dead_breve ] };
key <AB01> { [ y, Y, guillemotright, U203A ] };
key <AB02> { [ x, X, guillemotleft, U2039 ] };
key <AB04> { [ v, V, doublelowquotemark, singlelowquotemark ] };
key <AB05> { [ b, B, leftdoublequotemark, leftsinglequotemark ] };
key <AB06> { [ n, N, rightdoublequotemark, rightsinglequotemark ] };
key <AB08> { [ comma, semicolon, periodcentered, multiply ] };
key <AB09> { [ period, colon, U2026, division ] };
key <AB10> { [ minus, underscore, endash, emdash ] };
include "kpdl(comma)"
include "level3(ralt_switch)"
};
partial alphanumeric_keys
xkb_symbols "nodeadkeys" {
// modify the basic German layout to not have any dead keys
include "de(basic)"
name[Group1]="German (eliminate dead keys)";
key <TLDE> { [asciicircum, degree, notsign, notsign ] };
key <AE12> { [ acute, grave, cedilla, cedilla ] };
key <AD11> { [udiaeresis, Udiaeresis, diaeresis, diaeresis ] };
key <AD12> { [ plus, asterisk, asciitilde, macron ] };
key <AC10> { [odiaeresis, Odiaeresis, doubleacute, doubleacute ] };
key <AC11> { [adiaeresis, Adiaeresis, asciicircum, asciicircum ] };
key <BKSL> { [numbersign, apostrophe, grave, grave ] };
};
partial alphanumeric_keys
xkb_symbols "deadgraveacute" {
// modify the basic German layout to have only acute and grave
// as dead keys (tilde and circumflex are needed as spacing characters
// in many programming languages)
include "de(basic)"
name[Group1]="German (dead grave acute)";
key <TLDE> { [asciicircum, degree, notsign, notsign ] };
key <AD12> { [ plus, asterisk, asciitilde, dead_macron ] };
key <BKSL> { [numbersign, apostrophe, grave, grave ] };
};
partial alphanumeric_keys
xkb_symbols "deadacute" {
// modify the basic German layout to have only acute as
// dead keys (ASCII grave, tilde and circumflex are needed as
// spacing characters in many programming languages and text formatters)
include "de(deadgraveacute)"
name[Group1]="German (dead acute)";
key <AE12> { [dead_acute, grave, dead_cedilla, dead_ogonek ] };
key <BKSL> { [numbersign, apostrophe, dead_grave, dead_grave ] };
};
partial alphanumeric_keys
xkb_symbols "ro" {
// add romanian-specific letters to the basic German layout.
// Romanian symbols are accessible with combination of <AltGr> and
// 'a', 's', 't', 'i', 'ä (&auml)' (+<Shift> for capital letters).
// To view romanian-specific symbols, add "export LC_CTYPE=ro_RO"
// or "export LC_CTYPE=de_DE.utf8" to your .profile.
include "de(basic)"
name[Group1]="Romanian (Germany)";
key <AD05> { [ t, T, tcedilla, Tcedilla ] };
key <AD08> { [ i, I, icircumflex, Icircumflex ] };
key <AC01> { [ a, A, acircumflex, Acircumflex ] };
key <AC02> { [ s, S, scedilla, Scedilla ] };
key <AC11> { [ adiaeresis, Adiaeresis, abreve, Abreve ] };
};
partial alphanumeric_keys
xkb_symbols "ro_nodeadkeys" {
// add romanian-specific letters to the German nodeadkeys layout.
// Read the comment for de_ro !
include "de(nodeadkeys)"
name[Group1]="Romanian (Germany, eliminate dead keys)";
key <AD05> { [ t, T, tcedilla, Tcedilla ] };
key <AD08> { [ i, I, icircumflex, Icircumflex ] };
key <AC01> { [ a, A, acircumflex, Acircumflex ] };
key <AC02> { [ s, S, scedilla, Scedilla ] };
key <AC11> { [ adiaeresis, Adiaeresis, abreve, Abreve ] };
};
// German Dvorak keymap by Thorsten Staerk (www.staerk.de/thorsten)
// Have acute and grave as dead keys, tilde and circumflex alive as they are needed
// in many programming languages.
// to use this keymap, use a 105-key-keyboard and the command setxkbmap -model pc105 -layout dvorak -variant de
// source: http://www-lehre.informatik.uni-osnabrueck.de/~rfreund/dvorak.php
partial alphanumeric_keys
xkb_symbols "dvorak" {
include "us(dvorak)"
name[Group1]="German (Dvorak)";
key <TLDE> { [ asciicircum, degree ] };
key <AE01> { [ 1, exclam, onesuperior ] };
key <AE02> { [ 2, quotedbl, twosuperior ] };
key <AE03> { [ 3, section, threesuperior ] };
key <AE04> { [ 4, dollar, bar ] };
key <AE05> { [ 5, percent, bar ] };
key <AE06> { [ 6, ampersand, brokenbar ] };
key <AE07> { [ 7, slash, braceleft ] };
key <AE08> { [ 8, parenleft, bracketleft ] };
key <AE09> { [ 9, parenright, bracketright ] };
key <AE10> { [ 0, equal, braceright ] };
key <AE11> { [ plus, asterisk, asciitilde ] };
key <AE12> { [ less, greater, dead_grave ] };
key <AD01> { [ udiaeresis, Udiaeresis, at ] };
key <AD02> { [ comma, semicolon, dead_diaeresis ] };
key <AD03> { [ period, colon ] };
key <AD08> { [ c, C, copyright, Cacute ] };
key <AD09> { [ t, T, trademark ] };
key <AD10> { [ z, Z, zabovedot, Zabovedot ] };
key <AD11> { [ question, ssharp ] };
key <AD12> { [ slash, backslash, dead_acute ] };
key <AC01> { [ a, A, at, aogonek ] };
key <AC02> { [ o, O, oacute, Oacute ] };
key <AC03> { [ e, E, EuroSign, eogonek ] };
key <AC04> { [ i, I ] };
key <AC05> { [ u, U ] };
key <AC06> { [ h, H ] };
key <AC07> { [ d, D ] };
key <AC08> { [ r, R, registered ] };
key <AC09> { [ n, N, nacute, Nacute ] };
key <AC10> { [ s, S, sacute, Sacute] };
key <AC11> { [ l, L, lstroke, Lstroke ] };
key <AB01> { [ odiaeresis, Odiaeresis ] };
key <AB02> { [ q, Q, at ] };
key <AB07> { [ m, M, mu ] };
key <AB10> { [ numbersign, apostrophe ] };
key <BKSL> { [ minus, underscore, hyphen, diaeresis] };
key <LSGT> { [ adiaeresis, Adiaeresis, bar ] };
include "level3(ralt_switch)"
};
partial alphanumeric_keys
xkb_symbols "Sundeadkeys" {
// For naming consistency
include "de(basic)"
};
partial alphanumeric_keys
xkb_symbols "sundeadkeys" {
// For naming consistency
include "de(Sundeadkeys)"
name[Group1]="German (Sun dead keys)";
};
// German Neo-Layout Version 2
// adopted 2004 by Hanno Behrens <Hanno.Behrens@gmx.de>
// inspired by Dvorak/de-ergo http://www.goebel-consult.de/de-ergo/
//
// Authors:
// Stephan Hilb <stephan at ehilb dot de>
// <lucky at zankt dot net>
// Benjamin Kellermann <Benjamin dot Kellermann at gmx dot Germany>
// Erik Streb <mail at erikstreb dot de>
// and many other contributors
//
// http://www.neo-layout.org
//
// $Revision$, $Date$
partial alphanumeric_keys modifier_keys keypad_keys
xkb_symbols "neo_base" {
// Levels in Neo jargon
// --------------------------------------------------------------
// Ebene 1: normal
// Ebene 2: Shift
// Ebene 3: Mod3
// Ebene 4: Mod4 (for marking something use Shift + Mod4)
// Ebene 5: Shift + Mod3
// Ebene 6: Mod3 + Mod4
// Compose (not a level): Mod3 + Tab
// Feststelltaste (Capslock): Shift + Shift
// Mod4-Lock: Mod4 + Mod4
// Mod4-Lock: Shift + Mod3 + Tab
// Legend
// ===============
// Levels in Xkbmap jargon to be found here in the definitions.
// These are the levels used, and Xorg's translations:
// --------------------------------------------------------------
// Xorg: Level1 Level2 Level3 Level4 Level5 Level6 Level7 Level8
// Neo: Ebene1 Ebene2 Ebene3 Ebene5 Ebene4 Pseudo-Ebene Ebene6 ???
// Keys (Neo): None Shift Mod3 Mod3 + Shift Mod4 Mod4 + Shift Mod3 + Mod4 Mod3 + Mod4 + Shift
// Alphanumeric-keys
// ===============
key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK";
// Tab as Multi_key (Compose)
// --------------------------------------------------------------
key <TAB> { [ Tab, ISO_Left_Tab, Multi_key, ISO_Level5_Lock, NoSymbol, NoSymbol, NoSymbol, ISO_Level5_Lock ] };
// Number row
// --------------------------------------------------------------
key <TLDE> { [ dead_circumflex, dead_caron, U21BB, U02DE, dead_abovedot, Pointer_EnableKeys, dead_belowdot, NoSymbol ] };
key <AE01> { [ 1, degree, onesuperior, onesubscript, ordfeminine, NoSymbol, notsign, NoSymbol ] };
key <AE02> { [ 2, section, twosuperior, twosubscript, masculine, NoSymbol, logicalor, NoSymbol ] };
key <AE03> { [ 3, U2113, threesuperior, threesubscript, numerosign, NoSymbol, logicaland, NoSymbol ] };
key <AE04> { [ 4, guillemotright, U203A, femalesymbol, NoSymbol, NoSymbol, U22A5, NoSymbol ] };
key <AE05> { [ 5, guillemotleft, U2039, malesymbol, periodcentered, NoSymbol, U2221, NoSymbol ] };
key <AE06> { [ 6, dollar, cent, U26A5, sterling, NoSymbol, U2225, NoSymbol ] };
key <AE07> { [ 7, EuroSign, yen, U03F0, currency, NoSymbol, rightarrow, NoSymbol ] };
key <AE08> { [ 8, doublelowquotemark, singlelowquotemark, U27E8, Tab, ISO_Left_Tab, U221E, NoSymbol ] };
key <AE09> { [ 9, leftdoublequotemark, leftsinglequotemark, U27E9, KP_Divide, KP_Divide, variation, NoSymbol ] };
key <AE10> { [ 0, rightdoublequotemark, rightsinglequotemark, zerosubscript, KP_Multiply, KP_Multiply, emptyset, NoSymbol ] };
key <AE11> { [ minus, emdash, NoSymbol, U2011, KP_Subtract, KP_Subtract, hyphen, NoSymbol ] };
key <AE12> { [ dead_grave, dead_cedilla, dead_abovering, dead_dasia, dead_diaeresis, NoSymbol, dead_macron, NoSymbol ] };
// Top row
// --------------------------------------------------------------
key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK";
key <AD01> { [ x, X, ellipsis, Greek_xi, Prior, Prior, Greek_XI, NoSymbol ] };
key <AD02> { [ v, V, underscore, NoSymbol, BackSpace, BackSpace, radical, NoSymbol ] };
key <AD03> { [ l, L, bracketleft, Greek_lambda, Up, Up, Greek_LAMBDA, NoSymbol ] };
key <AD04> { [ c, C, bracketright, Greek_chi, Delete, Delete, U2102, NoSymbol ] };
key <AD05> { [ w, W, asciicircum, Greek_omega, Next, Next, Greek_OMEGA, NoSymbol ] };
key <AD06> { [ k, K, exclam, Greek_kappa, exclamdown, NoSymbol, multiply, NoSymbol ] };
key <AD07> { [ h, H, less, Greek_psi, KP_7, KP_7, Greek_PSI, NoSymbol ] };
key <AD08> { [ g, G, greater, Greek_gamma, KP_8, KP_8, Greek_GAMMA, NoSymbol ] };
key <AD09> { [ f, F, equal, Greek_phi, KP_9, KP_9, Greek_PHI, NoSymbol ] };
key <AD10> { [ q, Q, ampersand, U03D5, KP_Add, KP_Add, U211A, NoSymbol ] };
key <AD11> { [ ssharp, U1E9E, U017F, Greek_finalsmallsigma, U2212, NoSymbol, jot, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK";
key <AD12> { [ dead_acute, dead_tilde, dead_stroke, dead_psili, dead_doubleacute, NoSymbol, dead_breve, NoSymbol ] };
// Middle row
// --------------------------------------------------------------
key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK";
key <AC01> { [ u, U, backslash, NoSymbol, Home, Home, includedin, NoSymbol ] };
key <AC02> { [ i, I, slash, Greek_iota, Left, Left, integral, NoSymbol ] };
key <AC03> { [ a, A, braceleft, Greek_alpha, Down, Down, U2200, NoSymbol ] };
key <AC04> { [ e, E, braceright, Greek_epsilon, Right, Right, U2203, NoSymbol ] };
key <AC05> { [ o, O, asterisk, Greek_omicron, End, End, elementof, NoSymbol ] };
key <AC06> { [ s, S, question, Greek_sigma, questiondown, NoSymbol, Greek_SIGMA, NoSymbol ] };
key <AC07> { [ n, N, parenleft, Greek_nu, KP_4, KP_4, U2115, NoSymbol ] };
key <AC08> { [ r, R, parenright, Greek_rho, KP_5, KP_5, U211D, NoSymbol ] };
key <AC09> { [ t, T, minus, Greek_tau, KP_6, KP_6, partialderivative, NoSymbol ] };
key <AC10> { [ d, D, colon, Greek_delta, KP_Separator, comma, Greek_DELTA, NoSymbol ] };
key <AC11> { [ y, Y, at, Greek_upsilon, period, KP_Decimal, nabla, NoSymbol ] };
// Bottom row
// --------------------------------------------------------------
key <AB01> { [ udiaeresis, Udiaeresis, numbersign, NoSymbol, Escape, Escape, union, NoSymbol ] };
key <AB02> { [ odiaeresis, Odiaeresis, dollar, U03F5, Tab, Tab, intersection, NoSymbol ] };
key <AB03> { [ adiaeresis, Adiaeresis, bar, Greek_eta, Insert, Insert, U2135, NoSymbol ] };
key <AB04> { [ p, P, asciitilde, Greek_pi, Return, Return, Greek_PI, NoSymbol ] };
key <AB05> { [ z, Z, grave, Greek_zeta, Undo, Redo, U2124, NoSymbol ] };
key <AB06> { [ b, B, plus, Greek_beta, colon, NoSymbol, U21D0, NoSymbol ] };
key <AB07> { [ m, M, percent, Greek_mu, KP_1, KP_1, ifonlyif, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK";
key <AB08> { [ comma, endash, quotedbl, U03F1, KP_2, KP_2, U21D2, NoSymbol ] };
key <AB09> { [ period, enfilledcircbullet, apostrophe, U03D1, KP_3, KP_3, U21A6, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK";
key <AB10> { [ j, J, semicolon, Greek_theta, semicolon, NoSymbol, Greek_THETA, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK";
// Space key
// --------------------------------------------------------------
key <SPCE> { [ space, space, space, nobreakspace, KP_0, KP_0, U202F, NoSymbol ] };
// Keypad-keys
// ===============
// The former Numlock key:
key <NMLK> { [ Tab, ISO_Left_Tab, equal, approxeq, notequal, Pointer_EnableKeys, identical, NoSymbol ] };
// Topmost row
// --------------------------------------------------------------
key <KPDV> { [ KP_Divide, KP_Divide, division, U2300, U2215, NoSymbol, U2223, NoSymbol ] };
key <KPMU> { [ KP_Multiply, KP_Multiply, U22C5, U2299, multiply, NoSymbol, U2297, NoSymbol ] };
key <KPSU> { [ KP_Subtract, KP_Subtract, U2212, U2296, U2216, NoSymbol, U2238, NoSymbol ] };
// Top row
// --------------------------------------------------------------
key <KP7> { [ KP_7, U2714, U2195, U226A, KP_Home, KP_Home, upstile, NoSymbol ] };
key <KP8> { [ KP_8, U2718, uparrow, intersection, KP_Up, KP_Up, U22C2, NoSymbol ] };
key <KP9> { [ KP_9, dagger, U20D7, U226B, KP_Prior, KP_Prior, U2309, NoSymbol ] };
key <KPAD> { [ KP_Add, KP_Add, plusminus, U2295, U2213, NoSymbol, U2214, NoSymbol ] };
// Middle row
// --------------------------------------------------------------
key <KP4> { [ KP_4, club, leftarrow, includedin, KP_Left, KP_Left, U2286, NoSymbol ] };
key <KP5> { [ KP_5, EuroSign, colon, U22B6, KP_Begin, KP_Begin, U22B7, NoSymbol ] };
key <KP6> { [ KP_6, U2023, rightarrow, includes, KP_Right, KP_Right, U2287, NoSymbol ] };
// Bottom row
// --------------------------------------------------------------
key <KP1> { [ KP_1, diamond, U2194, lessthanequal, KP_End, KP_End, downstile, NoSymbol ] };
key <KP2> { [ KP_2, heart, downarrow, union, KP_Down, KP_Down, U22C3, NoSymbol ] };
key <KP3> { [ KP_3, U2660, U21CC, greaterthanequal, KP_Next, KP_Next, U230B, NoSymbol ] };
key <KPEN> { [ KP_Enter, KP_Enter, KP_Enter, KP_Enter, KP_Enter, KP_Enter, KP_Enter, NoSymbol ] };
key <KPEQ> { [ KP_Equal, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
// Bottommost row
// --------------------------------------------------------------
key <KP0> { [ KP_0, U2423, percent, U2030, KP_Insert, KP_Insert, U25A1, NoSymbol ] };
key <KPDL> { [ KP_Separator, period, comma, minutes, KP_Delete, KP_Delete, seconds, NoSymbol ] };
};
partial alphanumeric_keys modifier_keys keypad_keys
xkb_symbols "neo" {
include "de(neo_base)"
name[Group1]= "German (Neo 2)";
include "shift(both_capslock)"
include "level3(caps_switch)"
include "level3(bksl_switch)"
include "level5(lsgt_switch_lock)"
include "level5(ralt_switch_lock)"
};
// Copied from macintosh_vndr/de
// olh@suse.de very close to MacOS map
partial alphanumeric_keys
xkb_symbols "mac" {
include "de"
name[Group1]= "German (Macintosh)";
// Alphanumeric section
key <AE01> { [ 1, exclam, exclamdown, at ] };
key <AE05> { [ 5, percent, bracketleft ] };
key <AE06> { [ 6, ampersand, bracketright ] };
key <AE07> { [ 7, slash, bar, backslash ] };
key <AE08> { [ 8, parenleft, braceleft, asciitilde ] };
key <AE09> { [ 9, parenright, braceright ] };
key <AD01> { [ q, Q, guillemotleft, guillemotright ] };
key <AD04> { [ r, R, registered ] };
key <AD07> { [ u, U, diaeresis, Aacute ] };
key <AD08> { [ i, I, slash, Ucircumflex ] };
key <AD11> { [ udiaeresis, Udiaeresis, periodcentered, degree ] };
key <AD12> { [ plus, asterisk, asciitilde ] };
key <AC01> { [ a, A, aring, Aring ] };
key <AC05> { [ g, G, copyright ] };
key <AC06> { [ h, H, ordfeminine ] };
key <AC09> { [ l, L, at ] };
key <AC10> { [ odiaeresis, Odiaeresis, dead_acute ] };
key <AB06> { [ n, N, asciitilde ] };
};
partial alphanumeric_keys
xkb_symbols "mac_nodeadkeys" {
// modify the standard German mac layout to not have any dead keys
include "de(mac)"
name[Group1]= "German (Macintosh, eliminate dead keys)";
key <AE04> { [ 4, dollar, onequarter, currency ] };
key <TLDE> { [ asciicircum, degree, notsign ] };
key <AE12> { [ acute, grave, cedilla ] };
key <AD11> { [ udiaeresis, Udiaeresis, diaeresis ] };
key <AD12> { [ plus, asterisk, asciitilde, macron ] };
key <AC10> { [ odiaeresis, Odiaeresis, acute ] };
key <AC11> { [ adiaeresis, Adiaeresis, asciicircum ] };
key <BKSL> { [ numbersign, apostrophe, grave ] };
};
partial alphanumeric_keys
xkb_symbols "dsb"
{
name[Group1] = "Lower Sorbian";
include "latin(basic)"
include "level3(ralt_switch)"
include "kpdl(comma)"
key <AB01> { [ z, Z, zcaron, Zcaron ] };
key <AB02> { [ x, X, zacute, Zacute ] };
key <AB03> { [ c, C, cacute, Cacute ] };
key <AB04> { [ v, V, ccaron, Ccaron ] };
key <AB06> { [ n, N, nacute, Nacute ] };
key <AC02> { [ s, S, sacute, Sacute ] };
key <AC03> { [ d, D, scaron, Scaron ] };
key <AC04> { [ f, F ] };
key <AD01> { [ q, Q ] };
key <AD02> { [ w, W ] };
key <AD03> { [ e, E, ecaron, Ecaron ] };
key <AD04> { [ r, R, racute, Racute ] };
key <AD05> { [ t, T, U20B5, EuroSign ] };
key <AD09> { [ o, O, oacute, Oacute ] };
};
partial alphanumeric_keys
xkb_symbols "dsb_qwertz"
{
name[Group1] = "Lower Sorbian (qwertz)";
include "latin(basic)"
include "level3(ralt_switch)"
include "kpdl(comma)"
key <AB01> { [ y, Y ] };
key <AB02> { [ x, X ] };
key <AB03> { [ c, C, cacute, Cacute ] };
key <AB04> { [ v, V, ccaron, Ccaron ] };
key <AB06> { [ n, N, nacute, Nacute ] };
key <AC02> { [ s, S, sacute, Sacute ] };
key <AC03> { [ d, D, scaron, Scaron ] };
key <AC04> { [ f, F ] };
key <AD01> { [ q, Q ] };
key <AD02> { [ w, W ] };
key <AD03> { [ e, E, ecaron, Ecaron ] };
key <AD04> { [ r, R, racute, Racute ] };
key <AD05> { [ t, T, U20B5, EuroSign ] };
key <AD06> { [ z, Z, zcaron, Zcaron ] };
key <AD07> { [ u, U, zacute, Zacute ] };
key <AD09> { [ o, O, oacute, Oacute ] };
};
// layout for Russian letters on an german keyboard
// based on US-RU layout by Ivan Popov <pin@konvalo.org> 2005-07-17
// adopted for german layout by Alexey Fisher <bug-track@fisher-privat.net> 2010-08-19
partial alphanumeric_keys
xkb_symbols "ru" {
include "de(basic)"
name[Group1]= "Russian (Germany, phonetic)";
key.type[group1]="FOUR_LEVEL_ALPHABETIC";
key <LatA> { [ Cyrillic_a, Cyrillic_A ] };
key <LatB> { [ Cyrillic_be, Cyrillic_BE ] };
key <LatW> { [ Cyrillic_ve, Cyrillic_VE ] };
key <LatG> { [ Cyrillic_ghe, Cyrillic_GHE ] };
key <LatD> { [ Cyrillic_de, Cyrillic_DE ] };
key <LatE> { [ Cyrillic_ie, Cyrillic_IE ] };
key <TLDE> { [ Cyrillic_io, Cyrillic_IO, asciitilde ] };
key <LatX> { [ Cyrillic_zhe, Cyrillic_ZHE ] };
key <LatZ> { [ Cyrillic_ze, Cyrillic_ZE ] };
key <LatI> { [ Cyrillic_i, Cyrillic_I ] };
key <LatJ> { [ Cyrillic_shorti, Cyrillic_SHORTI ] };
key <LatK> { [ Cyrillic_ka, Cyrillic_KA ] };
key <LatL> { [ Cyrillic_el, Cyrillic_EL ] };
key <LatM> { [ Cyrillic_em, Cyrillic_EM ] };
key <LatN> { [ Cyrillic_en, Cyrillic_EN ] };
key <LatO> { [ Cyrillic_o, Cyrillic_O ] };
key <LatP> { [ Cyrillic_pe, Cyrillic_PE ] };
key <LatR> { [ Cyrillic_er, Cyrillic_ER ] };
key <LatS> { [ Cyrillic_es, Cyrillic_ES ] };
key <LatT> { [ Cyrillic_te, Cyrillic_TE ] };
key <LatU> { [ Cyrillic_u, Cyrillic_U ] };
key <LatF> { [ Cyrillic_ef, Cyrillic_EF ] };
key <LatH> { [ Cyrillic_ha, Cyrillic_HA ] };
key <LatC> { [ Cyrillic_tse, Cyrillic_TSE ] };
key <AC10> { [ Cyrillic_che, Cyrillic_CHE ] };
key <AD11> { [ Cyrillic_sha, Cyrillic_SHA ] };
key <AD12> { [ Cyrillic_shcha, Cyrillic_SHCHA, plus, asterisk ] };
key <AE12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN ] };
key <LatY> { [ Cyrillic_yeru, Cyrillic_YERU ] };
key <LatV> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] };
key <AC11> { [ Cyrillic_e, Cyrillic_E ] };
key <BKSL> { [ Cyrillic_yu, Cyrillic_YU, numbersign, apostrophe ] };
key <LatQ> { [ Cyrillic_ya, Cyrillic_YA ] };
include "level3(ralt_switch)"
};
partial alphanumeric_keys
xkb_symbols "htcdream" {
include "inet(htcdream)"
name[Group1]= "German";
//second row
key <AD01> { [ q, Q, Tab, Tab ] };
key <AD02> { [ w, W, grave, grave ] };
key <AD03> { [ e, E, EuroSign, EuroSign ] };
key <AD04> { [ r, R, underscore, underscore ] };
key <AD05> { [ t, T, sterling, sterling] };
key <AD06> { [ z, Z, division, division ] };
key <AD07> { [ u, U, udiaeresis, udiaeresis ] };
key <AD08> { [ i, I, minus, minus ] };
key <AD09> { [ o, O, odiaeresis, odiaeresis ] };
key <AD10> { [ p, P, equal, equal ] };
//third row
key <AC01> { [ a, A, adiaeresis, adiaeresis ] };
key <AC02> { [ s, S, ssharp, ssharp] };
key <AC03> { [ d ,D, backslash, backslash ] };
key <AC04> { [ f, F, braceleft, braceleft ] };
key <AC05> { [ g, G, braceright, braceright ] };
key <AC06> { [ h, H, multiply, multiply ] };
key <AC07> { [ j, J, colon, colon ] };
key <AC08> { [ k, K, plus, plus ] };
key <AC09> { [ l, L, apostrophe, apostrophe ] };
//forth row
key <AB01> { [ y, Y, bar, bar ] };
key <AB02> { [ x, X, bracketleft, bracketleft ] };
key <AB03> { [ c, C, bracketright, bracketright ] };
key <AB04> { [ v, V, less, less ] };
key <AB05> { [ b, B, greater, greater ] };
key <AB06> { [ n, N, semicolon, semicolon ] };
key <AB07> { [ m, M, quotedbl, quotedbl ] };
key <AB08> { [ comma, comma, question, question ] };
//fifth row
key <FK15> { [ at, at, asciitilde, asciitilde ] };
include "level3(alt_switch)"
};
// EXTRAS:
partial alphanumeric_keys
xkb_symbols "us" {
include "us"
name[Group1]="German (US keyboard with German letters)";
key <AC01> { [ a, A, adiaeresis, Adiaeresis ] };
key <AC02> { [ s, S, ssharp, ssharp ] };
key <AC10> { [ semicolon, colon, odiaeresis, Odiaeresis ] };
key <AC11> { [ apostrophe, quotedbl, adiaeresis, Adiaeresis ] };
key <AD03> { [ e, E, EuroSign, EuroSign ] };
key <AD07> { [ u, U, udiaeresis, Udiaeresis ] };
key <AD09> { [ o, O, odiaeresis, Odiaeresis ] };
key <AD11> { [ bracketleft, braceleft, udiaeresis, Udiaeresis ] };
key <AE03> { [ 3, numbersign, section, section ] };
key <AE11> { [ minus, underscore, ssharp, question ] };
include "level3(ralt_switch)"
};
partial alphanumeric_keys
xkb_symbols "hu" {
// modify the basic German layout to not have any dead keys and add Hungarian letters
include "de(basic)"
name[Group1]="German (with Hungarian letters and no dead keys)";
key <AB01> { [ y, Y, guillemotleft, less ] };
key <AC10> { [odiaeresis, Odiaeresis, eacute, Eacute ] };
key <AC11> { [adiaeresis, Adiaeresis, aacute, Aacute] };
key <AD03> { [ e, E, EuroSign, EuroSign ] };
key <AD06> { [ z, Z, leftarrow, yen ] };
key <AD07> { [ u, U, uacute, Uacute ] };
key <AD08> { [ i, I, iacute, Iacute ] };
key <AD09> { [ o, O, odoubleacute,Odoubleacute ] };
key <AD11> { [udiaeresis, Udiaeresis, udoubleacute,Udoubleacute ] };
key <AD12> { [ plus, asterisk, asciitilde, macron ] };
key <AE12> { [ acute, grave, oacute, Oacute ] };
key <BKSL> { [numbersign, apostrophe, grave, grave ] };
key <TLDE> { [asciicircum, degree, notsign, notsign ] };
};

View File

@ -1,838 +0,0 @@
// based on a keyboard map from an 'xkb/symbols/de' file
//
// $XKeyboardConfig$
// $XFree86: xc/programs/xkbcomp/symbols/de,v 1.6 2003/09/08 13:12:51 pascal Exp $
default
xkb_symbols "basic" {
include "latin(type4)"
name[Group1]="Germany";
key <AE02> { [ 2, quotedbl, twosuperior, oneeighth ] };
key <AE03> { [ 3, section, threesuperior, sterling ] };
key <AE04> { [ 4, dollar, onequarter, currency ] };
key <AE11> {type[Group1]="FOUR_LEVEL_PLUS_LOCK", symbols[Group1]=
[ssharp, question, backslash, questiondown, 0x1001E9E ]};
// The unicode capital letter sharp s U+1E9E is transformed to "SS"
// to match the rules for capitalizing sharp s in german.
// If the capital sharp s is needed, delete the line
// starting with <U1E9C> from /usr/share/X11/locale/iso8859-15/Compose.
// If both doubled S and capital sharp s are needed, use 0x1001E9E
// for capital sharp s and some free unicode codepoint like 0x1001E9C
// for doubled S. Don`t forget to change this in the Compose file, too.
key <AE12> { [dead_acute, dead_grave, dead_cedilla, dead_ogonek ] };
key <AD03> { [ e, E, EuroSign, EuroSign ] };
key <AD06> { [ z, Z, leftarrow, yen ] };
key <AD11> { [udiaeresis, Udiaeresis, dead_diaeresis, dead_abovering ] };
key <AD12> { [ plus, asterisk, dead_tilde, dead_macron ] };
key <AC02> { [ s, S, U017F, U1E9E ] };
key <AC07> { [ j, J, dead_belowdot, dead_abovedot ] };
key <AC10> { [odiaeresis, Odiaeresis, dead_doubleacute, dead_belowdot ] };
key <AC11> { [adiaeresis, Adiaeresis, dead_circumflex, dead_caron ] };
key <TLDE> { [dead_circumflex, degree, U2032, U2033 ] };
key <BKSL> { [numbersign, apostrophe, dead_grave, dead_breve ] };
key <AB01> { [ y, Y, guillemotright, U203A ] };
key <AB02> { [ x, X, guillemotleft, U2039 ] };
key <AB04> { [ v, V, doublelowquotemark, singlelowquotemark ] };
key <AB05> { [ b, B, leftdoublequotemark, leftsinglequotemark ] };
key <AB06> { [ n, N, rightdoublequotemark, rightsinglequotemark ] };
key <AB08> { [ comma, semicolon, periodcentered, multiply ] };
key <AB09> { [ period, colon, U2026, division ] };
key <AB10> { [ minus, underscore, endash, emdash ] };
include "kpdl(comma)"
include "level3(ralt_switch)"
};
partial alphanumeric_keys
xkb_symbols "nodeadkeys" {
// modify the basic German layout to not have any dead keys
include "de(basic)"
name[Group1]="Germany - Eliminate dead keys";
key <TLDE> { [asciicircum, degree, notsign, notsign ] };
key <AE12> { [ acute, grave, cedilla, cedilla ] };
key <AD11> { [udiaeresis, Udiaeresis, diaeresis, diaeresis ] };
key <AD12> { [ plus, asterisk, asciitilde, macron ] };
key <AC10> { [odiaeresis, Odiaeresis, doubleacute, doubleacute ] };
key <AC11> { [adiaeresis, Adiaeresis, asciicircum, asciicircum ] };
key <BKSL> { [numbersign, apostrophe, grave, grave ] };
key <AB10> { [ minus, underscore, dead_belowdot, abovedot ] };
};
partial alphanumeric_keys
xkb_symbols "deadgraveacute" {
// modify the basic German layout to have only acute and grave
// as dead keys (tilde and circumflex are needed as spacing characters
// in many programming languages)
include "de(basic)"
name[Group1]="Germany - Dead grave acute";
key <TLDE> { [asciicircum, degree, notsign, notsign ] };
key <AD12> { [ plus, asterisk, asciitilde, dead_macron ] };
key <BKSL> { [numbersign, apostrophe, grave, grave ] };
};
partial alphanumeric_keys
xkb_symbols "deadacute" {
// modify the basic German layout to have only acute as
// dead keys (ASCII grave, tilde and circumflex are needed as
// spacing characters in many programming languages and text formatters)
include "de(deadgraveacute)"
name[Group1]="Germany - Dead acute";
key <AE12> { [dead_acute, grave, dead_cedilla, dead_ogonek ] };
key <BKSL> { [numbersign, apostrophe, dead_grave, dead_grave ] };
};
partial alphanumeric_keys
xkb_symbols "ro" {
// add romanian-specific letters to the basic German layout.
// Romanian symbols are accessible with combination of <AltGr> and
// 'a', 's', 't', 'i', 'ä (&auml)' (+<Shift> for capital letters).
// To view romanian-specific symbols, add "export LC_CTYPE=ro_RO"
// or "export LC_CTYPE=de_DE.utf8" to your .profile.
include "de(basic)"
name[Group1]="Germany - Romanian keyboard with German letters";
key <AD05> { [ t, T, tcedilla, Tcedilla ] };
key <AD08> { [ i, I, icircumflex, Icircumflex ] };
key <AC01> { [ a, A, acircumflex, Acircumflex ] };
key <AC02> { [ s, S, scedilla, Scedilla ] };
key <AC11> { [ adiaeresis, Adiaeresis, abreve, Abreve ] };
};
partial alphanumeric_keys
xkb_symbols "ro_nodeadkeys" {
// add romanian-specific letters to the German nodeadkeys layout.
// Read the comment for de_ro !
include "de(nodeadkeys)"
name[Group1]="Germany - Romanian keyboard with German letters, eliminate dead keys";
key <AD05> { [ t, T, tcedilla, Tcedilla ] };
key <AD08> { [ i, I, icircumflex, Icircumflex ] };
key <AC01> { [ a, A, acircumflex, Acircumflex ] };
key <AC02> { [ s, S, scedilla, Scedilla ] };
key <AC11> { [ adiaeresis, Adiaeresis, abreve, Abreve ] };
};
// German Dvorak keymap by Thorsten Staerk (www.staerk.de/thorsten)
// Have acute and grave as dead keys, tilde and circumflex alive as they are needed
// in many programming languages.
// to use this keymap, use a 105-key-keyboard and the command setxkbmap -model pc105 -layout dvorak -variant de
// source: http://www-lehre.informatik.uni-osnabrueck.de/~rfreund/dvorak.php
partial alphanumeric_keys
xkb_symbols "dvorak" {
include "us(dvorak)"
name[Group1]="Germany - Dvorak";
key <TLDE> { [ asciicircum, degree ] };
key <AE01> { [ 1, exclam, onesuperior ] };
key <AE02> { [ 2, quotedbl, twosuperior ] };
key <AE03> { [ 3, section, threesuperior ] };
key <AE04> { [ 4, dollar, bar ] };
key <AE05> { [ 5, percent, bar ] };
key <AE06> { [ 6, ampersand, brokenbar ] };
key <AE07> { [ 7, slash, braceleft ] };
key <AE08> { [ 8, parenleft, bracketleft ] };
key <AE09> { [ 9, parenright, bracketright ] };
key <AE10> { [ 0, equal, braceright ] };
key <AE11> { [ plus, asterisk, asciitilde ] };
key <AE12> { [ less, greater, dead_grave ] };
key <AD01> { [ udiaeresis, Udiaeresis, at ] };
key <AD02> { [ comma, semicolon, dead_diaeresis ] };
key <AD03> { [ period, colon ] };
key <AD08> { [ c, C, copyright, Cacute ] };
key <AD09> { [ t, T, trademark ] };
key <AD10> { [ z, Z, zabovedot, Zabovedot ] };
key <AD11> { [ question, ssharp ] };
key <AD12> { [ slash, backslash, dead_acute ] };
key <AC01> { [ a, A, at, aogonek ] };
key <AC02> { [ o, O, oacute, Oacute ] };
key <AC03> { [ e, E, EuroSign, eogonek ] };
key <AC04> { [ i, I ] };
key <AC05> { [ u, U ] };
key <AC06> { [ h, H ] };
key <AC07> { [ d, D ] };
key <AC08> { [ r, R, registered ] };
key <AC09> { [ n, N, nacute, Nacute ] };
key <AC10> { [ s, S, sacute, Sacute] };
key <AC11> { [ l, L, lstroke, Lstroke ] };
key <AB01> { [ odiaeresis, Odiaeresis ] };
key <AB02> { [ q, Q, at ] };
key <AB07> { [ m, M, mu ] };
key <AB10> { [ numbersign, apostrophe ] };
key <BKSL> { [ minus, underscore, hyphen, diaeresis] };
key <LSGT> { [ adiaeresis, Adiaeresis, bar ] };
include "level3(ralt_switch)"
};
partial alphanumeric_keys
xkb_symbols "Sundeadkeys" {
// For naming consistency
include "de(basic)"
};
partial alphanumeric_keys
xkb_symbols "sundeadkeys" {
// For naming consistency
include "de(Sundeadkeys)"
name[Group1]="Germany - Sun dead keys";
};
// German Neo-Layout Version 2
// adopted 2004 by Hanno Behrens <Hanno.Behrens@gmx.de>
// inspired by Dvorak/de-ergo http://www.goebel-consult.de/de-ergo/
//
// Authors:
// Stephan Hilb <stephan at ehilb dot de>
// <lucky at zankt dot net>
// Benjamin Kellermann <Benjamin dot Kellermann at gmx dot Germany>
// Erik Streb <mail at erikstreb dot de>
// and many other contributors
//
// http://www.neo-layout.org
//
// $Revision$, $Date$
partial alphanumeric_keys modifier_keys keypad_keys
xkb_symbols "neo_base" {
name[Group1]= "Germany - Neo 2";
// Levels in Neo jargon
// --------------------------------------------------------------
// Ebene 1: normal
// Ebene 2: Shift
// Ebene 3: Mod3
// Ebene 4: Mod4 (for marking something use Shift + Mod4)
// Ebene 5: Shift + Mod3
// Ebene 6: Mod3 + Mod4
// Compose (not a level): Mod3 + Tab
// Feststelltaste (Capslock): Shift + Shift
// Mod4-Lock: Mod4 + Mod4
// Mod4-Lock: Shift + Mod3 + Tab
// Legend
// ===============
// Levels in Xkbmap jargon to be found here in the definitions.
// These are the levels used, and Xorg's translations:
// --------------------------------------------------------------
// Xorg: Level1 Level2 Level3 Level4 Level5 Level6 Level7 Level8
// Neo: Ebene1 Ebene2 Ebene3 Ebene5 Ebene4 Pseudo-Ebene Ebene6 ???
// Keys (Neo): None Shift Mod3 Mod3 + Shift Mod4 Mod4 + Shift Mod3 + Mod4 Mod3 + Mod4 + Shift
// Alphanumeric-keys
// ===============
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS";
// Tab as Multi_key (Compose)
// --------------------------------------------------------------
key <TAB> { [ Tab, ISO_Left_Tab, Multi_key, ISO_Level5_Lock, NoSymbol, NoSymbol, NoSymbol, ISO_Level5_Lock ] };
// Number row
// --------------------------------------------------------------
key <TLDE> { [ dead_circumflex, dead_caron, U21BB, U02DE, dead_abovedot, Pointer_EnableKeys, dead_belowdot, NoSymbol ] };
key <AE01> { [ 1, degree, onesuperior, onesubscript, ordfeminine, NoSymbol, notsign, NoSymbol ] };
key <AE02> { [ 2, section, twosuperior, twosubscript, masculine, NoSymbol, logicalor, NoSymbol ] };
key <AE03> { [ 3, U2113, threesuperior, threesubscript, numerosign, NoSymbol, logicaland, NoSymbol ] };
key <AE04> { [ 4, guillemotright, U203A, femalesymbol, NoSymbol, NoSymbol, U22A5, NoSymbol ] };
key <AE05> { [ 5, guillemotleft, U2039, malesymbol, periodcentered, NoSymbol, U2221, NoSymbol ] };
key <AE06> { [ 6, dollar, cent, U26A5, sterling, NoSymbol, U2225, NoSymbol ] };
key <AE07> { [ 7, EuroSign, yen, U03F0, currency, NoSymbol, rightarrow, NoSymbol ] };
key <AE08> { [ 8, doublelowquotemark, singlelowquotemark, U27E8, Tab, ISO_Left_Tab, U221E, NoSymbol ] };
key <AE09> { [ 9, leftdoublequotemark, leftsinglequotemark, U27E9, KP_Divide, KP_Divide, variation, NoSymbol ] };
key <AE10> { [ 0, rightdoublequotemark, rightsinglequotemark, zerosubscript, KP_Multiply, KP_Multiply, emptyset, NoSymbol ] };
key <AE11> { [ minus, emdash, NoSymbol, U2011, KP_Subtract, KP_Subtract, hyphen, NoSymbol ] };
key <AE12> { [ dead_grave, dead_cedilla, dead_abovering, U1FFE, dead_diaeresis, NoSymbol, dead_macron, NoSymbol ] };
// Top row
// --------------------------------------------------------------
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS_QUARTERALPHABETIC";
key <AD01> { [ x, X, ellipsis, Greek_xi, Prior, Prior, Greek_XI, NoSymbol ] };
key <AD02> { [ v, V, underscore, NoSymbol, BackSpace, BackSpace, radical, NoSymbol ] };
key <AD03> { [ l, L, bracketleft, Greek_lambda, Up, Up, Greek_LAMBDA, NoSymbol ] };
key <AD04> { [ c, C, bracketright, Greek_chi, Delete, Delete, U2102, NoSymbol ] };
key <AD05> { [ w, W, asciicircum, Greek_omega, Next, Next, Greek_OMEGA, NoSymbol ] };
key <AD06> { [ k, K, exclam, Greek_kappa, exclamdown, NoSymbol, multiply, NoSymbol ] };
key <AD07> { [ h, H, less, Greek_psi, KP_7, KP_7, Greek_PSI, NoSymbol ] };
key <AD08> { [ g, G, greater, Greek_gamma, KP_8, KP_8, Greek_GAMMA, NoSymbol ] };
key <AD09> { [ f, F, equal, Greek_phi, KP_9, KP_9, Greek_PHI, NoSymbol ] };
key <AD10> { [ q, Q, ampersand, U03D5, KP_Add, KP_Add, U211A, NoSymbol ] };
key <AD11> { [ ssharp, U1E9E, U017F, Greek_finalsmallsigma, U2212, NoSymbol, jot, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS";
key <AD12> { [ dead_acute, dead_tilde, dead_stroke, U1FBF, dead_doubleacute, NoSymbol, dead_breve, NoSymbol ] };
// Middle row
// --------------------------------------------------------------
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS_QUARTERALPHABETIC";
key <AC01> { [ u, U, backslash, NoSymbol, Home, Home, includedin, NoSymbol ] };
key <AC02> { [ i, I, slash, Greek_iota, Left, Left, integral, NoSymbol ] };
key <AC03> { [ a, A, braceleft, Greek_alpha, Down, Down, U2200, NoSymbol ] };
key <AC04> { [ e, E, braceright, Greek_epsilon, Right, Right, U2203, NoSymbol ] };
key <AC05> { [ o, O, asterisk, Greek_omicron, End, End, elementof, NoSymbol ] };
key <AC06> { [ s, S, question, Greek_sigma, questiondown, NoSymbol, Greek_SIGMA, NoSymbol ] };
key <AC07> { [ n, N, parenleft, Greek_nu, KP_4, KP_4, U2115, NoSymbol ] };
key <AC08> { [ r, R, parenright, Greek_rho, KP_5, KP_5, U211D, NoSymbol ] };
key <AC09> { [ t, T, minus, Greek_tau, KP_6, KP_6, partialderivative, NoSymbol ] };
key <AC10> { [ d, D, colon, Greek_delta, KP_Separator, comma, Greek_DELTA, NoSymbol ] };
key <AC11> { [ y, Y, at, Greek_upsilon, period, KP_Decimal, nabla, NoSymbol ] };
// Bottom row
// --------------------------------------------------------------
key <AB01> { [ udiaeresis, Udiaeresis, numbersign, NoSymbol, Escape, Escape, union, NoSymbol ] };
key <AB02> { [ odiaeresis, Odiaeresis, dollar, U03F5, Tab, Tab, intersection, NoSymbol ] };
key <AB03> { [ adiaeresis, Adiaeresis, bar, Greek_eta, Insert, Insert, U2135, NoSymbol ] };
key <AB04> { [ p, P, asciitilde, Greek_pi, Return, Return, Greek_PI, NoSymbol ] };
key <AB05> { [ z, Z, grave, Greek_zeta, Undo, Undo, U2124, NoSymbol ] };
key <AB06> { [ b, B, plus, Greek_beta, colon, NoSymbol, U21D0, NoSymbol ] };
key <AB07> { [ m, M, percent, Greek_mu, KP_1, KP_1, ifonlyif, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS";
key <AB08> { [ comma, endash, quotedbl, U03F1, KP_2, KP_2, U21D2, NoSymbol ] };
key <AB09> { [ period, enfilledcircbullet, apostrophe, U03D1, KP_3, KP_3, U21A6, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS_QUARTERALPHABETIC";
key <AB10> { [ j, J, semicolon, Greek_theta, semicolon, NoSymbol, Greek_THETA, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS";
// Space key
// --------------------------------------------------------------
key <SPCE> { [ space, space, space, nobreakspace, KP_0, KP_0, U202F, NoSymbol ] };
// Keypad-keys
// ===============
// The former Numlock key:
key <NMLK> { [ Tab, ISO_Left_Tab, equal, approxeq, notequal, Pointer_EnableKeys, identical, NoSymbol ] };
// Topmost row
// --------------------------------------------------------------
key <KPDV> { [ KP_Divide, KP_Divide, division, U2300, U2215, NoSymbol, U2223, NoSymbol ] };
key <KPMU> { [ KP_Multiply, KP_Multiply, U2219, U2299, multiply, NoSymbol, U2297, NoSymbol ] };
key <KPSU> { [ KP_Subtract, KP_Subtract, U2212, U2296, U2216, NoSymbol, U2238, NoSymbol ] };
// Top row
// --------------------------------------------------------------
key <KP7> { [ KP_7, U2714, U2195, U226A, KP_Home, KP_Home, upstile, NoSymbol ] };
key <KP8> { [ KP_8, U2718, uparrow, intersection, KP_Up, KP_Up, U22C2, NoSymbol ] };
key <KP9> { [ KP_9, dagger, U20D7, U226B, KP_Prior, KP_Prior, U2309, NoSymbol ] };
key <KPAD> { [ KP_Add, KP_Add, plusminus, U2295, U2213, NoSymbol, U2214, NoSymbol ] };
// Middle row
// --------------------------------------------------------------
key <KP4> { [ KP_4, club, leftarrow, includedin, KP_Left, KP_Left, U2286, NoSymbol ] };
key <KP5> { [ KP_5, EuroSign, colon, U22B6, KP_Begin, KP_Begin, U22B7, NoSymbol ] };
key <KP6> { [ KP_6, U2023, rightarrow, includes, KP_Right, KP_Right, U2287, NoSymbol ] };
// Bottom row
// --------------------------------------------------------------
key <KP1> { [ KP_1, diamond, U2194, lessthanequal, KP_End, KP_End, downstile, NoSymbol ] };
key <KP2> { [ KP_2, heart, downarrow, union, KP_Down, KP_Down, U22C3, NoSymbol ] };
key <KP3> { [ KP_3, U2660, U21CC, greaterthanequal, KP_Next, KP_Next, U230B, NoSymbol ] };
key <KPEN> { [ KP_Enter, KP_Enter, KP_Enter, KP_Enter, KP_Enter, KP_Enter, KP_Enter, NoSymbol ] };
key <KPEQ> { [ KP_Equal, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
// Bottommost row
// --------------------------------------------------------------
key <KP0> { [ KP_0, U2423, percent, U2030, KP_Insert, KP_Insert, U25A1, NoSymbol ] };
key <KPDL> { [ KP_Separator, period, comma, minutes, KP_Delete, KP_Delete, seconds, NoSymbol ] };
};
partial alphanumeric_keys modifier_keys keypad_keys
xkb_symbols "neo" {
include "de(neo_base)"
include "shift(both_capslock)"
include "level3(caps_switch)"
include "level3(bksl_switch)"
include "level5(lsgt_switch_numlock)"
include "level5(ralt_switch_numlock)"
};
// Copied from macintosh_vndr/de
// olh@suse.de very close to MacOS map
partial alphanumeric_keys
xkb_symbols "mac" {
include "de"
name[Group1]= "Germany - Macintosh";
// Alphanumeric section
key <AE01> { [ 1, exclam, exclamdown, at ] };
key <AE05> { [ 5, percent, bracketleft ] };
key <AE06> { [ 6, ampersand, bracketright ] };
key <AE07> { [ 7, slash, bar, backslash ] };
key <AE08> { [ 8, parenleft, braceleft, asciitilde ] };
key <AE09> { [ 9, parenright, braceright ] };
key <AD01> { [ q, Q, guillemotleft, guillemotright ] };
key <AD04> { [ r, R, registered ] };
key <AD07> { [ u, U, diaeresis, Aacute ] };
key <AD08> { [ i, I, slash, Ucircumflex ] };
key <AD11> { [ udiaeresis, Udiaeresis, periodcentered, degree ] };
key <AD12> { [ plus, asterisk, asciitilde ] };
key <AC01> { [ a, A, aring, Aring ] };
key <AC05> { [ g, G, copyright ] };
key <AC06> { [ h, H, ordfeminine ] };
key <AC09> { [ l, L, at ] };
key <AC10> { [ odiaeresis, Odiaeresis, dead_acute ] };
key <AB06> { [ n, N, asciitilde ] };
};
partial alphanumeric_keys
xkb_symbols "mac_nodeadkeys" {
// modify the standard German mac layout to not have any dead keys
include "de(mac)"
name[Group1]= "Germany - Macintosh, eliminate dead keys";
key <AE04> { [ 4, dollar, onequarter, currency ] };
key <TLDE> { [ asciicircum, degree, notsign ] };
key <AE12> { [ acute, grave, cedilla ] };
key <AD11> { [ udiaeresis, Udiaeresis, diaeresis ] };
key <AD12> { [ plus, asterisk, asciitilde, macron ] };
key <AC10> { [ odiaeresis, Odiaeresis, acute ] };
key <AC11> { [ adiaeresis, Adiaeresis, asciicircum ] };
key <BKSL> { [ numbersign, apostrophe, grave ] };
};
partial alphanumeric_keys
xkb_symbols "dsb"
{
name[Group1] = "Germany - Lower Sorbian";
include "latin(basic)"
include "level3(ralt_switch)"
include "kpdl(comma)"
key <AB01> { [ z, Z, zcaron, Zcaron ] };
key <AB02> { [ x, X, zacute, Zacute ] };
key <AB03> { [ c, C, cacute, Cacute ] };
key <AB04> { [ v, V, ccaron, Ccaron ] };
key <AB06> { [ n, N, nacute, Nacute ] };
key <AC02> { [ s, S, sacute, Sacute ] };
key <AC03> { [ d, D, scaron, Scaron ] };
key <AC04> { [ f, F ] };
key <AD01> { [ q, Q ] };
key <AD02> { [ w, W ] };
key <AD03> { [ e, E, ecaron, Ecaron ] };
key <AD04> { [ r, R, racute, Racute ] };
key <AD05> { [ t, T, U20B5, EuroSign ] };
key <AD09> { [ o, O, oacute, Oacute ] };
};
partial alphanumeric_keys
xkb_symbols "dsb_qwertz"
{
name[Group1] = "Germany - Lower Sorbian (qwertz)";
include "latin(basic)"
include "level3(ralt_switch)"
include "kpdl(comma)"
key <AB01> { [ y, Y ] };
key <AB02> { [ x, X ] };
key <AB03> { [ c, C, cacute, Cacute ] };
key <AB04> { [ v, V, ccaron, Ccaron ] };
key <AB06> { [ n, N, nacute, Nacute ] };
key <AC02> { [ s, S, sacute, Sacute ] };
key <AC03> { [ d, D, scaron, Scaron ] };
key <AC04> { [ f, F ] };
key <AD01> { [ q, Q ] };
key <AD02> { [ w, W ] };
key <AD03> { [ e, E, ecaron, Ecaron ] };
key <AD04> { [ r, R, racute, Racute ] };
key <AD05> { [ t, T, U20B5, EuroSign ] };
key <AD06> { [ z, Z, zcaron, Zcaron ] };
key <AD07> { [ u, U, zacute, Zacute ] };
key <AD09> { [ o, O, oacute, Oacute ] };
};
partial alphanumeric_keys
xkb_symbols "qwerty" {
// This layout should work exactly as a de with the exception
// of 'Z' and 'Y' keys, which are in the qwerty style (ie. swapped).
// 2008 by Matej Košík <kosik@fiit.stuba.sk>
include "de(basic)"
name[Group1] = "Germany - qwerty";
key <AB01> { [ z, Z, leftarrow, yen ] };
key <AD06> { [ y, Y, guillemotleft, less ] };
};
partial alphanumeric_keys modifier_keys keypad_keys
xkb_symbols "neo_base_griechisch" {
name[Group1]= "Germany - Neo 2";
// Levels in Neo jargon
// --------------------------------------------------------------
// Ebene 1: normal
// Ebene 2: Shift
// Ebene 3: Mod3
// Ebene 4: Mod4 (for marking something use Shift + Mod4)
// Ebene 5: Shift + Mod3
// Ebene 6: Mod3 + Mod4
// Compose (not a level): Mod3 + Tab
// Feststelltaste (Capslock): Shift + Shift
// Mod4-Lock: Mod4 + Mod4
// Mod4-Lock: Shift + Mod3 + Tab
// Legend
// ===============
// Levels in Xkbmap jargon to be found here in the definitions.
// These are the levels used, and Xorg's translations:
// --------------------------------------------------------------
// Xorg: Level1 Level2 Level3 Level4 Level5 Level6 Level7 Level8
// Neo: Ebene1 Ebene2 Ebene3 Ebene5 Ebene4 Pseudo-Ebene Ebene6 ???
// Keys (Neo): None Shift Mod3 Mod3 + Shift Mod4 Mod4 + Shift Mod3 + Mod4 Mod3 + Mod4 + Shift
// Alphanumeric-keys
// ===============
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS";
// Tab as Multi_key (Compose)
// --------------------------------------------------------------
key <TAB> { [ Tab, ISO_Left_Tab, Multi_key, ISO_Level5_Lock, NoSymbol, NoSymbol, NoSymbol, ISO_Level5_Lock ] };
// Number row
// --------------------------------------------------------------
key <TLDE> { [ dead_circumflex, dead_caron, U21BB, U02DE, dead_abovedot, Pointer_EnableKeys, dead_belowdot, NoSymbol ] };
key <AE01> { [ 1, degree, onesuperior, onesubscript, ordfeminine, NoSymbol, notsign, NoSymbol ] };
key <AE02> { [ 2, section, twosuperior, twosubscript, masculine, NoSymbol, logicalor, NoSymbol ] };
key <AE03> { [ 3, U2113, threesuperior, threesubscript, numerosign, NoSymbol, logicaland, NoSymbol ] };
key <AE04> { [ 4, guillemotright, U203A, femalesymbol, Prior, Prior, U22A5, NoSymbol ] };
key <AE05> { [ 5, guillemotleft, U2039, malesymbol, periodcentered, NoSymbol, U2221, NoSymbol ] };
key <AE06> { [ 6, dollar, cent, U26A5, sterling, NoSymbol, U2225, NoSymbol ] };
key <AE07> { [ 7, EuroSign, yen, U03F0, currency, NoSymbol, rightarrow, NoSymbol ] };
key <AE08> { [ 8, doublelowquotemark, singlelowquotemark, U27E8, Tab, ISO_Left_Tab, U221E, NoSymbol ] };
key <AE09> { [ 9, leftdoublequotemark, leftsinglequotemark, U27E9, KP_Divide, KP_Divide, variation, NoSymbol ] };
key <AE10> { [ 0, rightdoublequotemark, rightsinglequotemark, zerosubscript, KP_Multiply, KP_Multiply, emptyset, NoSymbol ] };
key <AE11> { [ minus, emdash, NoSymbol, U2011, KP_Subtract, KP_Subtract, hyphen, NoSymbol ] };
key <AE12> { [ dead_grave, dead_cedilla, dead_abovering, U1FFE, dead_diaeresis, NoSymbol, dead_macron, NoSymbol ] };
// Top row
// --------------------------------------------------------------
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS_QUARTERALPHABETIC";
key <AD01> { [ Greek_xi, Greek_XI, ellipsis, Greek_xi, Prior, Prior, Greek_XI, NoSymbol ] };
key <AD02> { [ U03DD, U03DC, underscore, NoSymbol, BackSpace, BackSpace, radical, NoSymbol ] };
key <AD03> { [ Greek_lambda, Greek_LAMBDA, bracketleft, Greek_lambda, Up, Up, Greek_LAMBDA, NoSymbol ] };
key <AD04> { [ Greek_chi, Greek_CHI, bracketright, Greek_chi, Delete, Delete, U2102, NoSymbol ] };
key <AD05> { [ Greek_omega, Greek_OMEGA, asciicircum, Greek_omega, Next, Next, Greek_OMEGA, NoSymbol ] };
key <AD06> { [ Greek_kappa, Greek_KAPPA, exclam, Greek_kappa, exclamdown, NoSymbol, multiply, NoSymbol ] };
key <AD07> { [ Greek_psi, Greek_PSI, less, Greek_psi, KP_7, KP_7, Greek_PSI, NoSymbol ] };
key <AD08> { [ Greek_gamma, Greek_GAMMA, greater, Greek_gamma, KP_8, KP_8, Greek_GAMMA, NoSymbol ] };
key <AD09> { [ Greek_phi, Greek_PHI, equal, Greek_phi, KP_9, KP_9, Greek_PHI, NoSymbol ] };
key <AD10> { [ U03D9, U03D8, ampersand, U03D5, KP_Add, KP_Add, U211A, NoSymbol ] };
key <AD11> { [ Greek_finalsmallsigma, NoSymbol, U017F, Greek_finalsmallsigma, U2212, NoSymbol, jot, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS";
key <AD12> { [ dead_acute, dead_tilde, dead_stroke, U1FBF, dead_doubleacute, NoSymbol, dead_breve, NoSymbol ] };
// Middle row
// --------------------------------------------------------------
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS_QUARTERALPHABETIC";
key <AC01> { [ U0374, U0375, backslash, NoSymbol, Home, Home, includedin, NoSymbol ] };
key <AC02> { [ Greek_iota, Greek_IOTA, slash, Greek_iota, Left, Left, integral, NoSymbol ] };
key <AC03> { [ Greek_alpha, Greek_ALPHA, braceleft, Greek_alpha, Down, Down, U2200, NoSymbol ] };
key <AC04> { [ Greek_epsilon, Greek_EPSILON, braceright, Greek_epsilon, Right, Right, U2203, NoSymbol ] };
key <AC05> { [ Greek_omicron, Greek_OMICRON, asterisk, Greek_omicron, End, End, elementof, NoSymbol ] };
key <AC06> { [ Greek_sigma, Greek_SIGMA, question, Greek_sigma, questiondown, NoSymbol, Greek_SIGMA, NoSymbol ] };
key <AC07> { [ Greek_nu, Greek_NU, parenleft, Greek_nu, KP_4, KP_4, U2115, NoSymbol ] };
key <AC08> { [ Greek_rho, Greek_RHO, parenright, Greek_rho, KP_5, KP_5, U211D, NoSymbol ] };
key <AC09> { [ Greek_tau, Greek_TAU, minus, Greek_tau, KP_6, KP_6, partialderivative, NoSymbol ] };
key <AC10> { [ Greek_delta, Greek_DELTA, colon, Greek_delta, KP_Separator, comma, Greek_DELTA, NoSymbol ] };
key <AC11> { [ Greek_upsilon, Greek_UPSILON, at, Greek_upsilon, period, KP_Decimal, nabla, NoSymbol ] };
// Bottom row
// --------------------------------------------------------------
key <AB01> { [ U03E1, U03E0, numbersign, NoSymbol, Escape, Escape, union, NoSymbol ] };
key <AB02> { [ U03DF, U03DE, dollar, U03F5, Tab, Tab, intersection, NoSymbol ] };
key <AB03> { [ Greek_eta, Greek_ETA, bar, Greek_eta, Insert, Insert, U2135, NoSymbol ] };
key <AB04> { [ Greek_pi, Greek_PI, asciitilde, Greek_pi, Return, Return, Greek_PI, NoSymbol ] };
key <AB05> { [ Greek_zeta, Greek_ZETA, grave, Greek_zeta, Undo, Undo, U2124, NoSymbol ] };
key <AB06> { [ Greek_beta, Greek_BETA, plus, Greek_beta, colon, NoSymbol, U21D0, NoSymbol ] };
key <AB07> { [ Greek_mu, Greek_MU, percent, Greek_mu, KP_1, KP_1, ifonlyif, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS";
key <AB08> { [ comma, endash, quotedbl, U03F1, KP_2, KP_2, U21D2, NoSymbol ] };
key <AB09> { [ period, enfilledcircbullet, apostrophe, U03D1, KP_3, KP_3, U21A6, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS_QUARTERALPHABETIC";
key <AB10> { [ Greek_theta, Greek_THETA, semicolon, Greek_theta, semicolon, NoSymbol, Greek_THETA, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS";
// Space key
// --------------------------------------------------------------
key <SPCE> { [ space, space, space, nobreakspace, KP_0, KP_0, U202F, NoSymbol ] };
// Keypad-keys
// ===============
// The former Numlock key:
key <NMLK> { [ Tab, ISO_Left_Tab, equal, approxeq, notequal, Pointer_EnableKeys, identical, NoSymbol ] };
// Topmost row
// --------------------------------------------------------------
key <KPDV> { [ KP_Divide, KP_Divide, division, U2300, U2215, NoSymbol, U2223, NoSymbol ] };
key <KPMU> { [ KP_Multiply, KP_Multiply, U2219, U2299, multiply, NoSymbol, U2297, NoSymbol ] };
key <KPSU> { [ KP_Subtract, KP_Subtract, U2212, U2296, U2216, NoSymbol, U2238, NoSymbol ] };
// Top row
// --------------------------------------------------------------
key <KP7> { [ KP_7, U2714, U2195, U226A, KP_Home, KP_Home, upstile, NoSymbol ] };
key <KP8> { [ KP_8, U2718, uparrow, intersection, KP_Up, KP_Up, U22C2, NoSymbol ] };
key <KP9> { [ KP_9, dagger, U20D7, U226B, KP_Prior, KP_Prior, U2309, NoSymbol ] };
key <KPAD> { [ KP_Add, KP_Add, plusminus, U2295, U2213, NoSymbol, U2214, NoSymbol ] };
// Middle row
// --------------------------------------------------------------
key <KP4> { [ KP_4, club, leftarrow, includedin, KP_Left, KP_Left, U2286, NoSymbol ] };
key <KP5> { [ KP_5, EuroSign, colon, U22B6, KP_Begin, KP_Begin, U22B7, NoSymbol ] };
key <KP6> { [ KP_6, U2023, rightarrow, includes, KP_Right, KP_Right, U2287, NoSymbol ] };
// Bottom row
// --------------------------------------------------------------
key <KP1> { [ KP_1, diamond, U2194, lessthanequal, KP_End, KP_End, downstile, NoSymbol ] };
key <KP2> { [ KP_2, heart, downarrow, union, KP_Down, KP_Down, U22C3, NoSymbol ] };
key <KP3> { [ KP_3, U2660, U21CC, greaterthanequal, KP_Next, KP_Next, U230B, NoSymbol ] };
key <KPEN> { [ KP_Enter, KP_Enter, KP_Enter, KP_Enter, KP_Enter, KP_Enter, KP_Enter, NoSymbol ] };
key <KPEQ> { [ KP_Equal, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
// Bottommost row
// --------------------------------------------------------------
key <KP0> { [ KP_0, U2423, percent, U2030, KP_Insert, KP_Insert, U25A1, NoSymbol ] };
key <KPDL> { [ KP_Separator, period, comma, minutes, KP_Delete, KP_Delete, seconds, NoSymbol ] };
};
partial alphanumeric_keys modifier_keys keypad_keys
xkb_symbols "neo_base_kyrillisch" {
name[Group1]= "Germany - Neo 2";
// Levels in Neo jargon
// --------------------------------------------------------------
// Ebene 1: normal
// Ebene 2: Shift
// Ebene 3: Mod3
// Ebene 4: Mod4 (for marking something use Shift + Mod4)
// Ebene 5: Shift + Mod3
// Ebene 6: Mod3 + Mod4
// Compose (not a level): Mod3 + Tab
// Feststelltaste (Capslock): Shift + Shift
// Mod4-Lock: Mod4 + Mod4
// Mod4-Lock: Shift + Mod3 + Tab
// Legend
// ===============
// Levels in Xkbmap jargon to be found here in the definitions.
// These are the levels used, and Xorg's translations:
// --------------------------------------------------------------
// Xorg: Level1 Level2 Level3 Level4 Level5 Level6 Level7 Level8
// Neo: Ebene1 Ebene2 Ebene3 Ebene5 Ebene4 Pseudo-Ebene Ebene6 ???
// Keys (Neo): None Shift Mod3 Mod3 + Shift Mod4 Mod4 + Shift Mod3 + Mod4 Mod3 + Mod4 + Shift
// Alphanumeric-keys
// ===============
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS";
// Tab as Multi_key (Compose)
// --------------------------------------------------------------
key <TAB> { [ Tab, ISO_Left_Tab, Multi_key, ISO_Level5_Lock, NoSymbol, NoSymbol, NoSymbol, ISO_Level5_Lock ] };
// Number row
// --------------------------------------------------------------
key <TLDE> { [ dead_circumflex, dead_caron, U21BB, U02DE, dead_abovedot, Pointer_EnableKeys, dead_belowdot, NoSymbol ] };
key <AE01> { [ 1, degree, onesuperior, onesubscript, ordfeminine, NoSymbol, notsign, NoSymbol ] };
key <AE02> { [ 2, section, twosuperior, twosubscript, masculine, NoSymbol, logicalor, NoSymbol ] };
key <AE03> { [ 3, U2113, threesuperior, threesubscript, numerosign, NoSymbol, logicaland, NoSymbol ] };
key <AE04> { [ 4, guillemotright, U203A, femalesymbol, Prior, Prior, U22A5, NoSymbol ] };
key <AE05> { [ 5, guillemotleft, U2039, malesymbol, periodcentered, NoSymbol, U2221, NoSymbol ] };
key <AE06> { [ 6, dollar, cent, U26A5, sterling, NoSymbol, U2225, NoSymbol ] };
key <AE07> { [ 7, EuroSign, yen, U03F0, currency, NoSymbol, rightarrow, NoSymbol ] };
key <AE08> { [ 8, doublelowquotemark, singlelowquotemark, U27E8, Tab, ISO_Left_Tab, U221E, NoSymbol ] };
key <AE09> { [ 9, leftdoublequotemark, leftsinglequotemark, U27E9, KP_Divide, KP_Divide, variation, NoSymbol ] };
key <AE10> { [ 0, rightdoublequotemark, rightsinglequotemark, zerosubscript, KP_Multiply, KP_Multiply, emptyset, NoSymbol ] };
key <AE11> { [ minus, emdash, NoSymbol, U2011, KP_Subtract, KP_Subtract, hyphen, NoSymbol ] };
key <AE12> { [ dead_grave, dead_cedilla, dead_abovering, U1FFE, dead_diaeresis, NoSymbol, dead_macron, NoSymbol ] };
// Top row
// --------------------------------------------------------------
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS_QUARTERALPHABETIC";
key <AD01> { [ Cyrillic_che, Cyrillic_CHE, ellipsis, Greek_xi, Prior, Prior, Greek_XI, NoSymbol ] };
key <AD02> { [ Cyrillic_ve, Cyrillic_VE, underscore, NoSymbol, BackSpace, BackSpace, radical, NoSymbol ] };
key <AD03> { [ Cyrillic_el, Cyrillic_EL, bracketleft, Greek_lambda, Up, Up, Greek_LAMBDA, NoSymbol ] };
key <AD04> { [ Cyrillic_tse, Cyrillic_TSE, bracketright, Greek_chi, Delete, Delete, U2102, NoSymbol ] };
key <AD05> { [ Cyrillic_sha, Cyrillic_SHA, asciicircum, Greek_omega, Next, Next, Greek_OMEGA, NoSymbol ] };
key <AD06> { [ Cyrillic_ka, Cyrillic_KA, exclam, Greek_kappa, exclamdown, NoSymbol, multiply, NoSymbol ] };
key <AD07> { [ Cyrillic_ha, Cyrillic_HA, less, Greek_psi, KP_7, KP_7, Greek_PSI, NoSymbol ] };
key <AD08> { [ Cyrillic_ghe, Cyrillic_GHE, greater, Greek_gamma, KP_8, KP_8, Greek_GAMMA, NoSymbol ] };
key <AD09> { [ Cyrillic_ef, Cyrillic_EF, equal, Greek_phi, KP_9, KP_9, Greek_PHI, NoSymbol ] };
key <AD10> { [ Cyrillic_zhe, Cyrillic_ZHE, ampersand, U03D5, KP_Add, KP_Add, U211A, NoSymbol ] };
key <AD11> { [ Macedonia_dse, Macedonia_DSE, U017F, Greek_finalsmallsigma, U2212, NoSymbol, jot, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS";
key <AD12> { [ dead_acute, dead_tilde, dead_stroke, U1FBF, dead_doubleacute, NoSymbol, dead_breve, NoSymbol ] };
// Middle row
// --------------------------------------------------------------
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS_QUARTERALPHABETIC";
key <AC01> { [ Cyrillic_u, Cyrillic_U, backslash, NoSymbol, Home, Home, includedin, NoSymbol ] };
key <AC02> { [ Cyrillic_i, Cyrillic_I, slash, Greek_iota, Left, Left, integral, NoSymbol ] };
key <AC03> { [ Cyrillic_a, Cyrillic_A, braceleft, Greek_alpha, Down, Down, U2200, NoSymbol ] };
key <AC04> { [ Cyrillic_ie, Cyrillic_IE, braceright, Greek_epsilon, Right, Right, U2203, NoSymbol ] };
key <AC05> { [ Cyrillic_o, Cyrillic_O, asterisk, Greek_omicron, End, End, elementof, NoSymbol ] };
key <AC06> { [ Cyrillic_es, Cyrillic_ES, question, Greek_sigma, questiondown, NoSymbol, Greek_SIGMA, NoSymbol ] };
key <AC07> { [ Cyrillic_en, Cyrillic_EN, parenleft, Greek_nu, KP_4, KP_4, U2115, NoSymbol ] };
key <AC08> { [ Cyrillic_er, Cyrillic_ER, parenright, Greek_rho, KP_5, KP_5, U211D, NoSymbol ] };
key <AC09> { [ Cyrillic_te, Cyrillic_TE, minus, Greek_tau, KP_6, KP_6, partialderivative, NoSymbol ] };
key <AC10> { [ Cyrillic_de, Cyrillic_DE, colon, Greek_delta, KP_Separator, NoSymbol, Greek_DELTA, NoSymbol ] };
key <AC11> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, at, Greek_upsilon, period, NoSymbol, nabla, NoSymbol ] };
// Bottom row
// --------------------------------------------------------------
key <AB01> { [ Serbian_tshe, Serbian_TSHE, numbersign, NoSymbol, Escape, Escape, union, NoSymbol ] };
key <AB02> { [ Ukrainian_i, Ukrainian_I, dollar, U03F5, Tab, Tab, intersection, NoSymbol ] };
key <AB03> { [ Cyrillic_e, Cyrillic_E, bar, Greek_eta, Insert, Insert, U2135, NoSymbol ] };
key <AB04> { [ Cyrillic_pe, Cyrillic_PE, asciitilde, Greek_pi, Return, Return, Greek_PI, NoSymbol ] };
key <AB05> { [ Cyrillic_ze, Cyrillic_ZE, grave, Greek_zeta, Undo, Undo, U2124, NoSymbol ] };
key <AB06> { [ Cyrillic_be, Cyrillic_BE, plus, Greek_beta, colon, NoSymbol, U21D0, NoSymbol ] };
key <AB07> { [ Cyrillic_em, Cyrillic_EM, percent, Greek_mu, KP_1, KP_1, ifonlyif, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS";
key <AB08> { [ comma, endash, quotedbl, U03F1, KP_2, KP_2, U21D2, NoSymbol ] };
key <AB09> { [ period, enfilledcircbullet, apostrophe, U03D1, KP_3, KP_3, U21A6, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS_QUARTERALPHABETIC";
key <AB10> { [ Cyrillic_je, Cyrillic_JE, semicolon, Greek_theta, semicolon, NoSymbol, Greek_THETA, NoSymbol ] };
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS";
// Space key
// --------------------------------------------------------------
key <SPCE> { [ space, space, space, nobreakspace, KP_0, KP_0, U202F, NoSymbol ] };
// Keypad-keys
// ===============
// The former Numlock key:
key <NMLK> { [ Tab, ISO_Left_Tab, equal, approxeq, notequal, Pointer_EnableKeys, identical, NoSymbol ] };
// Topmost row
// --------------------------------------------------------------
key <KPDV> { [ KP_Divide, KP_Divide, division, U2300, U2215, NoSymbol, U2223, NoSymbol ] };
key <KPMU> { [ KP_Multiply, KP_Multiply, U2219, U2299, multiply, NoSymbol, U2297, NoSymbol ] };
key <KPSU> { [ KP_Subtract, KP_Subtract, U2212, U2296, U2216, NoSymbol, U2238, NoSymbol ] };
// Top row
// --------------------------------------------------------------
key <KP7> { [ KP_7, U2714, U2195, U226A, KP_Home, KP_Home, upstile, NoSymbol ] };
key <KP8> { [ KP_8, U2718, uparrow, intersection, KP_Up, KP_Up, U22C2, NoSymbol ] };
key <KP9> { [ KP_9, dagger, U20D7, U226B, KP_Prior, KP_Prior, U2309, NoSymbol ] };
key <KPAD> { [ KP_Add, KP_Add, plusminus, U2295, U2213, NoSymbol, U2214, NoSymbol ] };
// Middle row
// --------------------------------------------------------------
key <KP4> { [ KP_4, club, leftarrow, includedin, KP_Left, KP_Left, U2286, NoSymbol ] };
key <KP5> { [ KP_5, EuroSign, colon, U22B6, KP_Begin, KP_Begin, U22B7, NoSymbol ] };
key <KP6> { [ KP_6, U2023, rightarrow, includes, KP_Right, KP_Right, U2287, NoSymbol ] };
// Bottom row
// --------------------------------------------------------------