Skip to content

Instantly share code, notes, and snippets.

@allanlaal
Created March 12, 2020 14:41
Show Gist options
  • Save allanlaal/5a203327cb712625c93c41dd8551f7b4 to your computer and use it in GitHub Desktop.
Save allanlaal/5a203327cb712625c93c41dd8551f7b4 to your computer and use it in GitHub Desktop.
my 8 level (modifiers: Altgr, Shift, Caps) xkb keyboard layout 2020-03-12
// @desc AIS keyboard layout
// @author Allan Laal <[email protected]>
// @install Add Estonian keyboard layout. delete old Estonian keyboard layout
// project location: /afs/acn/infra./laptop./keyboard./layout.
// actual layout path: /usr/share/X11/xkb/symbols
// $ sudo ln -sf /afs/acn/infra./laptop./keyboard./layout./ee /usr/share/X11/xkb/symbols/ex
//
// DEPRECATED?: RELOAD layout: setxkbmap -option lv3:caps_switch -option lv5:ralt_switch -option terminate:ctrl_alt_bksp -layout 'ex' -symbols 'alcom'
// setxkbmap -layout 'ex' -symbols 'alcom' -v 10
default partial alphanumeric_keys modifier_keys keypad_keys
xkb_symbols "alcom" {
// TODO: how uuri: volume keyd päriseks mappida replace keyga?
// NB! paljud äppid (nagu Chrome ja Tortoise) tahavad restarti, et uus kb laadida!!!!
// list modifiers: xmodmap -pm
name[Group1]="Estonian";
key.type[Group1] = "EIGHT_LEVEL";
// ### ee alcom layout MUST SET ralt_switch AND caps_switch:
include "level5(ralt_switch)" // AltGr = ISO_Level5_Shift // TODO: no Level 5 Lock? (kirjutan käsitsi Level4 RALT_switchi)
include "level3(caps_switch)" // Caps = ISO_Level3_Shift
// Ctrl + Backspace kills X
include "terminate(ctrl_alt_bksp)" // Ctrl+Shift+Del = X11 restart
// ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――
// get keycode from http://graphemica.com -> Unicode Code Point \wo +: U+00B3 → U00B3
// list of current mappings: xmodmap -pke
// 1. xmodmap -pke | grep -i home
// 1. xmodmap -pke | grep 'keycode 156'
// 2. cat /usr/share/X11/xkb/keycodes/evdev | grep 156
// 3. grep -ir FK /usr/share/X11/xkb/symbols/
// http://wiki.linuxquestions.org/wiki/XF86_keyboard_symbols
// Themes: Math Subscript
// Shortcuts: Key Shift Caps+Key Caps+Shift AltGr AltGr+Shift Caps+AltGr Caps+AltGr+Shift
// Levels: 1 2 3 4 5 6 7 8 // 1 2 3 4 5 6 7 8
// Row № 𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘𝟘
// keyboard main section: row 1: Function keys
// Shortcuts: Key Shift Caps+Key Caps+Shift AltGr AltGr+Shift Caps+AltGr Caps+AltGr+Shift
// Levels: 1 2 3 4 5 6 7 8 // 1 2 3 4 5 6 7 8
// key <nr> { [ Fx, igaksjuhuks,NoSymbol, NoSymbol, Goal, Essentialism NoSymbol, NoSymbol ]};
key <ESC> { [ Escape, Escape, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Esc Esc 🎯 ∡ 🗋 🗋 🗋 🗋
key <FK01> { [ F1, F1, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Fx Fx 🗋 🗋 🗋 🗋 🗋 🗋
key <FK02> { [ F2, F2, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Fx Fx 🗋 🗋 🗋 🗋 🗋 🗋
key <FK03> { [ F3, F3, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Fx Fx 🗋 🗋 🗋 🗋 🗋 🗋
key <FK04> { [ F4, F4, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Fx Fx 🗋 🗋 🗋 🗋 🗋 🗋
key <FK05> { [ F5, F5, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Fx Fx 🗋 🗋 🗋 🗋 🗋 🗋
key <FK06> { [ F6, F6, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Fx Fx 🗋 🗋 🗋 🗋 🗋 🗋
key <FK07> { [ F7, F7, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Fx Fx 🗋 🗋 🗋 🗋 🗋 🗋
key <FK08> { [ F8, F8, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Fx Fx 🗋 🗋 🗋 🗋 🗋 🗋
key <FK09> { [ F9, F9, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Fx Fx 🗋 🗋 🗋 🗋 🗋 🗋
key <FK10> { [ F10, F10, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Fx Fx 🗋 🗋 🗋 🗋 🗋 🗋
key <FK11> { [ F11, F11, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Fx Fx 🗋 🗋 🗋 🗋 🗋 🗋
key <FK12> { [ F12, F12, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Fx Fx 🗋 🗋 🗋 🗋 🗋 🗋
key <HOME> { [ Home, Home, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Fx Fx 🗋 🗋 🗋 🗋 🗋 🗋
key <END> { [ End, End, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Fx Fx 🗋 🗋 🗋 🗋 🗋 🗋
key <INS> { [ Insert, Insert, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Fx Fx 🗋 🗋 🗋 🗋 🗋 🗋
key <DELE> { [ Delete, Delete, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // Fx Fx 🗋 🗋 🗋 🗋 🗋 🗋
// Levels: 1 2 3 4 5 6 7 8 // 1 2 3 4 5 6 7 8
// Row № 𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙𝟙
// keyboard main section: row 2: numbers
// Shortcuts: Key Shift Caps+Key Caps+Shift AltGr AltGr+Shift Caps+AltGr Caps+AltGr+Shift
// Levels: 1 2 3 4 5 6 7 8 // 1 2 3 4 5 6 7 8
key <TLDE> {[ U00B0, asciitilde, U2022, U25CF, U25CF, U207F, NoSymbol, NoSymbol ]}; // ° ~ • ● ● ⁿ 🗋 🗋
key <AE01> {[ 1, exclam, NoSymbol, NoSymbol, U24F5, U00B9, NoSymbol, NoSymbol ]}; // 1 ! 🗋 🗋 ⓵ ¹ 🗋 🗋
key <AE02> {[ 2, quotedbl, NoSymbol, NoSymbol, U0040, U00B2, NoSymbol, NoSymbol ]}; // 2 " 🗋 🗋 @ ² 🗋 🗋
key <AE03> {[ 3, numbersign, NoSymbol, U03C0, sterling, U00B3, NoSymbol, NoSymbol ]}; // 3 # 🗋 π £ ³ 🗋 🗋
key <AE04> {[ 4, cent, NoSymbol, NoSymbol, dollar, U2074, NoSymbol, NoSymbol ]}; // 4 ¤ 🗋 🗋 $ ⁴ 🗋 🗋
key <AE05> {[ 5, percent, U2030, NoSymbol, NoSymbol, U2075, NoSymbol, NoSymbol ]}; // 5 % ‰ 🗋 🗋 ⁵ 🗋 🗋
key <AE06> {[ 6, ampersand, NoSymbol, NoSymbol, UFF5E, U2076, NoSymbol, NoSymbol ]}; // 6 & 🗋 🗋 ~ ⁶ 🗋 🗋
key <AE07> {[ 7, slash, NoSymbol, NoSymbol, U007B, U2077, NoSymbol, NoSymbol ]}; // 7 / 🗋 🗋 { ⁷ 🗋 🗋
key <AE08> {[ 8, parenleft, U27E6, U2770, U005B, U2078, NoSymbol, NoSymbol ]}; // 8 ( ⟦ ❰ [ ⁸ 🗋 🗋
key <AE09> {[ 9, parenright, U27E7, U2771, U005D, U2079, NoSymbol, NoSymbol ]}; // 9 ) ⟧ ❱ ] ⁹ 🗋 🗋
key <AE10> {[ 0, equal, U2248, U2A72, U007D, U2070, U221E, NoSymbol ]}; // 0 = ≈ ⩲ } ⁰ ∞ 🗋
key <AE11> {[ plus, question, NoSymbol, U00BF, backslash, U00B1, NoSymbol, NoSymbol ]}; // + ? 🗋 ¿ \ ± 🗋 🗋
key <AE12> {[ U0060, U00B4, NoSymbol, NoSymbol, U22CD, U2116, NoSymbol, NoSymbol ]}; // ` ´ 🗋 🗋 ⋍ № 🗋 🗋
// Levels: 1 2 3 4 5 6 7 8 // 1 2 3 4 5 6 7 8
// key <BKSP> {[ BackSpace ]}; // ei tohi remappida! SEST: X'i killib (/etc/default/keyboard:terminate:XKBOPTIONS="terminate:ctrl_alt_bksp")aint /etc/default/keyboard:BACKSPACE="guess" ehk keycode 22 (keysym 0xff08, BackSpace) (vist contextipõhine siis)
// Levels: 1 2 3 4 5 6 7 8 // 1 2 3 4 5 6 7 8
// Row № 𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚𝟚
// keyboard main section: row 3: TAB QWERTYUIOPÜÕ
// Shortcuts: Key Shift Caps+Key Caps+Shift AltGr AltGr+Shift Caps+AltGr Caps+AltGr+Shift
// Levels: 1 2 3 4 5 6 7 8 // 1 2 3 4 5 6 7 8
key <TAB> {[ Tab, ISO_Left_Tab,U2022, U1F6A9, NoSymbol, NoSymbol, NoSymbol, U1F3F4 ]}; // TAB TAB • 🚩 🗋 🗋 🗋 🏴
key <AD01> {[ q, Q, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // q Q 🗋 🗋 🗋 🗋 🗋 🗋
key <AD02> {[ w, W, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // w W 🗋 🗋 🗋 🗋 🗋 🗋
key <AD03> {[ e, E, NoSymbol, NoSymbol, U20AC, U20AC, NoSymbol, U2091 ]}; // e E 🗋 🗋 € € 🗋 ₑ
key <AD04> {[ r, R, NoSymbol, NoSymbol, U2122, U00AE, NoSymbol, U1D63 ]}; // r R 🗋 🗋 ™ ® 🗋 ᵣ
key <AD05> {[ t, T, U1F143, NoSymbol, UA68C, U24E3, NoSymbol, U209C ]}; // t T 🅃 🗋 Ꚍ ⓣ 🗋 ₜ
key <AD06> {[ y, Y, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // y Y 🗋 🗋 🗋 🗋 🗋 🗋
key <AD07> {[ u, U, NoSymbol, NoSymbol, U23A1, U2770, NoSymbol, U1D64 ]}; // u U 🗋 🗋 ⎡ ❰ 🗋 ᵤ
key <AD08> {[ i, I, NoSymbol, NoSymbol, U23A6, U2771, NoSymbol, U1D62 ]}; // i I 🗋 🗋 ⎦ ❱ 🗋 ᵢ
key <AD09> {[ o, O, NoSymbol, NoSymbol, U00F8, U00D8, NoSymbol, U2092 ]}; // o O 🗋 🗋 ø Ø 🗋 ₒ
key <AD10> {[ p, P, NoSymbol, U03C0, U00B6, NoSymbol, NoSymbol, U209A ]}; // p P 🗋 π ¶ 🗋 🗋 ₚ
key <AD11> {[ udiaeresis, Udiaeresis, NoSymbol, NoSymbol, U2762, U1F497, NoSymbol, NoSymbol ]}; // ü Ü 🗋 🗋 ❢ 💖 🗋 🗋
key <AD12> {[ otilde, Otilde, NoSymbol, NoSymbol, section, NoSymbol, NoSymbol, NoSymbol ]}; // õ Õ 🗋 🗋 § 🗋 🗋 🗋
// Levels: 1 2 3 4 5 6 7 8 // 1 2 3 4 5 6 7 8
// Row № 𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛𝟛
// keyboard main section: row 4: CapsLock ASDFGHJKLÖÄ'
// Shortcuts: Key Shift Caps+Key Caps+Shift AltGr AltGr+Shift Caps+AltGr Caps+AltGr+Shift
// Levels: 1 2 3 4 5 6 7 8 // 1 2 3 4 5 6 7 8
// key <CAPS> = Modifier
key <AC01> {[ a, A, NoSymbol, NoSymbol, U00E0, U1D6C2, NoSymbol, U2090 ]}; // a A 🗋 🗋 à 𝛂 🗋 ₐ
key <AC02> {[ s, S, NoSymbol, NoSymbol, scaron, Scaron, NoSymbol, U209B ]}; // s S 🗋 🗋 š Š 🗋 ₛ
key <AC03> {[ d, D, NoSymbol, U1D6AB, U1F133, U23F3, NoSymbol, NoSymbol ]}; // d D 🗋 𝚫 🄳 ⏳ 🗋 🗋
key <AC04> {[ f, F, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // f F 🗋 🗋 🗋 🗋 🗋 🗋
key <AC05> {[ g, G, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol ]}; // g G 🗋 🗋 🗋 🗋 🗋 🗋
key <AC06> {[ h, H, NoSymbol, NoSymbol, NoSymbol, U14C7, NoSymbol, U2095 ]}; // h H 🗋 🗋 🗋 ᓇ 🗋 ₕ
key <AC07> {[ j, J, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, U2C7C ]}; // j J 🗋 🗋 🗋 🗋 🗋 ⱼ
key <AC08> {[ k, K, NoSymbol, NoSymbol, U0138, U1F413, NoSymbol, U2096 ]}; // k K 🗋 🗋 ĸ 🐓 🗋 ₖ
key <AC09> {[ l, L, NoSymbol, NoSymbol, U1F13B, U1F411, NoSymbol, U2097 ]}; // l L 🗋 🗋 🄻 🐑 🗋 ₗ
key <AC10> {[ odiaeresis, Odiaeresis, NoSymbol, NoSymbol, dead_acute, dead_doubleacute,NoSymbol, NoSymbol ]}; // ö Ö 🗋 🗋 ´ ˝ 🗋 🗋
key <AC11> {[ adiaeresis, Adiaeresis, U1F3A9, NoSymbol, asciicircum, U00E5, NoSymbol, NoSymbol ]}; // ä Ä 🎩 🗋 ^ å 🗋 🗋
key <BKSL> {[ apostrophe, asterisk, NoSymbol, NoSymbol, onehalf, U2731, NoSymbol, NoSymbol ]}; // ' * 🗋 🗋 ½ ✱ 🗋 🗋
// Levels: 1 2 3 4 5 6 7 8 // 1 2 3 4 5 6 7 8
// Row № 𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜𝟜
// keyboard main section: row 5: Shift <ZXCVBNM,.- Shift
// Shortcuts: Key Shift Caps+Key Caps+Shift AltGr AltGr+Shift Caps+AltGr Caps+AltGr+Shift
// Levels: 1 2 3 4 5 6 7 8 // 1 2 3 4 5 6 7 8
key <LSGT> {[ bar, brokenbar, U21B3, NoSymbol, U2190, U2192, NoSymbol, NoSymbol ]}; // | ¦ ↳ 🗋 ← → 🗋 🗋
key <AB01> {[ z, Z, NoSymbol, NoSymbol, zcaron, Zcaron, NoSymbol, NoSymbol ]}; // z Z 🗋 🗋 ž Ž 🗋 🗋
key <AB02> {[ x, X, NoSymbol, NoSymbol, NoSymbol, U1D5EB, NoSymbol, U2093 ]}; // x X 🗋 🗋 🗋 𝗫 🗋 ₓ
key <AB03> {[ c, C, NoSymbol, NoSymbol, U00A2, U00A9, NoSymbol, U1D520 ]}; // c C 🗋 🗋 ¢ © 🗋 𝔠
key <AB04> {[ v, V, NoSymbol, NoSymbol, NoSymbol, U33A7, NoSymbol, U1D65 ]}; // v V 🗋 🗋 🗋 ㎧ 🗋 ᵥ
key <AB05> {[ b, B, NoSymbol, NoSymbol, U26D4, U33A8, NoSymbol, NoSymbol ]}; // b B 🗋 🗋 ⛔ ㎨ 🗋 🗋
key <AB06> {[ n, N, NoSymbol, NoSymbol, U03B7, U33A1, NoSymbol, U2099 ]}; // n N 🗋 🗋 η ㎡ 🗋 ₙ
key <AB07> {[ m, M, NoSymbol, NoSymbol, U00B5, U33A5, NoSymbol, U2098 ]}; // m M 🗋 🗋 µ ㎥ 🗋 ₘ
key <AB08> {[ comma, semicolon, NoSymbol, NoSymbol, less, lessthanequal, NoSymbol, NoSymbol ]}; // , ; 🗋 🗋 < ≤ 🗋 🗋
key <AB09> {[ period, colon, NoSymbol, NoSymbol, greater, greaterthanequal,NoSymbol, NoSymbol ]}; // . : 🗋 🗋 > ≥ 🗋 🗋
key <AB10> {[ minus, underscore, NoSymbol, NoSymbol, U1F795, U2B1C, NoSymbol, U25EF ]}; // - _ 🗋 🗋 🞕 ⬜ 🗋 ◯
// Levels: 1 2 3 4 5 6 7 8 // 1 2 3 4 5 6 7 8
// Row № 𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝𝟝
// keyboard main section: row 6: Fn Ctrl Super Alt Space AltGr PrintScreen Ctrl + dpad
// Shortcuts: Key Shift Caps+Key Caps+Shift AltGr AltGr+Shift Caps+AltGr Caps+AltGr+Shift
// Levels: 1 2 3 4 5 6 7 8 // 1 2 3 4 5 6 7 8
// keyboard dpad section:
// 3 levels used as base, BECAUSE Chrome ignores them
// Shortcuts: Key Shift Caps+Key Caps+Shift AltGr AltGr+Shift Caps+AltGr Caps+AltGr+Shift
// Levels: 1 2 3 4 5 6 7 8 // 1 2 5 3 4 6 7 8
key <PGUP> {[ KP_Prior, KP_Prior, NoSymbol, NoSymbol, KP_Prior, U1F44D, NoSymbol, NoSymbol ]}; // PageUp 🗋 🗋 👍 🗋 🗋
key <UP> {[ KP_Up, KP_Up, NoSymbol, NoSymbol, KP_Up, U1F881, NoSymbol, NoSymbol ]}; // Up 🗋 🗋 🢁 🗋 🗋
key <PGDN> {[ KP_Next, KP_Next, NoSymbol, NoSymbol, KP_Next, U1F44E, NoSymbol, NoSymbol ]}; // PageDown 🗋 🗋 👎 🗋 🗋
key <LEFT> {[ KP_Left, KP_Left, NoSymbol, NoSymbol, KP_Left, U1F880, NoSymbol, NoSymbol ]}; // Left 🗋 🗋 🢀 🗋 🗋
key <DOWN> {[ KP_Down, KP_Down, NoSymbol, NoSymbol, KP_Down, U1F883, NoSymbol, NoSymbol ]}; // Down 🗋 🗋 🢃 🗋 🗋
key <RGHT> {[ KP_Right, KP_Right, NoSymbol, NoSymbol, KP_Right, U1F882, NoSymbol, NoSymbol ]}; // Right 🗋 🗋 🢂 🗋 🗋
// Levels: 1 2 3 4 5 6 7 8 // 1 2 5 3 4 6 7 8
// keyboard numpad section: top row launchers|multimedia keys|app keys
// Shortcuts: Key Shift Caps+Key Caps+Shift AltGr AltGr+Shift Caps+AltGr Caps+AltGr+Shift
// Levels: 1 2 3 4 5 6 7 8
// Volume keyd: NB!!
// 2x neist nuppudest kasutab hw codetud shortcutti, mida ei saa 1x keyks muuta:
// https://unix.stackexchange.com/questions/113906/remapping-keys-that-generate-multiple-scan-codes
// # VolUp (numpadi kohal reas #2):
// KeyRelease event, serial 687, synthetic NO, window 0x8000001,
// root 0x14d, subw 0x0, time 561220532, (125,-24), root:(6770,371),
// state 0x40, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
// XLookupString gives 0 bytes:
// XFilterEvent returns: False
// # VolDown (numpadi kohal reas #3):
// FocusOut event, serial 687, synthetic NO, window 0x8000001,
// mode NotifyGrab, detail NotifyAncestor
//
// FocusIn event, serial 687, synthetic NO, window 0x8000001,
// mode NotifyUngrab, detail NotifyAncestor
//
// KeymapNotify event, serial 687, synthetic NO, window 0x0,
// keys: 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
// 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
// # VolMute (numpadi kohal reas #4):
// KeyRelease event, serial 687, synthetic NO, window 0x8000001,
// root 0x14d, subw 0x0, time 561251938, (81,-14), root:(6726,381),
// state 0x40, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
// XLookupString gives 0 bytes:
// XFilterEvent returns: False
// DONE: proovisin läbi kõik inet all special keys sh. I0..I400 = nada, mitte ükski neljast ei funkanud
// TODO.(NOT:L4 [L4 on hw encodetud need nupud]): mapi need tavanuppudeks (replace key <VOLsth>), et saaks 4 levelit kasutada (mitte nii, et 1st level ongi juba 2x combinatsioon, nagu praegu)
// KEY_HOMEPAGE jääb mõnikord kinni ja selle fiximiseks peab 10000x sügavalt seda vajutama
// TODO: siia borderid (nagu https://github.com/emareg/unikeyboard )
// TODO: level7+8 = borderid? (useless?)
// keyboard numpad section: numpad
// Shortcuts: Key Shft=Tiling Caps+Key Caps+Shift AltGr AltGr+Shift Caps+AltGr suht mõtetu siin: Caps+AltGr+Shift
// Levels: 1 2 3 4 5 6 7 8 // 1 2 3 4 5 6 7 8
key <NMLK> {[ XF86WWW, XF86WWW, NoSymbol, NoSymbol, XF86MySites, NoSymbol, NoSymbol, NoSymbol ]}; // Cr FF 🗋 🗋 fm 🗋 🗋 🗋
key <KPDV> {[ KP_Divide, KP_Divide, NoSymbol, NoSymbol, U2797, NoSymbol, NoSymbol, NoSymbol ]}; // / / 🗋 🗋 ➗ 🗋 🗋 🗋
key <KPMU> {[ KP_Multiply,KP_Multiply,NoSymbol, NoSymbol, U2716, U2093, NoSymbol, NoSymbol ]}; // * * 🗋 🗋 ✖ ₓ 🗋 🗋
key <KPSU> {[ KP_Subtract,KP_Subtract,NoSymbol, NoSymbol, U2796, U208B, NoSymbol, NoSymbol ]}; // - - 🗋 🗋 ➖ 🗋 🗋 🗋
key <KP7> {[ KP_7, KP_7, U1D7DF, NoSymbol, U2087, U2195, NoSymbol, NoSymbol ]}; // KP 7 𝟟 🗋 ₇ ↕ 🗋 🗋
key <KP8> {[ KP_8, KP_8, U1D7E0, NoSymbol, U2088, U2B71, NoSymbol, NoSymbol ]}; // KP 8 𝟠 🗋 ₈ ⭱ 🗋 🗋
key <KP9> {[ KP_9, KP_9, U1D7E1, NoSymbol, U2089, U21A8, U279A, NoSymbol ]}; // KP 9 𝟡 🗋 ₉ ↨ ➚ 🗋
key <KP4> {[ KP_4, KP_4, U1D7DC, NoSymbol, U2084, U2B70, NoSymbol, NoSymbol ]}; // KP 4 𝟜 🗋 ₄ ⭰ 🗋 🗋
key <KP5> {[ KP_5, KP_5, U1D7DD, NoSymbol, U2085, U21C5, NoSymbol, NoSymbol ]}; // KP 5 𝟝 🗋 ₅ ⇅ 🗋 🗋
key <KP6> {[ KP_6, KP_6, U1D7DE, NoSymbol, U2086, U2B72, NoSymbol, NoSymbol ]}; // KP 6 𝟞 🗋 ₆ ⭲ 🗋 🗋
key <KPAD> {[ KP_Add, KP_Add, NoSymbol, NoSymbol, U2795, U208A, U2502, U2503 ]}; // + + 🗋 🗋 ➕ ₊ │ ┃
key <KP1> {[ KP_1, KP_1, U1D7D9, NoSymbol, U2081, U2194, NoSymbol, NoSymbol ]}; // KP 1 𝟙 🗋 ₁ ↔ 🗋 🗋
key <KP2> {[ KP_2, KP_2, U1D7DA, NoSymbol, U2082, U2B73, NoSymbol, NoSymbol ]}; // KP 2 𝟚 🗋 ₂ ⭳ 🗋 🗋
key <KP3> {[ KP_3, KP_3, U1D7DB, NoSymbol, U2083, U21B3, U2798, NoSymbol ]}; // KP 3 𝟛 🗋 ₃ ↳ ➘ 🗋
key <KP0> {[ KP_0, KP_0, U1D7D8, NoSymbol, U2080, U2318, U2500, U2501 ]}; // KP 0 𝟘 🗋 ₀ ⌘ ─ ━
key <KPDL> {[ KP_Decimal, KP_Decimal, NoSymbol, NoSymbol, U2605, U2606, NoSymbol, NoSymbol ]}; // KP . . 🗋 🗋 ★ ☆ 🗋 🗋
key <KPEN> {[ KP_Enter, KP_Enter, NoSymbol, NoSymbol, U208C, U000A, NoSymbol, NoSymbol ]}; // KP_Enter 🗋 🗋1 ₌ LF 🗋 🗋
// Levels: 1 2 3 4 5 6 7 8 // 1 2 3 4 5 6 7 8
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment