summaryrefslogtreecommitdiff
path: root/symbols
diff options
context:
space:
mode:
authorBenno Schulenberg <bensberg@telfort.nl>2023-03-28 17:40:17 +0200
committerBenno Schulenberg <bensberg@telfort.nl>2023-03-28 17:42:25 +0200
commitf54b32790ae646f92cfaccf872a37098ed64021b (patch)
treeddba7b3cf1497e7022a0637fe8ecb62446386abd /symbols
parent54a5aeb0efd09c053715bfd81b3fa2d8162b54ca (diff)
downloadxkeyboard-config-f54b32790ae646f92cfaccf872a37098ed64021b.tar.gz
symbols/lk: improve some comments, and reshuffle keys into normal order
Diffstat (limited to 'symbols')
-rw-r--r--symbols/lk138
1 files changed, 67 insertions, 71 deletions
diff --git a/symbols/lk b/symbols/lk
index 50351a8..031cb0c 100644
--- a/symbols/lk
+++ b/symbols/lk
@@ -1,20 +1,18 @@
// Keyboard layouts for Sri Lanka.
-// Maintainer : Harshula Jayasuriya <harshula@gmail.com>
-// Last Updated: 2011-05-25
-// This is a phonetic static mapping for a standard US-English keyboard
-// (QWERTY)
-// http://www.nongnu.org/sinhala/doc/keymaps/sinhala-keyboard_3.html
+// Phonetic mapping of Sinhala for a standard US Qwerty keyboard.
+// Maintainer: Harshula Jayasuriya <harshula@gmail.com>
+// https://www.nongnu.org/sinhala/doc/keymaps/sinhala-keyboard_3.html
-// Repaya, Rakaransaya and Yansaya aren't inserted with A-r, R and Y,
+// Repaya, Rakaransaya and Yansaya aren't inserted with AltGr+r, R and Y,
// respectively. The problem lies with the XKB infrastructure which
// only allows a one-to-one mapping of keycodes to Unicode codepoints.
// Unfortunately, the 3 mentioned glyphs actually consists of 3
// Unicode codepoints each. The result is that the user must
// manually construct the glyph by typing each of the 3 codepoints.
-// ALT-, represents the 'JOIN' key, it requires
+// AltGr+, represents the 'JOIN' key, it requires
// two codepoints, hence it also has to be manually constructed.
-// Similarly, ALT-/ representing the 'TOUCH' key requires
+// Similarly, AltGr+/ representing the 'TOUCH' key requires
// two codepoints.
// Repaya = rayanna,AL,ZWJ
@@ -24,10 +22,8 @@
// TOUCH = ZWJ,AL
// Where,
-// AL = Al Lakuna = ALT-a
-// ZWJ = Zero Width Joiner = ALT-/
-// rayanna = r
-// yayanna = y
+// AL = Al Lakuna = AltGr+a
+// ZWJ = Zero Width Joiner = AltGr+/
default partial alphanumeric_keys
xkb_symbols "sin_phonetic" {
@@ -69,7 +65,7 @@ xkb_symbols "sin_phonetic" {
key <AB07> { [ Sinh_ma, Sinh_mba, NoSymbol, NoSymbol ] };
key <AB08> { [ any, any, Sinh_al, NoSymbol ] };
key <AB09> { [ any, any, Sinh_kunddaliya, NoSymbol ] };
- key <AB10> { [ any, any, 0x100200d, NoSymbol ] };
+ key <AB10> { [ any, any, U200d, NoSymbol ] }; // ZWJ
key <SPCE> { [ space, nobreakspace, U200c, any ] }; // ZWNJ
@@ -109,8 +105,8 @@ xkb_symbols "tam_TAB" {
// Most importantly, this romanized version of Sinhala has a
// companion orthographic font that displays the text in the
// native script and a JavaScript converts it to Unicode Sinhala
-// and back dramatically increasing Sinhala seen on the web due
-// to its ease of use
+// and back, dramatically increasing Sinhala seen on the web due
+// to its ease of use.
//
// Dedication:
// Thomas William Rhys Davids, Ven. Udagama Sumangala
@@ -124,61 +120,61 @@ partial alphanumeric_keys modifier_keys
xkb_symbols "us" {
include "us(basic)"
name[Group1]= "Sinhala (US)";
-//
-// UNSHIFTED, SHIFT, ALT
-// --------------------------------------------
-//
- key <AB01> { [ z, VoidSymbol, VoidSymbol ] };
- key <AB02> { [ x, VoidSymbol, VoidSymbol ] };
- key <AB03> { [ c, ccedilla, VoidSymbol ] };
- key <AB04> { [ v, VoidSymbol, VoidSymbol ] };
- key <AB05> { [ b, B, VoidSymbol ] };
- key <AB06> { [ n, N, ntilde ] };
- key <AB07> { [ m, VoidSymbol, VoidSymbol ] };
- key <AB08> { [ comma, less, guillemotleft ] };
- key <AB09> { [ period, greater,guillemotright ] };
- key <AB10> { [ slash, question, U200C ] };
-
- key <AC01> { [ a, aacute, adiaeresis ] };
- key <AC02> { [ s, VoidSymbol, VoidSymbol ] };
- key <AC03> { [ eth, ETH, VoidSymbol ] };
- key <AC04> { [ thorn, f, VoidSymbol ] };
- key <AC05> { [ g, G, VoidSymbol ] };
- key <AC06> { [ h, VoidSymbol, VoidSymbol ] };
- key <AC07> { [ j, ccedilla, VoidSymbol ] };
- key <AC08> { [ k, VoidSymbol, VoidSymbol ] };
- key <AC09> { [ l, L, ocircumflex ] };
- key <AC10> { [ semicolon, colon, VoidSymbol ] };
- key <AC11> { [ apostrophe, quotedbl, VoidSymbol ] };
-
- key <AD01> { [ d, D, q ] };
- key <AD02> { [ ae, acute, VoidSymbol ] };
- key <AD03> { [ e, eacute, ediaeresis ] };
- key <AD04> { [ r, ucircumflex, VoidSymbol ] };
- key <AD05> { [ t, VoidSymbol, VoidSymbol ] };
- key <AD06> { [ y, VoidSymbol, VoidSymbol ] };
- key <AD07> { [ u, uacute, udiaeresis ] };
- key <AD08> { [ i, iacute, idiaeresis ] };
- key <AD09> { [ o, oacute, odiaeresis ] };
- key <AD10> { [ p, VoidSymbol, VoidSymbol ] };
- key <AD11> { [ bracketleft, braceleft, VoidSymbol ] };
- key <AD12> { [ bracketright, braceright, VoidSymbol ] };
-
- key <AE01> { [ 1, exclam, dead_macron ] };
- key <AE02> { [ 2, at, dead_belowdot ] };
- key <AE03> { [ 3, numbersign, dead_abovedot ] };
- key <AE04> { [ 4, dollar, currency ] };
- key <AE05> { [ 5, percent, degree ] };
- key <AE06> { [ 6, asciicircum, onequarter ] };
- key <AE07> { [ 7, ampersand, onehalf ] };
- key <AE08> { [ 8, asterisk, threequarters ] };
- key <AE09> { [ 9, parenleft, VoidSymbol ] };
- key <AE10> { [ 0, parenright, VoidSymbol ] };
- key <AE11> { [ minus, underscore, emdash ] };
- key <AE12> { [ equal, plus, VoidSymbol ] };
-
- key <BKSL> { [ backslash, bar, VoidSymbol ] };
- key <SPCE> { [ space, nobreakspace, VoidSymbol ] };
- key <TLDE> { [ grave, asciitilde, VoidSymbol ] };
+
+// plain, Shift, AltGr
+// -----------------------------------------
+ key <TLDE> {[ grave, asciitilde, none ]};
+ key <AE01> {[ 1, exclam, dead_macron ]};
+ key <AE02> {[ 2, at, dead_belowdot ]};
+ key <AE03> {[ 3, numbersign, dead_abovedot ]};
+ key <AE04> {[ 4, dollar, currency ]};
+ key <AE05> {[ 5, percent, degree ]};
+ key <AE06> {[ 6, asciicircum, onequarter ]};
+ key <AE07> {[ 7, ampersand, onehalf ]};
+ key <AE08> {[ 8, asterisk, threequarters ]};
+ key <AE09> {[ 9, parenleft, none ]};
+ key <AE10> {[ 0, parenright, none ]};
+ key <AE11> {[ minus, underscore, emdash ]};
+ key <AE12> {[ equal, plus, none ]};
+
+ key <AD01> {[ d, D, q ]};
+ key <AD02> {[ ae, acute, none ]};
+ key <AD03> {[ e, eacute, ediaeresis ]};
+ key <AD04> {[ r, ucircumflex, none ]};
+ key <AD05> {[ t, none, none ]};
+ key <AD06> {[ y, none, none ]};
+ key <AD07> {[ u, uacute, udiaeresis ]};
+ key <AD08> {[ i, iacute, idiaeresis ]};
+ key <AD09> {[ o, oacute, odiaeresis ]};
+ key <AD10> {[ p, none, none ]};
+ key <AD11> {[ bracketleft, braceleft, none ]};
+ key <AD12> {[ bracketright, braceright, none ]};
+ key <BKSL> {[ backslash, bar, none ]};
+
+ key <AC01> {[ a, aacute, adiaeresis ]};
+ key <AC02> {[ s, none, none ]};
+ key <AC03> {[ eth, ETH, none ]};
+ key <AC04> {[ thorn, f, none ]};
+ key <AC05> {[ g, G, none ]};
+ key <AC06> {[ h, none, none ]};
+ key <AC07> {[ j, ccedilla, none ]};
+ key <AC08> {[ k, none, none ]};
+ key <AC09> {[ l, L, ocircumflex ]};
+ key <AC10> {[ semicolon, colon, none ]};
+ key <AC11> {[ apostrophe, quotedbl, none ]};
+
+ key <AB01> {[ z, none, none ]};
+ key <AB02> {[ x, none, none ]};
+ key <AB03> {[ c, ccedilla, none ]};
+ key <AB04> {[ v, none, none ]};
+ key <AB05> {[ b, B, none ]};
+ key <AB06> {[ n, N, ntilde ]};
+ key <AB07> {[ m, none, none ]};
+ key <AB08> {[ comma, less, guillemotleft ]};
+ key <AB09> {[ period, greater,guillemotright ]};
+ key <AB10> {[ slash, question, U200C ]}; // ZWJ
+
+ key <SPCE> {[ space, nobreakspace, none ]};
+
include "level3(alt_switch)"
};