VOU & Co.: Konfiguration
5. Oktober 2019 (letzte Änderung am 2. Juni 2020)
Windows
Dieser Treiber unterstützt Neo2, Aus der Neo-Welt, KOY, bone und VOU: neo2-llkh auf github.com
Er liegt im Quellcode vor und kann von jedem, der will, angepasst und kompiliert werden. Wer ihn einfach nur benutzen will, braucht nur diese beiden Dateien herunterzuladen:
Beide Dateien müssen im gleichen Ordner liegen. In der settings.ini
können das gewünschte Layout sowie ein paar Optionen eingestellt werden. Der Treiber wird einfach über einen Doppelklick auf die neo-llkh.exe
gestartet. Über das Symbol im Info-Bereich (unten rechts) wieder beendet werden.
Linux
Die meisten Layouts können über die Kommandozeile wie folgt aktiviert werden:
setxkbmap de koy
Für andere Layouts koy
durch z.B. neo
, neo_qwertz
, bone
, adnw
oder vou
ersetzen. (Für vou
müssen erst einmal die Schritte des nächsten Abschnittes durchgeführt werden.)
Zurückwechseln zu QWERTZ:
setxkbmap de
Damit diese Layouts auch in den Systemeinstellungen (in GNOME: Einstellungen → Region und Sprache → Eingabequellen) zur Auswahl stehen, müssen sie erst sichtbar gemacht werden:
gsettings set org.gnome.desktop.input-sources show-all-sources true
Das VOU-Layout zu XKB hinzufügen
Dafür müssen drei Dateien (mit sudo-Rechten!) ergänzt werden:
/usr/share/X11/xkb/symbols/level3
: Um die rechte Mod3-Taste auf die Ä-Taste legen zu können./usr/share/X11/xkb/symbols/de
: Die Definition des Layouts./usr/share/X11/xkb/rules/evdev.extras.xml
: Unter welchem Namen das Layout in den Einstellungen zu finden sein soll.
Folgendes in /usr/share/X11/xkb/symbols/level3
einfügen (z.B. nach dem xkb_symbols-Block "bksl_switch"
):
// The Quote key (while pressed) chooses the third shift level. partial modifier_keys xkb_symbols "quote_switch" { key <AC11> { type[Group1]="ONE_LEVEL", symbols[Group1] = [ ISO_Level3_Shift ] }; include "level3(modifier_mapping)" };
Folgendes in /usr/share/X11/xkb/symbols/de
einfügen (z.B. nach dem xkb_symbols-Block koy
):
partial alphanumeric_keys modifier_keys keypad_keys xkb_symbols "vou" { include "de(koy_base)" key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK"; // level 4: replace numero sign by heavy check mark (key 3) key <AE03> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, U2714, NoSymbol, NoSymbol, NoSymbol ] }; // level 4: use unused place for heavy ballot X (key 4) key <AE04> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, U2718, NoSymbol, NoSymbol, NoSymbol ] }; // level 4: replace middle dot on key 5 with WHITE MEDIUM STAR key <AE05> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, U2B50, NoSymbol, NoSymbol, NoSymbol ] }; // level 4: move middle dot "·" from key 5 to key 7 (replacing the currency sign "¤") key <AE07> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, periodcentered, NoSymbol, NoSymbol, NoSymbol ] }; // move comma and endash to QWERTZ-C key key <AB03> { [ comma, endash, NoSymbol, U03F1, NoSymbol, NoSymbol, U21D2, NoSymbol ] }; key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK"; // move f and ssharp keys to new positions, replace at by rightarrow; level4: replace period with semicolon key <AD10> { [ f, F, ampersand, Greek_phi, KP_Add, KP_Add, Greek_PHI, NoSymbol ] }; key <BKSL> { [ ssharp, U1E9E, rightarrow, Greek_finalsmallsigma, semicolon, KP_Decimal, jot, NoSymbol ] }; // rotate x, q, z, j, k and v key <AD06> { [ q, Q, NoSymbol, U03D5, NoSymbol, NoSymbol, U211A, NoSymbol ] }; key <AD11> { [ j, J, NoSymbol, Greek_theta, NoSymbol, NoSymbol, Greek_THETA, NoSymbol ] }; key <AB01> { [ z, Z, NoSymbol, Greek_zeta, NoSymbol, NoSymbol, U2124, NoSymbol ] }; key <AB02> { [ x, X, NoSymbol, Greek_xi, NoSymbol, NoSymbol, Greek_XI, NoSymbol ] }; key <AD01> { [ v, V, NoSymbol, NoSymbol, NoSymbol, NoSymbol, radical, NoSymbol ] }; key <AB10> { [ k, K, NoSymbol, Greek_kappa, NoSymbol, NoSymbol, multiply, NoSymbol ] }; // swap u, y and ä (and comma, but not here) key <AD04> { [ u, U, NoSymbol, NoSymbol, NoSymbol, NoSymbol, includedin, NoSymbol ] }; key <AC05> { [ y, Y, NoSymbol, Greek_upsilon, NoSymbol, NoSymbol, nabla, NoSymbol ] }; key <AD05> { [ adiaeresis, Adiaeresis, NoSymbol, Greek_eta, NoSymbol, NoSymbol, U2135, NoSymbol ] }; // swap b, d and p key <AC06> { [ b, B, NoSymbol, Greek_beta, NoSymbol, NoSymbol, U21D0, NoSymbol ] }; key <AB06> { [ p, P, NoSymbol, Greek_pi, NoSymbol, NoSymbol, Greek_PI, NoSymbol ] }; key <AB07> { [ d, D, NoSymbol, Greek_delta, NoSymbol, NoSymbol, Greek_DELTA, NoSymbol ] }; // rotate h, c and l key <AC01> { [ c, C, NoSymbol, Greek_chi, NoSymbol, NoSymbol, U2102, NoSymbol ] }; key <AD08> { [ l, L, NoSymbol, Greek_lambda, NoSymbol, NoSymbol, Greek_LAMBDA, NoSymbol ] }; key <AD09> { [ h, H, NoSymbol, Greek_psi, NoSymbol, NoSymbol, Greek_PSI, NoSymbol ] }; // level3: replace long s by Euro sign key <AD11> { [ NoSymbol, NoSymbol, EuroSign, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; // level3: put braces ({, }) in upper row key <AD03> { [ NoSymbol, NoSymbol, braceleft, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key <AD04> { [ NoSymbol, NoSymbol, braceright, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; // level3: swap underscore and percent key <AD02> { [ NoSymbol, NoSymbol, percent, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key <AB07> { [ NoSymbol, NoSymbol, underscore, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; // level3: replace … by @ key <AD01> { [ NoSymbol, NoSymbol, at, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; // level3: rearrangement of the home row key <AC01> { [ NoSymbol, NoSymbol, bar, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key <AC02> { [ NoSymbol, NoSymbol, grave, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key <AC03> { [ NoSymbol, NoSymbol, parenleft, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key <AC04> { [ NoSymbol, NoSymbol, parenright, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key <AC07> { [ NoSymbol, NoSymbol, slash, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key <AC08> { [ NoSymbol, NoSymbol, colon, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key <AC10> { [ NoSymbol, NoSymbol, underscore, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; // level3: rearrangement of the bottom row key <AB02> { [ NoSymbol, NoSymbol, bracketleft, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key <AB03> { [ NoSymbol, NoSymbol, bracketright, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key <AB05> { [ NoSymbol, NoSymbol, dollar, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key <AB07> { [ NoSymbol, NoSymbol, quotedbl, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key <AB08> { [ NoSymbol, NoSymbol, apostrophe, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; key <AB09> { [ NoSymbol, NoSymbol, backslash, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ] }; // level 4: rotate page down, backspace and delete key <AD02> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, Next, Next, NoSymbol, NoSymbol ] }; key <AD04> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, BackSpace, BackSpace, NoSymbol, NoSymbol ] }; key <AD05> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, Delete, Delete, NoSymbol, NoSymbol ] }; // level4: rotate escape, insert and return; replace undo with thumbs up sign key <AB01> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, Insert, Insert, NoSymbol, NoSymbol ] }; key <AB03> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, Return, Return, NoSymbol, NoSymbol ] }; key <AB04> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, Escape, Escape, NoSymbol, NoSymbol ] }; key <AB05> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, U1F44D, Undo, NoSymbol, NoSymbol ] }; // level4: swap . and ; // key BKSL was already changed above // key <BKSL> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, semicolon, NoSymbol, NoSymbol, NoSymbol ] }; key <AB10> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, period, KP_Decimal, NoSymbol, NoSymbol ] }; // level4: replace ¡ by : key <AD06> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, colon, NoSymbol, NoSymbol, NoSymbol ] }; // level4: replace ¿ by - key <AC06> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, minus, NoSymbol, NoSymbol, NoSymbol ] }; // level4: replace : by _ key <AB06> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol, underscore, NoSymbol, NoSymbol, NoSymbol ] }; name[Group1]= "German (VOU)"; include "shift(both_capslock)" include "level3(caps_switch)" // use quote key (a-umlaut on German keyboards) as Mod3 switch include "level3(quote_switch)" include "level5(lsgt_switch_lock)" include "level5(ralt_switch_lock)" };
Folgendes in /usr/share/X11/xkb/rules/evdev.extras.xml
einfügen (z.B. nach der Variante koy
):
<variant> <configItem> <name>vou</name> <description>German (VOU)</description> </configItem> </variant>
Dann müssen die Änderungen noch verarbeitet/aktiviert werden:
sudo dpkg-reconfigure xkb-data