Adding a custom keyboard layout (and setting it as the default)

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP












3















I'm on Arch Linux with i3, and I'm trying to create a personalized layout with IPA (International Phonetic Alphabet) symbols for use in linguistic research. I'm also using iBus for Chinese language input, and of course want to keep that, too.



The method I want to use for input is AltGr+key to give me IPA symbols, and use that together with a standard US English keyboard. Apparently this means using XKB. Xmodmap is described as too simple and deprecated (and I'm not even sure it supports Unicode completely), and Compose Key
is too cumbersome of a way to type efficiently.



I've been through the Arch wiki article on XKB and the links at the bottom of said article, as well as doing some digging on my own. I've taken a chunk of the /usr/share/X11/xkb/symbols/us file, copied it into a new file, edited and renamed it. I then edited the /usr/share/X11/xkb/rules/evdev.xml file to include my layout. But when I use the command setxkbmap iw (iw being the name of my layout), it gives me the following error:



Error loading new keyboard description


A lot of the documentation on this appears to be outdated, and I couldn't find clear instructions on how to actually install a layout after creating it. Forum posts and articles addressing similar issues (like this one or this guide) rely on GUI tools to finish the setup, which I don't have in i3 (admittedly I've just used i3 for two days, I'm clueless).



I don't think this has to do with the GUI tools though, as my system doesn't even recognize the layout. My guess is that I probably messed something up in the layout itself that makes it unrecognizable, or else failed to modify a certain config file to make the system see it. Does anyone know what I might have missed?



I figure if I can make the system recognize the layout, I can add it through iBus, as soon as I figure out how to make iBus start up automatically on login in i3...










share|improve this question
























  • Added it there, but the system still can't see it. I'm getting the same error...

    – iwaka
    Jan 21 '16 at 16:01











  • It seems that you have a syntax error in the layout file, could you post the complete iw & evdev.xml files. Could verify your steps with this post in askubuntu.com/q/482678/26246 (it includes my answer)

    – user.dz
    Feb 24 '17 at 8:47















3















I'm on Arch Linux with i3, and I'm trying to create a personalized layout with IPA (International Phonetic Alphabet) symbols for use in linguistic research. I'm also using iBus for Chinese language input, and of course want to keep that, too.



The method I want to use for input is AltGr+key to give me IPA symbols, and use that together with a standard US English keyboard. Apparently this means using XKB. Xmodmap is described as too simple and deprecated (and I'm not even sure it supports Unicode completely), and Compose Key
is too cumbersome of a way to type efficiently.



I've been through the Arch wiki article on XKB and the links at the bottom of said article, as well as doing some digging on my own. I've taken a chunk of the /usr/share/X11/xkb/symbols/us file, copied it into a new file, edited and renamed it. I then edited the /usr/share/X11/xkb/rules/evdev.xml file to include my layout. But when I use the command setxkbmap iw (iw being the name of my layout), it gives me the following error:



Error loading new keyboard description


A lot of the documentation on this appears to be outdated, and I couldn't find clear instructions on how to actually install a layout after creating it. Forum posts and articles addressing similar issues (like this one or this guide) rely on GUI tools to finish the setup, which I don't have in i3 (admittedly I've just used i3 for two days, I'm clueless).



I don't think this has to do with the GUI tools though, as my system doesn't even recognize the layout. My guess is that I probably messed something up in the layout itself that makes it unrecognizable, or else failed to modify a certain config file to make the system see it. Does anyone know what I might have missed?



I figure if I can make the system recognize the layout, I can add it through iBus, as soon as I figure out how to make iBus start up automatically on login in i3...










share|improve this question
























  • Added it there, but the system still can't see it. I'm getting the same error...

    – iwaka
    Jan 21 '16 at 16:01











  • It seems that you have a syntax error in the layout file, could you post the complete iw & evdev.xml files. Could verify your steps with this post in askubuntu.com/q/482678/26246 (it includes my answer)

    – user.dz
    Feb 24 '17 at 8:47













3












3








3


1






I'm on Arch Linux with i3, and I'm trying to create a personalized layout with IPA (International Phonetic Alphabet) symbols for use in linguistic research. I'm also using iBus for Chinese language input, and of course want to keep that, too.



The method I want to use for input is AltGr+key to give me IPA symbols, and use that together with a standard US English keyboard. Apparently this means using XKB. Xmodmap is described as too simple and deprecated (and I'm not even sure it supports Unicode completely), and Compose Key
is too cumbersome of a way to type efficiently.



I've been through the Arch wiki article on XKB and the links at the bottom of said article, as well as doing some digging on my own. I've taken a chunk of the /usr/share/X11/xkb/symbols/us file, copied it into a new file, edited and renamed it. I then edited the /usr/share/X11/xkb/rules/evdev.xml file to include my layout. But when I use the command setxkbmap iw (iw being the name of my layout), it gives me the following error:



Error loading new keyboard description


A lot of the documentation on this appears to be outdated, and I couldn't find clear instructions on how to actually install a layout after creating it. Forum posts and articles addressing similar issues (like this one or this guide) rely on GUI tools to finish the setup, which I don't have in i3 (admittedly I've just used i3 for two days, I'm clueless).



I don't think this has to do with the GUI tools though, as my system doesn't even recognize the layout. My guess is that I probably messed something up in the layout itself that makes it unrecognizable, or else failed to modify a certain config file to make the system see it. Does anyone know what I might have missed?



I figure if I can make the system recognize the layout, I can add it through iBus, as soon as I figure out how to make iBus start up automatically on login in i3...










share|improve this question
















I'm on Arch Linux with i3, and I'm trying to create a personalized layout with IPA (International Phonetic Alphabet) symbols for use in linguistic research. I'm also using iBus for Chinese language input, and of course want to keep that, too.



The method I want to use for input is AltGr+key to give me IPA symbols, and use that together with a standard US English keyboard. Apparently this means using XKB. Xmodmap is described as too simple and deprecated (and I'm not even sure it supports Unicode completely), and Compose Key
is too cumbersome of a way to type efficiently.



I've been through the Arch wiki article on XKB and the links at the bottom of said article, as well as doing some digging on my own. I've taken a chunk of the /usr/share/X11/xkb/symbols/us file, copied it into a new file, edited and renamed it. I then edited the /usr/share/X11/xkb/rules/evdev.xml file to include my layout. But when I use the command setxkbmap iw (iw being the name of my layout), it gives me the following error:



Error loading new keyboard description


A lot of the documentation on this appears to be outdated, and I couldn't find clear instructions on how to actually install a layout after creating it. Forum posts and articles addressing similar issues (like this one or this guide) rely on GUI tools to finish the setup, which I don't have in i3 (admittedly I've just used i3 for two days, I'm clueless).



I don't think this has to do with the GUI tools though, as my system doesn't even recognize the layout. My guess is that I probably messed something up in the layout itself that makes it unrecognizable, or else failed to modify a certain config file to make the system see it. Does anyone know what I might have missed?



I figure if I can make the system recognize the layout, I can add it through iBus, as soon as I figure out how to make iBus start up automatically on login in i3...







keyboard-layout xkb






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Apr 13 '17 at 12:22









Community

1




1










asked Jan 21 '16 at 6:39









iwakaiwaka

163




163












  • Added it there, but the system still can't see it. I'm getting the same error...

    – iwaka
    Jan 21 '16 at 16:01











  • It seems that you have a syntax error in the layout file, could you post the complete iw & evdev.xml files. Could verify your steps with this post in askubuntu.com/q/482678/26246 (it includes my answer)

    – user.dz
    Feb 24 '17 at 8:47

















  • Added it there, but the system still can't see it. I'm getting the same error...

    – iwaka
    Jan 21 '16 at 16:01











  • It seems that you have a syntax error in the layout file, could you post the complete iw & evdev.xml files. Could verify your steps with this post in askubuntu.com/q/482678/26246 (it includes my answer)

    – user.dz
    Feb 24 '17 at 8:47
















Added it there, but the system still can't see it. I'm getting the same error...

– iwaka
Jan 21 '16 at 16:01





Added it there, but the system still can't see it. I'm getting the same error...

– iwaka
Jan 21 '16 at 16:01













It seems that you have a syntax error in the layout file, could you post the complete iw & evdev.xml files. Could verify your steps with this post in askubuntu.com/q/482678/26246 (it includes my answer)

– user.dz
Feb 24 '17 at 8:47





It seems that you have a syntax error in the layout file, could you post the complete iw & evdev.xml files. Could verify your steps with this post in askubuntu.com/q/482678/26246 (it includes my answer)

– user.dz
Feb 24 '17 at 8:47










1 Answer
1






active

oldest

votes


















0














Add an entry for the layout to /usr/share/X11/xkb/rules/xorg.lst under ! variant and add the layout to /usr/share/X11/xkb/symbols/us. Then it will be a variant of the us layout. Format of the entry to xorg.lst should be obvious from other entries. If you want the layout listed as a separate language, put the entry in xorg.lst under ! layout and the layout to a separate file name of which is the name of the layout.






share|improve this answer






















    Your Answer








    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "106"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: false,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f256723%2fadding-a-custom-keyboard-layout-and-setting-it-as-the-default%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0














    Add an entry for the layout to /usr/share/X11/xkb/rules/xorg.lst under ! variant and add the layout to /usr/share/X11/xkb/symbols/us. Then it will be a variant of the us layout. Format of the entry to xorg.lst should be obvious from other entries. If you want the layout listed as a separate language, put the entry in xorg.lst under ! layout and the layout to a separate file name of which is the name of the layout.






    share|improve this answer



























      0














      Add an entry for the layout to /usr/share/X11/xkb/rules/xorg.lst under ! variant and add the layout to /usr/share/X11/xkb/symbols/us. Then it will be a variant of the us layout. Format of the entry to xorg.lst should be obvious from other entries. If you want the layout listed as a separate language, put the entry in xorg.lst under ! layout and the layout to a separate file name of which is the name of the layout.






      share|improve this answer

























        0












        0








        0







        Add an entry for the layout to /usr/share/X11/xkb/rules/xorg.lst under ! variant and add the layout to /usr/share/X11/xkb/symbols/us. Then it will be a variant of the us layout. Format of the entry to xorg.lst should be obvious from other entries. If you want the layout listed as a separate language, put the entry in xorg.lst under ! layout and the layout to a separate file name of which is the name of the layout.






        share|improve this answer













        Add an entry for the layout to /usr/share/X11/xkb/rules/xorg.lst under ! variant and add the layout to /usr/share/X11/xkb/symbols/us. Then it will be a variant of the us layout. Format of the entry to xorg.lst should be obvious from other entries. If you want the layout listed as a separate language, put the entry in xorg.lst under ! layout and the layout to a separate file name of which is the name of the layout.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Feb 17 at 20:07









        matj1matj1

        11




        11



























            draft saved

            draft discarded
















































            Thanks for contributing an answer to Unix & Linux Stack Exchange!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f256723%2fadding-a-custom-keyboard-layout-and-setting-it-as-the-default%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown






            Popular posts from this blog

            How to check contact read email or not when send email to Individual?

            Displaying single band from multi-band raster using QGIS

            How many registers does an x86_64 CPU actually have?