keyboardlayouteditor icon indicating copy to clipboard operation
keyboardlayouteditor copied to clipboard

Editing an existing layout file?

Open donnekgit opened this issue 10 years ago • 5 comments

Hi

I've installed and launched KLE as follows on ubuntu 14.04: sudo apt-get install python-antlr wget https://github.com/simos/keyboardlayouteditor/archive/master.zip unzip -q master.zip mv keyboardlayouteditor-master kle cd kle sudo apt-get install python-setuptools sudo pip install http://www.antlr3.org/download/Python/antlr_python_runtime-3.1.2.tar.gz wget http://antlr3.org/download/antlr-3.1.2.jar java -classpath "antlr-3.1.2.jar" org.antlr.Tool *.g cd .. rm master.zip kle/KeyboardLayoutEditor

However, if I open an existing layout file, nothing appears on the keys in the interface, yet the post at http://simos.info/blog/archives/747 says "The other workflow is to start with an appropriate existing layout as a base, then add more characters, make changes, etc."

Is there something special I need to do, or is it in fact the case that KLE works only for designing new layouts?

Thanks

Kevin

donnekgit avatar Aug 11 '14 15:08 donnekgit

Apparently, KeyboardLayoutEditor encounters errors while parsing the layout files. Looking forward to a fix. This is a very useful program for non-technical Ubuntu users with broken keyboards.

mardukbp avatar Nov 04 '14 00:11 mardukbp

That problem happen in specific case where the layout have something: include "us(intl)" replacing with include "us" avoid the problem but is not ok because load the wrong syntax.

Mte90 avatar Apr 12 '16 09:04 Mte90

To avoid that i have done a new file that contain all the layout required and now the editor work without problems.

