aboutsummaryrefslogtreecommitdiff
path: root/dot_config/xkb/symbols/icd
diff options
context:
space:
mode:
Diffstat (limited to 'dot_config/xkb/symbols/icd')
-rw-r--r--dot_config/xkb/symbols/icd111
1 files changed, 111 insertions, 0 deletions
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 ] };
+
+};