Description of problem: There is an official Tajik Standard Keyboard Layout required by the TojikStandard Organization to be used in software development. The official keyboard, due to the added 6 characters, does not support important keys such as _-+= as they are replaced by special characters “ғ” and “ӯ” on Tajik keyboard. For the translators in Linux a Tajik keyboard was developed to match the Russian layout and have all the keys available on the keyboard. This unofficial Tajik keyboard layout use more than one buttons to get a letter with a special sign for Tajik language and require two key strokes. The existing Tajik xkb in Fedora is based on unofficial layout. To meet the requirements/needs for both official and unofficial, the following layout has been created to resolve the existing (but permanent) Tajik layout issues. Steps to Reproduce: 1. Change the existing Tajik xkb (tj) Expected results: // 17/07/2008 // ------------------------------------------------------------- // Standard Tojiki Keyboard Layout, Official Standard // ------------------------------------------------------------- // Created by Victor Ibragimov <victor.ibragimov> // Tajik Fedora & Software Localization Team // ------------------------------------------------------------- // DUAL INPUT METHOD // -------------------------------------------------------------------- // -------------- Tojiki Official Keyboard Layout---------------------- // -------------------------------------------------------------------- // partial default alphanumeric_keys xkb_symbols "official" { name[Group1]= "Tojikiston - official"; key <AE01> { [ 1, exclam, 0x10000a7 ] }; key <AE02> { [ 2, quotedbl, 0x10000ab, 0x10000bb ] }; key <AE03> { [ 3, numerosign ] }; key <AE04> { [ 4, semicolon ] }; key <AE05> { [ 5, percent ] }; key <AE06> { [ 6, colon, 0x1002013 ] }; key <AE07> { [ 7, question, ampersand ] }; key <AE08> { [ 8, asterisk ] }; key <AE09> { [ 9, parenleft ] }; key <AE10> { [ 0, parenright, 0x10000b0 ] }; key <AE11> { [ 0x1000493, 0x1000492, minus, underscore ] }; key <AE12> { [ 0x10004ef, 0x10004ee, equal, plus ] }; key <AB10> { [ period, comma ] }; key <BKSL> { [ backslash, slash ] }; key <LSGT> { [ slash, bar ] }; key <TLDE> { [ Cyrillic_io, Cyrillic_IO ] }; key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; key <AD02> { [ 0x100049b, 0x100049a ] }; key <AD03> { [ Cyrillic_u, Cyrillic_U ] }; key <AD04> { [ Cyrillic_ka, Cyrillic_KA ] }; key <AD05> { [ Cyrillic_ie, Cyrillic_IE ] }; key <AD06> { [ Cyrillic_en, Cyrillic_EN ] }; key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE ] }; key <AD08> { [ Cyrillic_sha, Cyrillic_SHA ] }; key <AD09> { [ 0x10004b3, 0x10004b2 ] }; key <AD10> { [ Cyrillic_ze, Cyrillic_ZE ] }; key <AD11> { [ Cyrillic_ha, Cyrillic_HA ] }; key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN ] }; key <AC01> { [ Cyrillic_ef, Cyrillic_EF ] }; key <AC02> { [ 0x10004b7, 0x10004b6 ] }; key <AC03> { [ Cyrillic_ve, Cyrillic_VE ] }; key <AC04> { [ Cyrillic_a, Cyrillic_A ] }; key <AC05> { [ Cyrillic_pe, Cyrillic_PE ] }; key <AC06> { [ Cyrillic_er, Cyrillic_ER ] }; key <AC07> { [ Cyrillic_o, Cyrillic_O ] }; key <AC08> { [ Cyrillic_el, Cyrillic_EL ] }; key <AC09> { [ Cyrillic_de, Cyrillic_DE ] }; key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; key <AC11> { [ Cyrillic_e, Cyrillic_E ] }; key <AB01> { [ Cyrillic_ya, Cyrillic_YA ] }; key <AB02> { [ Cyrillic_che, Cyrillic_CHE ] }; key <AB03> { [ Cyrillic_es, Cyrillic_ES ] }; key <AB04> { [ Cyrillic_em, Cyrillic_EM ] }; key <AB05> { [ Cyrillic_i, Cyrillic_I ] }; key <AB06> { [ Cyrillic_te, Cyrillic_TE ] }; key <AB07> { [ 0x10004e3, 0x10004e2 ] }; key <AB08> { [ Cyrillic_be, Cyrillic_BE ] }; key <AB09> { [ Cyrillic_yu, Cyrillic_YU ] }; include "keypad(comma)" include "level3(ralt_switch)" }; // -------------------------------------------------------------------- // -------------- Tojiki Rusi Keyboard Layout-------------------------- // -------------------------------------------------------------------- // AEN <aen> // 2001/12/23 by Leon Kanter <leon> // 2005/12/09 Valery Inozemtsev <shrek> // Pablo Saratxaga <pablo@mandrakesoft> (for the dead keys changes) // -------------------------------------------------------------------- partial alphanumeric_keys xkb_symbols "tojikirusi" { name[Group1]= "Tojikiston - TojikiRusi"; key <AE01> { [ 1, exclam, 0x10000a7 ] }; key <AE02> { [ 2, quotedbl, 0x10000ab, 0x10000bb ] }; key <AE03> { [ 3, numerosign ] }; key <AE04> { [ 4, semicolon ] }; key <AE05> { [ 5, percent ] }; key <AE06> { [ 6, colon, 0x1002013 ] }; key <AE07> { [ 7, question, ampersand ] }; key <AE08> { [ 8, asterisk ] }; key <AE09> { [ 9, parenleft ] }; key <AE10> { [ 0, parenright ] }; key <AE11> { [ minus, underscore ] }; key <AE12> { [ equal, plus ] }; key <BKSL> { [ backslash, slash ] }; key <AB10> { [ period, comma ] }; key <LSGT> { [ slash, bar ] }; key <TLDE> { [ Cyrillic_io, Cyrillic_IO ] }; key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; key <AD02> { [ Cyrillic_tse, Cyrillic_TSE ] }; key <AD03> { [ Cyrillic_u, Cyrillic_U, 0x10004ef, 0x10004ee ] }; key <AD04> { [ Cyrillic_ka, Cyrillic_KA, 0x100049b, 0x100049a ] }; key <AD05> { [ Cyrillic_ie, Cyrillic_IE ] }; key <AD06> { [ Cyrillic_en, Cyrillic_EN ] }; key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, 0x1000493, 0x1000492 ] }; key <AD08> { [ Cyrillic_sha, Cyrillic_SHA ] }; key <AD09> { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; key <AD10> { [ Cyrillic_ze, Cyrillic_ZE ] }; key <AD11> { [ Cyrillic_ha, Cyrillic_HA, 0x10004b3, 0x10004b2 ] }; key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN ] }; key <AC01> { [ Cyrillic_ef, Cyrillic_EF ] }; key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU ] }; key <AC03> { [ Cyrillic_ve, Cyrillic_VE ] }; key <AC04> { [ Cyrillic_a, Cyrillic_A ] }; key <AC05> { [ Cyrillic_pe, Cyrillic_PE ] }; key <AC06> { [ Cyrillic_er, Cyrillic_ER ] }; key <AC07> { [ Cyrillic_o, Cyrillic_O ] }; key <AC08> { [ Cyrillic_el, Cyrillic_EL ] }; key <AC09> { [ Cyrillic_de, Cyrillic_DE ] }; key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; key <AC11> { [ Cyrillic_e, Cyrillic_E ] }; key <AB01> { [ Cyrillic_ya, Cyrillic_YA ] }; key <AB02> { [ Cyrillic_che, Cyrillic_CHE, 0x10004b7, 0x10004b6 ] }; key <AB03> { [ Cyrillic_es, Cyrillic_ES ] }; key <AB04> { [ Cyrillic_em, Cyrillic_EM ] }; key <AB05> { [ Cyrillic_i, Cyrillic_I, 0x10004e3, 0x10004e2 ] }; key <AB06> { [ Cyrillic_te, Cyrillic_TE ] }; key <AB07> { [Cyrillic_softsign,Cyrillic_SOFTSIGN ] }; key <AB08> { [ Cyrillic_be, Cyrillic_BE ] }; key <AB09> { [ Cyrillic_yu, Cyrillic_YU ] }; include "keypad(comma)" include "level3(ralt_switch)" }; Additional info: Tajik Dual Input Method
Victor, please file this bug upstream under the following URL: https://bugs.freedesktop.org/enter_bug.cgi?product=xkeyboard-config Sergey (the upstream maintainer) has a better overview on how to integrate new keyboard layouts. Once you have filed the bug, please add a reference to the bug in this bugreport so we can track it and integrate it into Fedora when it is merged.
Peter and Sergey, The bug was filed at: https://bugs.freedesktop.org/show_bug.cgi?id=17975 Some details for the keyboard layouts added: Tajik users/typers would like to have an option in Fedora to use/have both kayboard layouts: 1) Standard Tojiki Keyboard Layout, Official Standard, Required 2) Tojiki Rusi Keyboard Layout, Unofficial, But most usable
Info keeps udpated at: http://bugs.freedesktop.org/show_bug.cgi?id=17975
xkeyboard-config-1.4-3.fc10 just went into rawhide.