From 7200c02827587151f3b78bafee3f725050d545e2 Mon Sep 17 00:00:00 2001 From: Ryan Kavanagh Date: Thu, 28 Dec 2023 20:02:39 -0500 Subject: move xkb config to XDG_CONFIG_HOME --- dot_config/xkb/symbols/dpr | 106 +++++++++++++++++++++++++++++++++++++ dot_config/xkb/symbols/icd | 111 +++++++++++++++++++++++++++++++++++++++ dot_config/xkb/symbols/lalt_meta | 4 ++ dot_config/xkb/symbols/myswap | 5 ++ 4 files changed, 226 insertions(+) create mode 100644 dot_config/xkb/symbols/dpr create mode 100644 dot_config/xkb/symbols/icd create mode 100644 dot_config/xkb/symbols/lalt_meta create mode 100644 dot_config/xkb/symbols/myswap (limited to 'dot_config/xkb/symbols') diff --git a/dot_config/xkb/symbols/dpr b/dot_config/xkb/symbols/dpr new file mode 100644 index 0000000..580b68a --- /dev/null +++ b/dot_config/xkb/symbols/dpr @@ -0,0 +1,106 @@ +// Phonetic Russian (Dvorak) +// By: Ryan Kavanagh , http://ryanak.ca/ +// +// Based on the ICD layout +// +// SHIFT: ~ % 7 5 3 1 9 0 2 4 6 8 Ц BCKSP +// NORMAL: $ & [ { } ( = * ) + ] ! ц BCKSP +// AltGr: d~ ø € ¥ d˘ d¨ d¸ d`` d` d´ d˝ ¡ # BCKSP +// SFT-AG: ¢ Ø £ ¤ ` BCKSP +// +// TAB : < > П Ы Ф Г Ч Р Л Щ Й ? +// TAB ; , . п ы ф г ч р л щ й / +// TAB ä « » p y f g c r l ? @ | +// TAB Ä · P Y F G C R L / ^ \ +// +// CAPL А О Е У И Д Х Т Н С ъ ENTER +// CAPL а о е у и д х т н с ь ENTER +// CAPL a o e u i d h t n s - ENTER +// CAPL A O E U I D H T N S _ ENTER +// +// SHIFT " Я Ж К Ё Б М Ш В З SHIFT +// SHIFT ' я ж к ё б м ш в з SHIFT +// SHIFT â q j k x b m w v z SHIFT +// SHIFT  Q J K X B M W V Z +// +// Legend: dX -> dead_X +// +// en dash: AltGr-hyphen_minus +// em dash: Shift-AltGr-hyphen_minus +// dead_doublegrave: AltGr-asterisk +// dead_abovedot: on AltGr-backslash +// dead_belowdot: on Shift-AltGr-backslash + +partial alphanumeric_keys +xkb_symbols "dpr" { + include "ru(phonetic)" + + name[Group1] = "Russia - Dvorak Phonetic"; + + // Unmodified Shift AltGr Shift+AltGr + // symbols row, left side + key { [ dollar, asciitilde, dead_tilde, cent ] }; + key { [ ampersand, percent, oslash, Ooblique ] }; + key { [ bracketleft, 7, EuroSign, sterling ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ braceleft, 5, yen, currency ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ braceright, 3, dead_hook ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ parenleft, 1, dead_diaeresis ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ equal, 9, dead_cedilla ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + + // symbols row, right side + key { [ asterisk, 0, dead_doublegrave ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ parenright, 2, dead_grave ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ plus, 4, dead_acute ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ bracketright, 6, dead_doubleacute ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ exclam, 8, exclamdown ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ Cyrillic_tse, Cyrillic_TSE, numbersign, grave ] }; + key { [ BackSpace ] }; + + // upper row, left side + key { [ semicolon, colon, adiaeresis, Adiaeresis ] }; + key { [ comma, less, guillemotleft, degree ] }; + key { [ period, greater, guillemotright, periodcentered ] }; + key { [ Cyrillic_pe, Cyrillic_PE, p, P ] }; + key { [ Cyrillic_yeru, Cyrillic_YERU, y, Y ] }; + + // upper row, right side + key { [ Cyrillic_ef, Cyrillic_EF, f, F ] }; + key { [ Cyrillic_ghe, Cyrillic_GHE, g, G ] }; + key { [ Cyrillic_che, Cyrillic_CHE, c, C ] }; + key { [ Cyrillic_er, Cyrillic_ER, r, R ] }; + key { [ Cyrillic_el, Cyrillic_EL, l, L ] }; + key { [ Cyrillic_shcha, Cyrillic_SHCHA, question, slash ] }; + key { [ Cyrillic_shorti, Cyrillic_SHORTI,at, asciicircum] }; + key { [ question, slash, bar, backslash ] }; + + // home row, left side + key { [ Cyrillic_a, Cyrillic_A, a, A ] }; + key { [ Cyrillic_o, Cyrillic_O, o, O ] }; + key { [ Cyrillic_ie, Cyrillic_IE, e, E ] }; + key { [ Cyrillic_u, Cyrillic_U, u, U ] }; + key { [ Cyrillic_i, Cyrillic_I, i, I ] }; + + // home row, right side + key { [ Cyrillic_de, Cyrillic_DE, d, D ] }; + key { [ Cyrillic_ha, Cyrillic_HA, h, H ] }; + key { [ Cyrillic_te, Cyrillic_TE, t, T ] }; + key { [ Cyrillic_en, Cyrillic_EN, n, N ] }; + key { [ Cyrillic_es, Cyrillic_ES, s, S ] }; + key { [ Cyrillic_softsign,Cyrillic_hardsign,minus, underscore ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + + // lower row, left side + key { [ apostrophe, quotedbl, acircumflex, Acircumflex] }; + key { [ Cyrillic_ya, Cyrillic_YA, q, Q ] }; + key { [ Cyrillic_zhe, Cyrillic_ZHE, j, J ] }; + key { [ Cyrillic_ka, Cyrillic_KA, k, K ] }; + key { [ Cyrillic_yu, Cyrillic_YU, x, X ] }; + + // lower row, right side + key { [ Cyrillic_be, Cyrillic_BE, b, B ] }; + key { [ Cyrillic_em, Cyrillic_EM, m, M ] }; + key { [ Cyrillic_sha, Cyrillic_SHA, w, W ] }; + key { [ Cyrillic_ve, Cyrillic_VE, v, V ] }; + key { [ Cyrillic_ze, Cyrillic_ZE, z, Z ] }; + key { [ Shift_R, Shift_R, Shift_R, Shift_R ] }; + +}; diff --git a/dot_config/xkb/symbols/icd b/dot_config/xkb/symbols/icd new file mode 100644 index 0000000..2c733a2 --- /dev/null +++ b/dot_config/xkb/symbols/icd @@ -0,0 +1,111 @@ +// International Coder Dvorak +// By: Ryan Kavanagh , http://ryanak.ca/ +// +// Optimised for typing in English, French and Spanish. +// +// Based on the Dvorak International (dvorak-intl) layout: +// Stephane Magnenat (stephane at magnenat dot net, http://stephane.magnenat.net) +// Based on information from http://www.poupinou.org/dvorak/index.html +// Based on the Programmer Dvorak (dvp) layout: +// Programmer Dvorak, by Roland Kaufmann +// License: BSD, available at +// +// SHIFT: ~ % 7 5 3 1 9 0 2 4 6 8 ` BCKSP +// NORMAL: $ & [ { } ( = * ) + ] ! # BCKSP +// AltGr: ¢ ¤ € £ d˘ d¨ d¸ d`` d` d´ d˝ ¡ d˚ BCKSP +// SFT-AG: d~ ₽ ¥ d˳ BCKSP +// +// TAB : < > P Y F G C R L ? ^ | +// TAB ; , . p y f g c r l / @ \ +// TAB ë « » ü í ç þ ¿ dˆ d' +// TAB Ë ° · Ü Í Ç Þ dˇ d. +// +// CAPL A O E U I D H T N S _ ENTER +// CAPL a o e u i d h t n s - ENTER +// CAPL à ó é û î ð œ æ ñ ß – ENTER +// CAPL À Ó É Û Î Ð Œ Æ Ñ ‾ — ENTER +// +// SHIFT " Q J K X B M W V Z SHIFT +// SHIFT ' q j k x b m w v z SHIFT +// SHIFT â ô è ù ï ê ¶ SHIFT +// SHIFT Â Ô È Ù Ï Ê § +// +// Legend: dX -> dead_X +// +// en dash: AltGr-hyphen_minus +// em dash: Shift-AltGr-hyphen_minus +// dead_doublegrave: AltGr-asterisk +// dead_abovedot: on AltGr-backslash +// dead_belowdot: on Shift-AltGr-backslash + +partial alphanumeric_keys +xkb_symbols "icd" { + include "us(dvp)" + + name[Group1] = "USA - International Coder Dvorak"; + + // Unmodified Shift AltGr Shift+AltGr + // symbols row, left side + key { [ dollar, asciitilde, cent, dead_tilde ] }; + key { [ ampersand, percent, currency, U20BD ] }; + key { [ bracketleft, 7, EuroSign, yen ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ braceleft, 5, sterling ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ braceright, 3, dead_hook ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ parenleft, 1, dead_diaeresis ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ equal, 9, dead_cedilla ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + + // symbols row, right side + key { [ asterisk, 0, dead_doublegrave ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ parenright, 2, dead_grave ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ plus, 4, dead_acute ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ bracketright, 6, dead_doubleacute ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ exclam, 8, exclamdown ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + key { [ numbersign, grave, dead_abovering, dead_belowring ] }; + key { [ BackSpace ] }; + + // upper row, left side + key { [ semicolon, colon, ediaeresis, Ediaeresis ] }; + key { [ comma, less, guillemotleft, degree ] }; + key { [ period, greater, guillemotright, periodcentered ] }; + key { [ p, P, udiaeresis, Udiaeresis ] }; + key { [ y, Y, iacute, Iacute ] }; + + // upper row, right side + key { [ f, F, udiaeresis, Udiaeresis ] }; + key { [ g, G ] }; + key { [ c, C, ccedilla, Ccedilla ] }; + key { [ r, R ] }; + key { [ l, L, thorn, THORN ] }; + key { [ slash, question, questiondown ] }; + key { [ at, asciicircum, dead_circumflex, dead_caron ] }; + key { [ backslash, bar, dead_abovedot, dead_belowdot ] }; + + // home row, left side + key { [ a, A, agrave, Agrave ] }; + key { [ o, O, oacute, Oacute ] }; + key { [ e, E, eacute, Eacute ] }; + key { [ u, U, ucircumflex, Ucircumflex] }; + key { [ i, I, icircumflex, Icircumflex] }; + + // home row, right side + key { [ d, D, eth, ETH ] }; + key { [ h, H, oe, OE ] }; + key { [ t, T, ae, AE ] }; + key { [ n, N, ntilde, Ntilde ] }; + key { [ s, S, ssharp, overline ] }; + key { [ minus, underscore, endash, emdash ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; + + // lower row, left side + key { [ apostrophe, quotedbl, acircumflex, Acircumflex] }; + key { [ q, Q, ocircumflex, Ocircumflex] }; + key { [ j, J, egrave, Egrave ] }; + key { [ k, K, ugrave, Ugrave ] }; + key { [ x, X, idiaeresis, Idiaeresis ] }; + + // lower row, right side + key { [ b, B ] }; + key { [ m, M, ecircumflex, Ecircumflex] }; + key { [ w, W, paragraph, section ] }; + key { [ Shift_R, Shift_R, Shift_R, Shift_R ] }; + +}; diff --git a/dot_config/xkb/symbols/lalt_meta b/dot_config/xkb/symbols/lalt_meta new file mode 100644 index 0000000..9e27570 --- /dev/null +++ b/dot_config/xkb/symbols/lalt_meta @@ -0,0 +1,4 @@ +partial modifier_keys +xkb_symbols "lalt_meta" { + key { [ Meta_L ] } ; +}; diff --git a/dot_config/xkb/symbols/myswap b/dot_config/xkb/symbols/myswap new file mode 100644 index 0000000..474d7d7 --- /dev/null +++ b/dot_config/xkb/symbols/myswap @@ -0,0 +1,5 @@ +partial modifier_keys +xkb_symbols "switch_lalt_lsuper" { + key { [ Super_L ] } ; + key { [ Alt_L ] }; +}; -- cgit v1.2.3