aboutsummaryrefslogtreecommitdiff
path: root/dot_config/xkb
diff options
context:
space:
mode:
Diffstat (limited to 'dot_config/xkb')
-rw-r--r--dot_config/xkb/keycodes/sunt6fix4
-rw-r--r--dot_config/xkb/rules/evdev.xml16
-rw-r--r--dot_config/xkb/symbols/dpr106
-rw-r--r--dot_config/xkb/symbols/icd111
-rw-r--r--dot_config/xkb/symbols/lalt_meta4
-rw-r--r--dot_config/xkb/symbols/myswap5
6 files changed, 246 insertions, 0 deletions
diff --git a/dot_config/xkb/keycodes/sunt6fix b/dot_config/xkb/keycodes/sunt6fix
new file mode 100644
index 0000000..e599b3c
--- /dev/null
+++ b/dot_config/xkb/keycodes/sunt6fix
@@ -0,0 +1,4 @@
+xkb_keycodes {
+ <PGUP> = 86;
+ <PGDN> = 104;
+};
diff --git a/dot_config/xkb/rules/evdev.xml b/dot_config/xkb/rules/evdev.xml
new file mode 100644
index 0000000..71fd3c1
--- /dev/null
+++ b/dot_config/xkb/rules/evdev.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE xkbConfigRegistry SYSTEM "xkb.dtd">
+<xkbConfigRegistry version="1.1">
+ <layoutList>
+ <layout>
+ <configItem>
+ <name>icd</name>
+ <shortDescription>International Coder Dvorak</shortDescription>
+ <description>
+ International Coder Dvorak: based on us(dvp), but optimized for
+ French, English, and Spanish with deadkeys
+ </description>
+ </configItem>
+ </layout>
+ </layoutList>
+</xkbConfigRegistry>
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 <ryanakca@kubuntu.org> , 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 <TLDE> { [ dollar, asciitilde, dead_tilde, cent ] };
+ key <AE01> { [ ampersand, percent, oslash, Ooblique ] };
+ key <AE02> { [ bracketleft, 7, EuroSign, sterling ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE03> { [ braceleft, 5, yen, currency ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE04> { [ braceright, 3, dead_hook ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE05> { [ parenleft, 1, dead_diaeresis ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE06> { [ equal, 9, dead_cedilla ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+
+ // symbols row, right side
+ key <AE07> { [ asterisk, 0, dead_doublegrave ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE08> { [ parenright, 2, dead_grave ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE09> { [ plus, 4, dead_acute ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE10> { [ bracketright, 6, dead_doubleacute ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE11> { [ exclam, 8, exclamdown ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE12> { [ Cyrillic_tse, Cyrillic_TSE, numbersign, grave ] };
+ key <BKSP> { [ BackSpace ] };
+
+ // upper row, left side
+ key <AD01> { [ semicolon, colon, adiaeresis, Adiaeresis ] };
+ key <AD02> { [ comma, less, guillemotleft, degree ] };
+ key <AD03> { [ period, greater, guillemotright, periodcentered ] };
+ key <AD04> { [ Cyrillic_pe, Cyrillic_PE, p, P ] };
+ key <AD05> { [ Cyrillic_yeru, Cyrillic_YERU, y, Y ] };
+
+ // upper row, right side
+ key <AD06> { [ Cyrillic_ef, Cyrillic_EF, f, F ] };
+ key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, g, G ] };
+ key <AD08> { [ Cyrillic_che, Cyrillic_CHE, c, C ] };
+ key <AD09> { [ Cyrillic_er, Cyrillic_ER, r, R ] };
+ key <AD10> { [ Cyrillic_el, Cyrillic_EL, l, L ] };
+ key <AD11> { [ Cyrillic_shcha, Cyrillic_SHCHA, question, slash ] };
+ key <AD12> { [ Cyrillic_shorti, Cyrillic_SHORTI,at, asciicircum] };
+ key <BKSL> { [ question, slash, bar, backslash ] };
+
+ // home row, left side
+ key <AC01> { [ Cyrillic_a, Cyrillic_A, a, A ] };
+ key <AC02> { [ Cyrillic_o, Cyrillic_O, o, O ] };
+ key <AC03> { [ Cyrillic_ie, Cyrillic_IE, e, E ] };
+ key <AC04> { [ Cyrillic_u, Cyrillic_U, u, U ] };
+ key <AC05> { [ Cyrillic_i, Cyrillic_I, i, I ] };
+
+ // home row, right side
+ key <AC06> { [ Cyrillic_de, Cyrillic_DE, d, D ] };
+ key <AC07> { [ Cyrillic_ha, Cyrillic_HA, h, H ] };
+ key <AC08> { [ Cyrillic_te, Cyrillic_TE, t, T ] };
+ key <AC09> { [ Cyrillic_en, Cyrillic_EN, n, N ] };
+ key <AC10> { [ Cyrillic_es, Cyrillic_ES, s, S ] };
+ key <AC11> { [ Cyrillic_softsign,Cyrillic_hardsign,minus, underscore ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+
+ // lower row, left side
+ key <AB01> { [ apostrophe, quotedbl, acircumflex, Acircumflex] };
+ key <AB02> { [ Cyrillic_ya, Cyrillic_YA, q, Q ] };
+ key <AB03> { [ Cyrillic_zhe, Cyrillic_ZHE, j, J ] };
+ key <AB04> { [ Cyrillic_ka, Cyrillic_KA, k, K ] };
+ key <AB05> { [ Cyrillic_yu, Cyrillic_YU, x, X ] };
+
+ // lower row, right side
+ key <AB06> { [ Cyrillic_be, Cyrillic_BE, b, B ] };
+ key <AB07> { [ Cyrillic_em, Cyrillic_EM, m, M ] };
+ key <AB08> { [ Cyrillic_sha, Cyrillic_SHA, w, W ] };
+ key <AB09> { [ Cyrillic_ve, Cyrillic_VE, v, V ] };
+ key <AB10> { [ Cyrillic_ze, Cyrillic_ZE, z, Z ] };
+ key <AB11> { [ 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 <rak@ryanak.ca> , 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 <rlndkfmn at gmail dot com>
+// License: BSD, available at <http://www.kaufmann.no/roland/dvorak/license.html>
+//
+// 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 <TLDE> { [ dollar, asciitilde, cent, dead_tilde ] };
+ key <AE01> { [ ampersand, percent, currency, U20BD ] };
+ key <AE02> { [ bracketleft, 7, EuroSign, yen ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE03> { [ braceleft, 5, sterling ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE04> { [ braceright, 3, dead_hook ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE05> { [ parenleft, 1, dead_diaeresis ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE06> { [ equal, 9, dead_cedilla ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+
+ // symbols row, right side
+ key <AE07> { [ asterisk, 0, dead_doublegrave ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE08> { [ parenright, 2, dead_grave ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE09> { [ plus, 4, dead_acute ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE10> { [ bracketright, 6, dead_doubleacute ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE11> { [ exclam, 8, exclamdown ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE12> { [ numbersign, grave, dead_abovering, dead_belowring ] };
+ key <BKSP> { [ BackSpace ] };
+
+ // upper row, left side
+ key <AD01> { [ semicolon, colon, ediaeresis, Ediaeresis ] };
+ key <AD02> { [ comma, less, guillemotleft, degree ] };
+ key <AD03> { [ period, greater, guillemotright, periodcentered ] };
+ key <AD04> { [ p, P, udiaeresis, Udiaeresis ] };
+ key <AD05> { [ y, Y, iacute, Iacute ] };
+
+ // upper row, right side
+ key <AD06> { [ f, F, udiaeresis, Udiaeresis ] };
+ key <AD07> { [ g, G ] };
+ key <AD08> { [ c, C, ccedilla, Ccedilla ] };
+ key <AD09> { [ r, R ] };
+ key <AD10> { [ l, L, thorn, THORN ] };
+ key <AD11> { [ slash, question, questiondown ] };
+ key <AD12> { [ at, asciicircum, dead_circumflex, dead_caron ] };
+ key <BKSL> { [ backslash, bar, dead_abovedot, dead_belowdot ] };
+
+ // home row, left side
+ key <AC01> { [ a, A, agrave, Agrave ] };
+ key <AC02> { [ o, O, oacute, Oacute ] };
+ key <AC03> { [ e, E, eacute, Eacute ] };
+ key <AC04> { [ u, U, ucircumflex, Ucircumflex] };
+ key <AC05> { [ i, I, icircumflex, Icircumflex] };
+
+ // home row, right side
+ key <AC06> { [ d, D, eth, ETH ] };
+ key <AC07> { [ h, H, oe, OE ] };
+ key <AC08> { [ t, T, ae, AE ] };
+ key <AC09> { [ n, N, ntilde, Ntilde ] };
+ key <AC10> { [ s, S, ssharp, overline ] };
+ key <AC11> { [ minus, underscore, endash, emdash ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+
+ // lower row, left side
+ key <AB01> { [ apostrophe, quotedbl, acircumflex, Acircumflex] };
+ key <AB02> { [ q, Q, ocircumflex, Ocircumflex] };
+ key <AB03> { [ j, J, egrave, Egrave ] };
+ key <AB04> { [ k, K, ugrave, Ugrave ] };
+ key <AB05> { [ x, X, idiaeresis, Idiaeresis ] };
+
+ // lower row, right side
+ key <AB06> { [ b, B ] };
+ key <AB07> { [ m, M, ecircumflex, Ecircumflex] };
+ key <AB08> { [ w, W, paragraph, section ] };
+ key <AB11> { [ 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 <LALT> { [ 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 <LALT> { [ Super_L ] } ;
+ key <LMTA> { [ Alt_L ] };
+};