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: 130)
#2
I think Jack's keyboard firmware updater is capable of setting layouts, that may be a good way to make this easily available.
#3
CHANGED


The keyboard layout addition I reported is for X11, so it can be used by any X11 / xorg based desktop environment.
There is no need to change the keyboard firmware.
The new layout added is in attachment  (obtainable with the keyboard printing during the selection).
Currently does not work with: dpkg-reconfigure keyboard-configuration

Informations
https://www.x.org/wiki/XKB/


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


Forum Jump:


Users browsing this thread: 1 Guest(s)