Ubuntu – Modification of US-Internation keyboard layout

14.04keyboardkeyboard-layoutunityxorg

I have such question: how can i modify US-International keyboard layout?
By default to get this symbols: `~´¨ i need to press it twice or with AltGr Right Alt
With this answer I edited /usr/share/X11/symbols/us

partial alphanumeric_keys
xkb_symbols "intl" {

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

include "us(basic)"

//Here only edited lines left
// Was
key <TLDE> { [dead_grave, dead_tilde,         grave,       asciitilde ] };
//Now
key <TLDE> { [     grave, asciitilde,    dead_grave,      dead_tilde  ] };


// Was
key <AE06> { [    6, dead_circumflex,    onequarter,      asciicircum ] };
// Now
key <AE06> { [        6, asciicircum,    onequarter, dead_circumflex  ] };   

// Was 
key <AC11> { [dead_acute, dead_diaeresis, apostrophe,        quotedbl ] };
// Now
key <AC11> { [apostrophe,   quotedbl,    dead_acute,   dead_diaeresis ] };

But it still works with double pressing. In Unity keyboard chooser I still can't find my layout:
Layouts chooser

If i choose English US-International it shows only standard Us-International without my edits.
Reboot also doesn't helped.

  • OS Ubuntu 14.04

UPD 07.09.2015

Alter reading this link from ubuntu help i found that after layout editing i need to reload it with

  sudo dpkg-reconfigure xkb-data

But also doesn't helped.

Best Answer

I found solution!
After editing

/usr/share/X11/xkb/symblos/us

I needed to edit files

/usr/share/X11/xkb/rules/base.xml
/usr/share/X11/xkb/rules/evdev.xml

Add lines in both files under section

  <layoutList>
      <layout>
          <configItem>
              <name>us</name>
              <shortDescription>en</shortDescription>
              <description>English (US)</description>
              <languageList>
                  <iso639Id>eng</iso639Id>
              </languageList>
          </configItem>
          <variantList>
              <variant>
                  <configItem>
                      <name>uni-intl</name>
                      <description>English (US, UNIm-95 international with dead keys</description>
                  </configItem>
              </variant>

Here you can get my us, base.xml, evdev.xml

Related Question