default  partial alphanumeric_keys modifier_keys
xkb_symbols "basic" {

    name[Group1]= "English (US, international with dead keys)";

    key <TLDE> {    [     grave,    asciitilde  ]   };
    key <AE01> {    [     1,    exclam      ]   };
    key <AE02> {    [     2,    at      ]   };
    key <AE03> {    [     3,    numbersign  ]   };
    key <AE04> {    [     4,    dollar      ]   };
    key <AE05> {    [     5,    percent     ]   };
    key <AE06> {    [     6,    asciicircum ]   };
    key <AE07> {    [     7,    ampersand   ]   };
    key <AE08> {    [     8,    asterisk    ]   };
    key <AE09> {    [     9,    parenleft   ]   };
    key <AE10> {    [     0,    parenright  ]   };
    key <AE11> {    [     minus,    underscore  ]   };
    key <AE12> {    [     equal,    plus        ]   };

    key <AD01> {    [     q,    Q       ]   };
    key <AD02> {    [     w,    W       ]   };
    key <AD03> {    [     e,    E       ]   };
    key <AD04> {    [     r,    R       ]   };
    key <AD05> {    [     t,    T       ]   };
    key <AD06> {    [     y,    Y       ]   };
    key <AD07> {    [     u,    U       ]   };
    key <AD08> {    [     i,    I       ]   };
    key <AD09> {    [     o,    O       ]   };
    key <AD10> {    [     p,    P       ]   };
    key <AD11> {    [ bracketleft,  braceleft   ]   };
    key <AD12> {    [ bracketright, braceright  ]   };

    key <AC01> {    [     a,    A       ]   };
    key <AC02> {    [     s,    S       ]   };
    key <AC03> {    [     d,    D       ]   };
    key <AC04> {    [     f,    F       ]   };
    key <AC05> {    [     g,    G       ]   };
    key <AC06> {    [     h,    H       ]   };
    key <AC07> {    [     j,    J       ]   };
    key <AC08> {    [     k,    K       ]   };
    key <AC09> {    [     l,    L       ]   };
    key <AC10> {    [ semicolon,    colon       ]   };
    key <AC11> {    [ apostrophe,   quotedbl    ]   };

    key <AB01> {    [     z,    Z       ]   };
    key <AB02> {    [     x,    X       ]   };
    key <AB03> {    [     c,    C       ]   };
    key <AB04> {    [     v,    V       ]   };
    key <AB05> {    [     b,    B       ]   };
    key <AB06> {    [     n,    N       ]   };
    key <AB07> {    [     m,    M       ]   };
    key <AB08> {    [     comma,    less        ]   };
    key <AB09> {    [    period,    greater     ]   };
    key <AB10> {    [     slash,    question    ]   };

    key <BKSL> {    [ backslash,         bar    ]   };

    key <TLDE> { [dead_grave, dead_tilde,         grave,       asciitilde ] };
    key <AE01> { [     1,     exclam,    exclamdown,      onesuperior ] };
    key <AE02> { [     2,         at,   twosuperior, dead_doubleacute ] };
    key <AE03> { [     3, numbersign, threesuperior,      dead_macron ] };
    key <AE04> { [     4,     dollar,      currency,         sterling ] };
    key <AE05> { [     5,    percent,      EuroSign,     dead_cedilla ] };
    key <AE06> { [    6, dead_circumflex,    onequarter,      asciicircum ] };
    key <AE07> { [     7,  ampersand,       onehalf,    dead_horn ] };
    key <AE08> { [     8,   asterisk, threequarters,      dead_ogonek ] };
    key <AE09> { [     9,  parenleft, leftsinglequotemark, dead_breve ] };
    key <AE10> { [     0, parenright, rightsinglequotemark, dead_abovering ] };
    key <AE11> { [     minus, underscore,           yen,    dead_belowdot ] };
    key <AE12> { [     equal,       plus,      multiply,         division ] };

    key <AD01> { [     q,          Q,    adiaeresis,       Adiaeresis ] };
    key <AD02> { [     w,          W,         aring,            Aring ] };
    key <AD03> { [     e,          E,        eacute,           Eacute ] };
    key <AD04> { [     r,          R,    registered,       registered ] };
    key <AD05> { [     t,          T,         thorn,            THORN ] };
    key <AD06> { [     y,          Y,    udiaeresis,       Udiaeresis ] };
    key <AD07> { [     u,          U,        uacute,           Uacute ] };
    key <AD08> { [     i,          I,        iacute,           Iacute ] };
    key <AD09> { [     o,          O,        oacute,           Oacute ] };
    key <AD10> { [     p,          P,    odiaeresis,       Odiaeresis ] };
    key <AD11> { [ bracketleft,  braceleft,  guillemotleft, leftdoublequotemark ] };
    key <AD12> { [bracketright, braceright, guillemotright, rightdoublequotemark ] };

    key <AC01> { [     a,          A,        aacute,           Aacute ] };
    key <AC02> { [     s,          S,        ssharp,          section ] };
    key <AC03> { [     d,          D,           eth,              ETH ] };
    key <AC04> { [     f,          F,             f,                F ] };
    key <AC05> { [     g,          G,             g,                G ] };
    key <AC06> { [     h,          H,             h,                H ] };
    key <AC07> { [     j,          J,             j,                J ] };
    key <AC08> { [     k,          K,            oe,               OE ] };

    key <AC09> { [     l,          L,        oslash,         Ooblique ] };
    key <AC10> { [ semicolon,      colon,     paragraph,           degree ] };
    key <AC11> { [dead_acute, dead_diaeresis, apostrophe,        quotedbl ] };

    key <AB01> { [     z,          Z,            ae,               AE ] };
    key <AB02> { [     x,          X,             x,                X ] };
    key <AB03> { [     c,          C,     copyright,             cent ] };
    key <AB04> { [     v,          V,             v,                V ] };
    key <AB05> { [     b,          B,             b,                B ] };
    key <AB06> { [     n,          N,        ntilde,           Ntilde ] };
    key <AB07> { [     m,          M,            mu,               mu ] };
    key <AB08> { [     comma,       less,      ccedilla,         Ccedilla ] };
    key <AB09> { [    period,    greater, dead_abovedot,       dead_caron ] };
    key <AB10> { [     slash,   question,  questiondown,        dead_hook ] };
    key <BKSL> { [ backslash,        bar,       notsign,        brokenbar ] };

    key <LSGT> { [ backslash,   bar,            backslash,      bar ] };

    // grave, tilde
    key <TLDE> { [grave, asciitilde, U0300, U0303 ] };
    // double acute
    key <AE02> { [ 2, at, twosuperior, U030B ] };
    // macron
    key <AE03> { [ 3, numbersign, threesuperior, U0304 ] };
    // circumflex
    key <AE06> { [ 6, asciicircum, onequarter, U0302 ] };
    // horn
    key <AE07> { [ 7, ampersand, onehalf, U031B ] };
    // ogonek
    key <AE08> { [ 8, asterisk, threequarters, U0328 ] };
    // breve
    key <AE09> { [   9, parenleft, leftsinglequotemark, U0306 ] };
    // abovering
    key <AE10> { [   0, parenright, rightsinglequotemark, U030A ] };

    // belowdot
    key <AE11> { [ minus, underscore, yen, U0323 ] };
    // acute, diaeresis
    key <AC11> { [apostrophe, quotedbl, U0301, U0308 ] };
    // abovedot, caron
    key <AB09> { [ period, greater, U0307, U030C ] };
    // hook
    key <AB10> { [ slash, question, questiondown, U0309 ] };

    // alt-intl compatibility
    // cedilla, caron
    key <AB08> { [ comma, less,  U0327, U030C ] };
    // ogonek, diaeresis
    key <AC10> { [ semicolon, colon,     U0328, U0308 ] };
    // doubleacute, horn
    key <AE12> { [ equal, plus,  U030B, U031B ] };


    // easier macron; em-dash.
    // em-dash is available via compose, but I added here since it's such
    // an important typographic character.
    key <AE11> { [ minus, underscore, U0304, U2014 ] };

    // belowdot, abovedot (caron at coma/less key, per above)
    key <AB09> { [ period, greater, U0323, U0307 ] };

    include "level3(ralt_switch)"

};

Mte90 avatar Apr 12 '16 10:04 Mte90

indeed I had the same problem and now it works, thanks @Mte90

mathgamain avatar Jun 18 '16 14:06 mathgamain

The codebase of this project is too old that require a whole refactoring to fix this issue... Migrating python 2 just to 3 is not enough for the dependencies

Mte90 avatar Aug 30 '22 10:08 Mte90