Hello.
Yesterday I added Dvorak, Dvorak programmers and Colemak US compatible
layouts to Latvian keyboard mapping.
I was wondering if you'd like to import it in Xorg?
I reformatted layout file since it had spaces and tabs all mixed, also
I improved readability, and added few variants to layouts (like y-key
variant for Dvorak)
Since file is almost completely reformatted I attached entire file
instead of diff.
Layout names might be improved
--
Aldis Berjoza
// $XKeyboardConfig$
// Latvian keymap version 1.1
// Copyright (C) Dmitry Golubev <lastg...@mail.ru>, 2003-2004
//
// Reworked to get rid of dead_keys (use of which in this case
// is a dirty hack). It is now not dependent on locale settings
// and GTK_IM_MODULES in Gnome. The map is also providing some of
// ISO9995-3 alternate characters. Note that this version works
// correctly under Gnome 2.6. This is to be put into symbols/
// directory, or somewhere else.
//
// Permission to use, copy, modify, distribute, and sell this software and its
// documentation for any purpose is hereby granted without fee, provided that
// the above copyright notice appear in all copies and that both that
// copyright notice and this permission notice appear in supporting
// documentation, and that the name of the copyright holder(s) not be used in
// advertising or publicity pertaining to distribution of the software without
// specific, written prior permission. The copyright holder(s) makes no
// representations about the suitability of this software for any purpose. It
// is provided "as is" without express or implied warranty.
//
// THE COPYRIGHT HOLDER(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
// INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
// EVENT SHALL THE COPYRIGHT HOLDER(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
// CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
// DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
// TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
// PERFORMANCE OF THIS SOFTWARE.
// Modified by Aldis Berjoza <al...@bsdroot.lv>, 2011
// Changes:
// Added US-Dvorac compatible LV layouts
//============================================================================
// QWERTY Latvian layout
// http://en.wikipedia.org/wiki/QWERTY
//
partial default alphanumeric_keys modifier_keys
xkb_symbols "basic" {
name[Group1]= "Latvia";
key <TLDE> {[ grave, asciitilde, acute, asciitilde ]};
key <AE01> {[ 1, exclam, onesuperior, exclamdown ]};
key <AE02> {[ 2, at, twosuperior, oneeighth ]};
key <AE03> {[ 3, numbersign, threesuperior, sterling ]};
key <AE04> {[ 4, dollar, EuroSign, cent ]};
key <AE05> {[ 5, percent, onehalf, threeeighths ]};
key <AE06> {[ 6, asciicircum, threequarters, fiveeighths ]};
key <AE07> {[ 7, ampersand, braceleft, seveneighths ]};
key <AE08> {[ 8, asterisk, bracketleft, trademark ]};
key <AE09> {[ 9, parenleft, bracketright, plusminus ]};
key <AE10> {[ 0, parenright, braceright, degree ]};
key <AE11> {[ minus, underscore, backslash, questiondown ]};
key <AE12> {[ equal, plus, endash, emdash ]};
key <AD01> {[ q, Q, q, Q ]};
key <AD02> {[ w, W, w, W ]};
key <AD03> {[ e, E, emacron, Emacron ]};
key <AD04> {[ r, R, rcedilla, Rcedilla ]};
key <AD05> {[ t, T, t, T ]};
key <AD06> {[ y, Y, y, Y ]};
key <AD07> {[ u, U, umacron, Umacron ]};
key <AD08> {[ i, I, imacron, Imacron ]};
key <AD09> {[ o, O, omacron, Omacron ]};
key <AD10> {[ p, P, p, P ]};
key <AD11> {[ bracketleft, braceleft, guillemotleft, leftdoublequotemark ]};
key <AD12> {[ bracketright, braceright, guillemotright, rightdoublequotemark ]};
key <AC01> {[ a, A, amacron, Amacron ]};
key <AC02> {[ s, S, scaron, Scaron ]};
key <AC03> {[ d, D, d, D ]};
key <AC04> {[ f, F, f, F ]};
key <AC05> {[ g, G, gcedilla, Gcedilla ]};
key <AC06> {[ h, H, h, H ]};
key <AC07> {[ j, J, j, J ]};
key <AC08> {[ k, K, kcedilla, Kcedilla ]};
key <AC09> {[ l, L, lcedilla, Lcedilla ]};
key <AC10> {[ semicolon, colon, semicolon, colon ]};
key <AC11> {[ apostrophe, quotedbl, leftdoublequotemark, doublelowquotemark ]};
key <AB01> {[ z, Z, zcaron, Zcaron ]};
key <AB02> {[ x, X, x, X ]};
key <AB03> {[ c, C, ccaron, Ccaron ]};
key <AB04> {[ v, V, v, V ]};
key <AB05> {[ b, B, b, B ]};
key <AB06> {[ n, N, ncedilla, Ncedilla ]};
key <AB07> {[ m, M, m, M ]};
key <AB08> {[ comma, less, horizconnector, multiply ]};
key <AB09> {[ period, greater, periodcentered, division ]};
key <AB10> {[ slash, question, slash, abovedot ]};
key <BKSL> {[ backslash, bar, grave, breve ]};
key <SPCE> {[ space, space, space, space ]};
include "level3(ralt_switch)"
};
partial alphanumeric_keys modifier_keys
xkb_symbols "apostrophe" {
include "lv(basic)"
name[Group1]= "Latvia - Apostrophe (') variant";
key <AC11> {[ISO_Level3_Latch, quotedbl, apostrophe, quotedbl]};
key <SPCE> {[space, space, apostrophe]};
modifier_map Mod5 { <AC11> };
};
partial alphanumeric_keys modifier_keys
xkb_symbols "tilde" {
include "lv(basic)"
name[Group1]= "Latvia - Tilde (~) variant";
key <TLDE> {[ISO_Level3_Latch, asciitilde, grave, acute]};
key <SPCE> {[space, space, asciitilde]};
modifier_map Mod5 { <TLDE> };
};
partial alphanumeric_keys modifier_keys
xkb_symbols "fkey" {
include "lv(basic)"
name[Group1]= "Latvia - F-letter (F) variant";
key <AC04> {[ISO_Level3_Latch, ISO_Level3_Latch, f, F]};
key <SPCE> {[space, space, f, F]};
modifier_map Mod5 { <AC04> };
};
//============================================================================
// US Dvorak compatible Latvian layout
// http://en.wikipedia.org/wiki/Dvorak_Simplified_Keyboard
//
partial alphanumeric_keys modifier_keys
xkb_symbols "usdvorak" {
name[Group1]= "Latvia (US-Dvorak compatible)";
key <TLDE> {[ asciitilde, grave, acute, asciitilde ]};
key <AE01> {[ 1, exclam, onesuperior, exclamdown ]};
key <AE02> {[ 2, at, twosuperior, oneeighth ]};
key <AE03> {[ 3, numbersign, threesuperior, sterling ]};
key <AE04> {[ 4, dollar, EuroSign, cent ]};
key <AE05> {[ 5, percent, onehalf, threeeighths ]};
key <AE06> {[ 6, asciicircum, threequarters, fiveeighths ]};
key <AE07> {[ 7, ampersand, braceleft, seveneighths ]};
key <AE08> {[ 8, asterisk, bracketleft, trademark ]};
key <AE09> {[ 9, parenleft, bracketright, plusminus ]};
key <AE10> {[ 0, parenright, braceright, degree ]};
key <AE11> {[ bracketleft, braceleft, guillemotleft, leftdoublequotemark ]};
key <AE12> {[ bracketright, braceright, guillemotright, rightdoublequotemark ]};
key <AD01> {[ apostrophe, quotedbl, leftdoublequotemark, doublelowquotemark ]};
key <AD02> {[ comma, less, horizconnector, multiply ]};
key <AD03> {[ period, greater, periodcentered, division ]};
key <AD04> {[ p, P, p, P ]};
key <AD05> {[ y, Y, y, Y ]};
key <AD06> {[ f, F, f, F ]};
key <AD07> {[ g, G, gcedilla, Gcedilla ]};
key <AD08> {[ c, C, ccaron, Ccaron ]};
key <AD09> {[ r, R, rcedilla, Rcedilla ]};
key <AD10> {[ l, L, lcedilla, Lcedilla ]};
key <AD11> {[ slash, question, slash, abovedot ]};
key <AD12> {[ equal, plus, endash, emdash ]};
key <AC01> {[ a, A, amacron, Amacron ]};
key <AC02> {[ o, O, omacron, Omacron ]};
key <AC03> {[ e, E, emacron, Emacron ]};
key <AC04> {[ u, U, umacron, Umacron ]};
key <AC05> {[ i, I, imacron, Imacron ]};
key <AC06> {[ d, D, d, D ]};
key <AC07> {[ h, H, h, H ]};
key <AC08> {[ t, T, t, T ]};
key <AC09> {[ n, N, ncedilla, Ncedilla ]};
key <AC10> {[ s, S, scaron, Scaron ]};
key <AC11> {[ minus, underscore, backslash, questiondown ]};
key <AB01> {[ semicolon, colon, semicolon, colon ]};
key <AB02> {[ q, Q, q, Q ]};
key <AB03> {[ j, J, j, J ]};
key <AB04> {[ k, K, kcedilla, Kcedilla ]};
key <AB05> {[ x, X, x, X ]};
key <AB06> {[ b, B, b, B ]};
key <AB07> {[ m, M, m, M ]};
key <AB08> {[ w, W, w, W ]};
key <AB09> {[ v, V, v, V ]};
key <AB10> {[ z, Z, zcaron, Zcaron ]};
key <BKSL> {[ backslash, bar, grave, breve ]};
key <SPCE> {[ space, space, space, space ]};
include "level3(ralt_switch)"
};
partial alphanumeric_keys modifier_keys
xkb_symbols "ykeyusdvorak" {
include "lv(usdvorak)"
name[Group1]= "Latvia (US-Dvorak) - Y-letter (Y) variant";
key <AD05> {[ISO_Level3_Latch, ISO_Level3_Latch, y, Y]};
key <SPCE> {[space, space, y, Y]};
modifier_map Mod5 { <AD05> };
};
partial alphanumeric_keys modifier_keys
xkb_symbols "tildeusdvorak" {
include "lv(usdvorak)"
name[Group1]= "Latvia (US-Dvorak compatible) - Tilde (~) variant";
key <TLDE> {[ISO_Level3_Latch, asciitilde, grave, acute]};
key <SPCE> {[space, space, asciitilde]};
modifier_map Mod5 { <TLDE> };
};
partial alphanumeric_keys modifier_keys
xkb_symbols "minuskeyusdvorak" {
include "lv(usdvorak)"
name[Group1]= "Latvia (US-Dvorak compatible) - minus-letter (-) variant";
key <AC11> {[ISO_Level3_Latch, ISO_Level3_Latch, mimus, underscore]};
key <SPCE> {[space, space, minus, underscore]};
modifier_map Mod5 { <AR11> };
};
//============================================================================
// US Dvorak programmers layput compatible Latvian layout
// http://www.kaufmann.no/roland/dvorak/
//
partial alphanumeric_keys modifier_keys
xkb_symbols "usdvorakprogr" {
name[Group1]= "Latvia (US-Dvorak programmers compatible)";
key <TLDE> {[ dollar, asciitilde, EuroSign, cent ]};
key <AE01> {[ ampersand, percent, acute, asciitilde ]};
key <AE02> {[ bracketleft, 7, onesuperior, twosuperior ]};
key <AE03> {[ braceleft, 5, guillemotleft, leftdoublequotemark ]};
key <AE04> {[ braceright, 3, guillemotright, rightdoublequotemark ]};
key <AE05> {[ parenleft, 1, onehalf, threeeighths ]};
key <AE06> {[ equal, 9, threequarters, fiveeighths ]};
key <AE07> {[ asterisk, 0, degree, copyright ]};
key <AE08> {[ parenright, 2, endash, emdash ]};
key <AE09> {[ plus, 4, plusminus, section ]};
key <AE10> {[ bracketright, 6, registered, trademark ]};
key <AE11> {[ exclam, 8, exclam, exclamdown ]};
key <AE12> {[ numbersign, grave, Greek_alpha, Greek_beta ]};
key <AD01> {[ semicolon, colon, semicolon, colon ]};
key <AD02> {[ comma, less, horizconnector, multiply ]};
key <AD03> {[ period, greater, periodcentered, division ]};
key <AD04> {[ p, P, p, P ]};
key <AD05> {[ y, Y, y, Y ]};
key <AD06> {[ f, F, f, F ]};
key <AD07> {[ g, G, gcedilla, Gcedilla ]};
key <AD08> {[ c, C, ccaron, Ccaron ]};
key <AD09> {[ r, R, rcedilla, Rcedilla ]};
key <AD10> {[ l, L, lcedilla, Lcedilla ]};
key <AD11> {[ slash, question, slash, abovedot ]};
key <AD12> {[ at, asciicircum, at, asciicircum ]};
key <AC01> {[ a, A, amacron, Amacron ]};
key <AC02> {[ o, O, omacron, Omacron ]};
key <AC03> {[ e, E, emacron, Emacron ]};
key <AC04> {[ u, U, umacron, Umacron ]};
key <AC05> {[ i, I, imacron, Imacron ]};
key <AC06> {[ d, D, d, D ]};
key <AC07> {[ h, H, h, H ]};
key <AC08> {[ t, T, t, T ]};
key <AC09> {[ n, N, ncedilla, Ncedilla ]};
key <AC10> {[ s, S, scaron, Scaron ]};
key <AC11> {[ minus, underscore, backslash, questiondown ]};
key <AB01> {[ apostrophe, quotedbl, leftdoublequotemark, doublelowquotemark ]};
key <AB02> {[ q, Q, q, Q ]};
key <AB03> {[ j, J, j, J ]};
key <AB04> {[ k, K, kcedilla, Kcedilla ]};
key <AB05> {[ x, X, x, X ]};
key <AB06> {[ b, B, b, B ]};
key <AB07> {[ m, M, m, M ]};
key <AB08> {[ w, W, w, W ]};
key <AB09> {[ v, V, v, V ]};
key <AB10> {[ z, Z, zcaron, Zcaron ]};
key <BKSL> {[ backslash, bar, grave, breve ]};
key <SPCE> {[ space, space, space, space ]};
include "level3(ralt_switch)"
};
partial alphanumeric_keys modifier_keys
xkb_symbols "ykeyusdvorakprogr" {
include "lv(usdvorak)"
name[Group1]= "Latvia (US-Dvorak programmer) - Y-letter (Y) variant";
key <AD05> {[ISO_Level3_Latch, ISO_Level3_Latch, y, Y]};
key <SPCE> {[space, space, y, Y]};
modifier_map Mod5 { <AD05> };
};
partial alphanumeric_keys modifier_keys
xkb_symbols "tildeusdvorakprogr" {
include "lv(usdvorakprogr)"
name[Group1]= "Latvia (programmers US-Dvorak compatible) - Tilde (~) variant";
key <TLDE> {[ISO_Level3_Latch, asciitilde, grave, acute]};
key <SPCE> {[space, space, asciitilde]};
modifier_map Mod5 { <TLDE> };
};
partial alphanumeric_keys modifier_keys
xkb_symbols "minuskeyusdvorakprogr" {
include "lv(usdvorak)"
name[Group1]= "Latvia (programmers US-Dvorak compatible) - minus-letter (-) variant";
key <AC11> {[ISO_Level3_Latch, ISO_Level3_Latch, mimus, underscore]};
key <SPCE> {[space, space, minus, underscore]};
modifier_map Mod5 { <AC11> };
};
//============================================================================
// Colemac compatible Latvian layout
// http://colemak.com/
//
partial alphanumeric_keys modifier_keys
xkb_symbols "uscolemak" {
name[Group1]= "Latvia (US-colemak)";
key <TLDE> {[ grave, asciitilde, acute, asciitilde ]};
key <AE01> {[ 1, exclam, onesuperior, exclamdown ]};
key <AE02> {[ 2, at, twosuperior, oneeighth ]};
key <AE03> {[ 3, numbersign, threesuperior, sterling ]};
key <AE04> {[ 4, dollar, EuroSign, cent ]};
key <AE05> {[ 5, percent, onehalf, threeeighths ]};
key <AE06> {[ 6, asciicircum, threequarters, fiveeighths ]};
key <AE07> {[ 7, ampersand, braceleft, seveneighths ]};
key <AE08> {[ 8, asterisk, bracketleft, trademark ]};
key <AE09> {[ 9, parenleft, bracketright, plusminus ]};
key <AE10> {[ 0, parenright, braceright, degree ]};
key <AE11> {[ minus, underscore, backslash, questiondown ]};
key <AE12> {[ equal, plus, endash, emdash ]};
key <AD01> {[ q, Q, q, Q ]};
key <AD02> {[ w, W, w, W ]};
key <AD03> {[ f, F, f, F ]};
key <AD04> {[ p, P, p, P ]};
key <AD05> {[ g, G, gcedilla, Gcedilla ]};
key <AD06> {[ j, J, j, J ]};
key <AD07> {[ l, L, lcedilla, Lcedilla ]};
key <AD08> {[ u, U, umacron, Umacron ]};
key <AD09> {[ y, Y, y, Y ]};
key <AD10> {[ semicolon, colon, semicolon, colon ]};
key <AD11> {[ bracketleft, braceleft, guillemotleft, leftdoublequotemark ]};
key <AD12> {[ bracketright, braceright, guillemotright, rightdoublequotemark ]};
key <AC01> {[ a, A, amacron, Amacron ]};
key <AC02> {[ r, R, rcedilla, Rcedilla ]};
key <AC03> {[ s, S, scaron, Scaron ]};
key <AC04> {[ t, T, t, T ]};
key <AC05> {[ d, D, d, D ]};
key <AC06> {[ h, H, h, H ]};
key <AC07> {[ n, N, ncedilla, Ncedilla ]};
key <AC08> {[ e, E, emacron, Emacron ]};
key <AC09> {[ i, I, imacron, Imacron ]};
key <AC10> {[ o, O, omacron, Omacron ]};
key <AC11> {[ apostrophe, quotedbl, leftdoublequotemark, doublelowquotemark ]};
key <AB01> {[ z, Z, zcaron, Zcaron ]};
key <AB02> {[ x, X, x, X ]};
key <AB03> {[ c, C, ccaron, Ccaron ]};
key <AB04> {[ v, V, v, V ]};
key <AB05> {[ b, B, b, B ]};
key <AB06> {[ k, K, kcedilla, Kcedilla ]};
key <AB07> {[ m, M, m, M ]};
key <AB08> {[ comma, less, horizconnector, multiply ]};
key <AB09> {[ period, greater, periodcentered, division ]};
key <AB10> {[ slash, question, slash, abovedot ]};
key <BKSL> {[ backslash, bar, grave, breve ]};
key <SPCE> {[ space, space, space, space ]};
include "level3(ralt_switch)"
};
partial alphanumeric_keys modifier_keys
xkb_symbols "apostropheuscolemak" {
include "lv(colemak)"
name[Group1]= "Latvia (US-Colemak)- Apostrophe (') variant";
key <AC11> {[ISO_Level3_Latch, quotedbl, apostrophe, quotedbl]};
key <SPCE> {[space, space, apostrophe]};
modifier_map Mod5 { <AC11> };
};
partial alphanumeric_keys modifier_keys
xkb_symbols "tildeuscolemak" {
include "lv(colemak)"
name[Group1]= "Latvia(US-Colemak) - Tilde (~) variant";
key <TLDE> {[ISO_Level3_Latch, asciitilde, grave, acute]};
key <SPCE> {[space, space, asciitilde]};
modifier_map Mod5 { <TLDE> };
};
_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel