ISO keybord remap for Romance languages.
#1
I completed the definition of an ISO keyboard with accented characters for Romance languages.

I have not prepared a script or an installation package.

OPTIMIZED LAYOUT,  FILE CHANGED

If there is interest, installation can be made easier.
In the meantime, mark here how you can remap the keyboard.
This is the file named "iso" which should be placed in the directory (for Debian-like distributions)
"/usr/share/X11/xkb/symbols"


Code:
default  partial
xkb_symbols "iso" {

   name[Group1]="ISO (with latin letters)";

   key <TLDE> { [ dead_grave,     notsign,    brokenbar,         approxeq ] };

   key <AE01> { [         1,      exclam,   onesuperior,       exclamdown ] };  
   key <AE02> { [         2,     quotedbl,  twosuperior,          onehalf ] };
   key <AE03> { [         3,    sterling, threesuperior,         onethird ] };
   key <AE04> { [         4,      dollar,      EuroSign,       onequarter ] };
   key <AE05> { [       5,     percent,          cent,      fiveeighths ] };
   key <AE06> { [         6, dead_circumflex, threequarters, threeeighths ] };
   key <AE07> { [         7,   ampersand,     leftarrow,     seveneighths ] };
   key <AE08> { [         8,    asterisk,     downarrow,         notequal ] };
   key <AE09> { [         9,   parenleft,       uparrow,        plusminus ] };
   key <AE10> { [         0,   parenright,   rightarrow,           degree ] };
   key <AE11> { [     minus,   underscore, dead_cedilla,         infinity ] };
   key <AE12> { [     equal,        plus,      multiply,         division ] };
   
   key <AD01> { [         q,           Q,      lstroke,           Lstroke ] };
   key <AD02> { [         w,           W,  ucircumflex,       Greek_OMEGA ] };  
   key <AD03> { [         e,           E,       egrave,            Egrave ] };
   key <AD04> { [         r,           R,  ecircumflex,       Ecircumflex ] };
   key <AD05> { [         t,           T,       tslash,            Tslash ] };
   key <AD06> { [         y,           Y,   ydiaeresis,        Ydiaeresis ] };  
   key <AD07> { [         u,           U,       ugrave,            Ugrave ] };
   key <AD08> { [         i,           I,       igrave,            Igrave ] };
   key <AD09> { [         o,           O,       ograve,            Ograve ] };
   key <AD10> { [         p,           P,        thorn,             THORN ] };    
   key <AD11> { [  bracketleft,  braceleft,  leftdoublequotemark,  leftsinglequotemark ] };
   key <AD12> { [ bracketright, braceright, rightdoublequotemark, rightsinglequotemark ] };
     
   key <AC01> { [         a,          A,        agrave,           Agrave ] };
   key <AC02> { [         s,          S,        ssharp,          section ] };
   key <AC03> { [         d,          D,        eacute,           Eacute ] };
   key <AC04> { [         f,          F, dead_belowdot,      ordfeminine ] };
   key <AC05> { [         g,          G, dead_abovedot,        masculine ] };
   key <AC06> { [         h,          H,       hstroke,          Hstroke ] };  
   key <AC07> { [         j,          J,        uacute,           Uacute ] };
   key <AC08> { [         k,          K,        iacute,           Iacute ] };
   key <AC09> { [         l,          L,        oacute,           Oacute ] };
   key <AC10> { [ semicolon,     colon, dead_abovering,        paragraph ] };
   key <AC11> { [ apostrophe,        at,    dead_acute,       circumflex ] };    
   key <BKSL> { [ numbersign, asciitilde,   dead_tilde,         integral ] };

   key <LSGT> { [ backslash,        bar, dead_diaeresis,          endash ] };
   key <AB01> { [         z,          Z,        aacute,           Aacute ] };
   key <AB02> { [         x,          X,            ae,               AE ] };      
   key <AB03> { [         c,          C,      ccedilla,         Ccedilla ] };    
   key <AB05> { [       b,          B,         U0259,         idotless ] };    
   key <AB04> { [         v,          V,            oe,               OE ] };
   key <AB06> { [         n,          N,        ntilde,           Ntilde ] };
   key <AB07> { [       m,          M,    dead_macron,              mu ] };      
   key <AB08> { [     comma,       less,   guillemotleft,       abovedot ] };  
   key <AB09> { [    period,    greater,  guillemotright, periodcentered ] };
   key <AB10> { [     slash,   question,      dead_breve,   questiondown ] };        
   
       include "level3(ralt_switch_multikey)"
};

These are the lines to add to the "gb" file of this directory:
Code:
partial alphanumeric_keys
xkb_symbols "iso" {

include "iso"
};
these lines must be inserted between two descriptions of variants
example:
...
    include "level3(ralt_switch)"

};
 
 <-- enter HERE -------------------------------------------------------------------
// Describe the differences between the US Colemak layout
// and a UK variant. By Andy Buckley (andy@insectnation.org)

partial alphanumeric_keys
xkb_symbols "colemak" {
    include "us(colemak)"
...

edit the file "/usr/share/X11/xkb/rules/base.lst"

adding the line:
Code:
iso             gb: ISO (with latin letters)
(near line 721)

for example
...
  mac_intl        gb: English (UK, intl., Macintosh)
 <-- enter HERE -------------------------------------------------------------------
  colemak         gb: English (UK, Colemak)
... 

edit the file "/usr/share/X11/xkb/rules/base.xml"

adding the lines:
Code:
       <variant>
         <configItem>
           <name>iso</name>
           <description>ISO (with latin letters)</description>
         </configItem>
       </variant>
(near line 5618)

for example
...
        <variant>
          <configItem>
            <name>mac_intl</name>
            <description>English (UK, intl., Macintosh)</description>
          </configItem>
        </variant>
 <-- enter HERE -------------------------------------------------------------------
      <variant>
          <configItem>
            <name>colemak</name>
            <description>English (UK, Colemak)</description>
          </configItem>
        </variant>
...
copy the two files "base.lst" and "base.xml" replacing respectively "evdev.lst" and "evdev.xml"

For safety, better rename the initial files so you can easily restore them.

To make the changes effective, use mate control center / keybord / add keybord ("mate-keyboard-properties") and select UK (GB) language and "ISO (with latin letters)" variant.

The graphical layout is in the attachmentent


Attached Files
.pdf   ISO-latin-layout.pdf (Size: 37.76 KB / Downloads: 317)


Messages In This Thread
ISO keybord remap for Romance languages. - by IoSer - 04-15-2020, 01:59 PM

Forum Jump:


Users browsing this thread: 1 Guest(s)