#StackBounty: #keyboard #shortcut-keys #keyboard-layout Remap LWIN + ; to ä

Bounty: 100

I am using a US keyboard layout, but I need German Umlaute as well. Under windows it was easy to map LWIN + ; to produce an ä, LWIN + ‘ to an ö.

I read about xbindkeys, xmodmap, … but everywhere I just don’t seem to get the combination right.

How would I do that in Linux/Ubuntu? Thank you so much for your help, it is the last thing keeping me from switching full time to Linux.

Get this bounty!!!

#StackBounty: #arch-linux #xfce #keyboard-layout How do I get my custom keyboard layout to show up in the xfce4-keyboard-settings layou…

Bounty: 100

I want to create and set a custom keyboard layout with setxkbmap. I created the file ~/.xkb/symbols/yr with this content:

partial default alphanumeric_keys
xkb_symbols "basic" {

    name[Group1]= "European (Dvorak)";

    key <TLDE>  { [       grave,   asciitilde,           dead_breve,       dead_abovering ] };

    key <AE01>  { [            1,      exclam,                U2216,           exclamdown ] };
    key <AE02>  { [            2,          at,               dagger,         doubledagger ] };
    key <AE03>  { [            3,  numbersign,             function,             sterling ] };
    key <AE04>  { [            4,      dollar,             EuroSign,                  yen ] };
    key <AE05>  { [            5,     percent,             permille,               degree ] };
    key <AE06>  { [            6, asciicircum,      dead_circumflex,           dead_caron ] };
    key <AE07>  { [            7,   ampersand,            paragraph,              section ] };
    key <AE08>  { [            8,    asterisk,          ordfeminine,            masculine ] };
    key <AE09>  { [            9,   parenleft,  leftdoublequotemark,  leftsinglequotemark ] };
    key <AE10>  { [            0,  parenright, rightdoublequotemark, rightsinglequotemark ] };
    key <AE11>  { [  bracketleft,   braceleft,        guillemotleft,                U2039 ] };
    key <AE12>  { [ bracketright,  braceright,       guillemotright,                U203A ] };

    key <AD01>  { [ apostrophe,   quotedbl,      aacute,       Aacute ] };
    key <AD02>  { [      comma,       less,      oacute,       Oacute ] };
    key <AD03>  { [     period,    greater,      eacute,       Eacute ] };
    key <AD04>  { [          p,          P,      uacute,       Uacute ] };
    key <AD05>  { [          y,          Y, ycircumflex,  Ycircumflex ] };
    key <AD06>  { [          f,          F,      ssharp,        U1E9E ] };
    key <AD07>  { [          g,          G,       U01F9,        U01F8 ] };
    key <AD08>  { [          c,          C,    ccedilla,     Ccedilla ] };
    key <AD09>  { [          r,          R,  adiaeresis,   Adiaeresis ] };
    key <AD10>  { [          l,          L,      oe,     OE ]   };
    key <AD11>  { [      slash,   question,    notsign, questiondown ] };
    key <AD12>  { [      equal,       plus,    multiply,     division ] };

    key <AC01>  { [         a,          A,      acircumflex, Acircumflex ] };
    key <AC02>  { [         o,          O,      ocircumflex, Ocircumflex ] };
    key <AC03>  { [         e,          E,      ecircumflex, Ecircumflex ] };
    key <AC04>  { [         u,          U,      ucircumflex, Ucircumflex ] };
    key <AC05>  { [         i,          I,      icircumflex, Icircumflex ] };
    key <AC06>  { [         d,          D,      U1E11,             U1E10 ] };
    key <AC07>  { [         h,          H,      dstroke,             Eth ] };
    key <AC08>  { [         t,          T,      thorn,             Thorn ] };
    key <AC09>  { [         n,          N,      ntilde,           Ntilde ] };
    key <AC10>  { [         s,          S,      scedilla,       Scedilla ] };
    key <AC11>  { [     minus, underscore,      U2014,          overline ] };

    key <AB01>  { [ semicolon,      colon, agrave,  Agrave ] };
    key <AB02>  { [         q,          Q, ograve,  Ograve ] };
    key <AB03>  { [         j,          J, egrave,  Egrave ] };
    key <AB04>  { [         k,          K, ugrave,  Ugrave ] };
    key <AB05>  { [         x,          X,  U0175,   U0174 ] };
    key <AB06>  { [         b,          B, iacute,  Iacute ] };
    key <AB07>  { [         m,          M, yacute,  Yacute ] };
    key <AB08>  { [         w,          W, oslash,  Oslash ] };
    key <AB09>  { [         v,          V,  U1E8B,   U1E8A ] };
    key <AB10>  { [         z,          Z,  U0225,   U0224 ] };
    key <AC12>  { [ backslash,        bar,     ae,      AE ] };

    // key <JPCM> { [ ] }; // KPJPComma
    // key <AE13> { [ ] }; // Yen
    // key <I120> { [ ] }; // KEY_MACRO      
    // key <I149> { [ ] }; // KEY_SETUP   
    // key <I154> { [ ] }; // KEY_DELETEFILE 
    // key <I168> { [ ] }; // KEY_CLOSECD    
    // key <I178> { [ ] }; // KEY_ISO  
    // key <I183> { [ ] }; // KEY_MOVE   
    // key <I184> { [ ] }; // KEY_EDIT  
    // key <I217> { [ ] }; // KEY_BASSBOOST 
    // key <I219> { [ ] }; // KEY_HP    
    // key <I221> { [ ] }; // KEY_SOUND
    // key <I222> { [ ] }; // KEY_QUESTION
    // key <I230> { [ ] }; // KEY_ALTERASE
    // key <I247> { [ ] }; // KEY_UWB
    // key <I248> { [ ] }; // KEY_UNKNOWN
    // key <I249> { [ ] }; // KEY_VIDEO_NEXT
    // key <I250> { [ ] }; // KEY_VIDEO_PREV
    // key <I251> { [ ] }; // KEY_BRIGHTNESS_CYCLE
    // key <I252> { [ ] }; // KEY_BRIGHTNESS_ZERO
    // key <I253> { [ ] }; // KEY_DISPLAY_OFF
    // key <FK19> { [ ] }; // 197?
    // key <FK24> { [ ] }; // 202?

    include "level3(ralt_switch)"
    include "level3(lwin_switch)"

I have loaded it with setxkbmap -I ~/.xkb/ yr -print | xkbcomp -I$HOME/.xkb - $DISPLAY and it works, which is nice, but it’s not in the xfce4-keyboard-settings.

What do I need to do to get in there?

I created the file ~/.xkb/rules/evdev.xml without any effect.

        <description>European (European, Dvorak)</description>

Also why do I get an error when I try setting the keyboard layout this way?:

[me@myComputer ~]$ setxkbmap -I ~/.xkb/ yr
Error loading new keyboard description

An additional oddity is the many warnings I get when I use xkbcomp.

[me@myComputer ~]$ setxkbmap -I ~/.xkb/ yr -print  | xkbcomp -I$HOME/.xkb - $DISPLAY
Warning:          Key <OUTP> not found in evdev+aliases(qwerty) keycodes
                  Symbols ignored
Warning:          Key <KITG> not found in evdev+aliases(qwerty) keycodes
                  Symbols ignored
Warning:          Key <KIDN> not found in evdev+aliases(qwerty) keycodes
                  Symbols ignored
Warning:          Key <KIUP> not found in evdev+aliases(qwerty) keycodes
                  Symbols ignored
Warning:          Key <RO> not found in evdev+aliases(qwerty) keycodes
                  Symbols ignored
Warning:          Key <I192> not found in evdev+aliases(qwerty) keycodes
                  Symbols ignored
Warning:          Key <I193> not found in evdev+aliases(qwerty) keycodes
                  Symbols ignored
Warning:          Key <I194> not found in evdev+aliases(qwerty) keycodes
                  Symbols ignored
Warning:          Key <I195> not found in evdev+aliases(qwerty) keycodes
                  Symbols ignored
Warning:          Key <I196> not found in evdev+aliases(qwerty) keycodes
                  Symbols ignored
Warning:          Key <I255> not found in evdev+aliases(qwerty) keycodes
                  Symbols ignored
Warning:          No symbols defined for <AB11> (keycode 97)
Warning:          No symbols defined for <JPCM> (keycode 103)
Warning:          No symbols defined for <I120> (keycode 120)
Warning:          No symbols defined for <AE13> (keycode 132)
Warning:          No symbols defined for <I149> (keycode 149)
Warning:          No symbols defined for <I154> (keycode 154)
Warning:          No symbols defined for <I168> (keycode 168)
Warning:          No symbols defined for <I178> (keycode 178)
Warning:          No symbols defined for <I183> (keycode 183)
Warning:          No symbols defined for <I184> (keycode 184)
Warning:          No symbols defined for <FK19> (keycode 197)
Warning:          No symbols defined for <FK24> (keycode 202)
Warning:          No symbols defined for <I217> (keycode 217)
Warning:          No symbols defined for <I219> (keycode 219)
Warning:          No symbols defined for <I221> (keycode 221)
Warning:          No symbols defined for <I222> (keycode 222)
Warning:          No symbols defined for <I230> (keycode 230)
Warning:          No symbols defined for <I247> (keycode 247)
Warning:          No symbols defined for <I248> (keycode 248)
Warning:          No symbols defined for <I249> (keycode 249)
Warning:          No symbols defined for <I250> (keycode 250)
Warning:          No symbols defined for <I251> (keycode 251)
Warning:          No symbols defined for <I252> (keycode 252)
Warning:          No symbols defined for <I253> (keycode 253)

Get this bounty!!!

#StackBounty: #windows-xp #keyboard-layout #ms-dos #regional-settings Keyboard layout on an MS-dos program

Bounty: 100

I have an MS-DOS program that was written for Win98 that I want to run on a computer with WinXP. Language is set to Croatian, but when I run this particular software it accepts the keys as if they were coming from an English keyboard.
The regular command prompt accepts the croatian keyboard layout keys just fine but just this one program will not allow croatian characters.

I used to be able to run this on Win98 computer just fine.

In regional settings and keyboard settings in control panel everything is set to Croatian language and keyboard layout.

Get this bounty!!!

#StackBounty: #keyboard #keyboard-layout #kde #input-languages #qt Cedilla with ' and c (dead key) for QT apps

Bounty: 150

As a Brazilian, I want my american keyboard to use dead keys and to map cedilla (ç) to ‘ + c. The default mapping gives me ć. For GTK-based applications, this setup can be easily achieved by setting the following environment variable:


However, for Qt-based applications (like KWrite), the same method doesn’t work:

QT_IM_MODULES=cedilla #doesn't work!

The Qt applications will continue to print ć. How do I debug and fix this?

Note: please, do not suggest the approach given here. Typing AltGr + c feels very alien to a Brazilian and the GTK solution works just fine.

Get this bounty!!!

#StackBounty: #keyboard #keyboard-shortcuts #keyboard-layout #keymap #xmodmap xmodmap how to remap keys and disable the original ones?

Bounty: 50

I’m considering getting a 60% keyboard and want to try out working with that layout before buying the actual keyboard.

I’m trying to map arrow keys to caps lock + ijkl and disable the real arrow keys. I’ve found out how to remap it, but when I try to disable the real arrow keys, the remapped ones break. Here’s a working map:

keycode 66 = Mode_switch
keycode 31 = i I Up
keycode 44 = j J Left
keycode 45 = k K Down
keycode 46 = l L Right

To disable arrow up I add

keycode 111 =

And as soon as I do that, ijkl don’t work as characters anymore, but act as arrows even without pressing the modifier(caps lock). How do I disable the arrow keys without breaking my previous mapping?

Get this bounty!!!

#StackBounty: #arch-linux #keyboard #keyboard-layout #apple Apple Bluetooth keyboard is not configureable via modprobe.d directory

Bounty: 50

I have a MacBook Pro and installed Archlinux on it. I have read their article about Apple Keyboards, and managed to make the function key work properly (meaning pressing F5 actually triggers F5), fix some swapped keys using isolayout and would like to swap the opt and cmd key.

So I have create a file called /etc/modprobe.d/apple_keyboard.conf, and put the following content in it:

options hid_apple fnmode=2 isolayout=0 swap_opt_cmd=1

This works for the internal keyboard of the macbook, but I also have a apple bluetooth keyboard, for which these options don’t seem to apply. Especially the opt and cmd key are not swapped for the bluetooth keyboard. I have no idea what I can check, so I would be thankful for any hint.


Just realized that I have written isolayout instead of iso_layout. If I change that, < and ^ key are switched on the internal keyboard. I don’t have the bluetooth keyboard with me, but I’ll update on monday to see if it is at least correct with the other keyboard. However, if this is the case I would need a way to differ between both keyboards…


The bluetooth keyboard is still not affected by the iso_layout setting…

Get this bounty!!!

#StackBounty: #gnome #keyboard-layout #indicator #ubuntu-gnome #gnome-panel How to change the abbreviations of layouts shown in keyboar…

Bounty: 50

The keyboard layout indicator in GNOME, which appears in the panel after adding more than one layouts, shows preassigned abbreviations for layouts. Is there a way to rename this abbreviations? For example I want to change en to Eng here:

enter image description here

If I’m not mistaken it can be done pretty easily in KDE.

Distro: Ubuntu GNOME 17.04

Get this bounty!!!

#StackBounty: #macos #keyboard #keyboard-layout #modifier-keys macOS remap keys as modifiers

Bounty: 50

The situation

I use a keyboard layout called 3l (three layout) which is a layered keyboard layout. Here is the main layer (the behaviour when no modifier keys are pressed):

normal 3l layout

Now, when I am holding down the ' on a normal keyboard (sym in 3l), I am in “symbols” mode and the rest of the keyboard behaves differently. Here’s a picture of this mode:

symbols layer of 3l

Effectively, this symbols key is like a special Shift which allows me to access special characters.

Additionally, I have a numbers layer which has the same effect as the symbols layer and is activated by the / key, but has cursor and number-pad controls instead:

enter image description here

The person I forked my layout from already got the layout working in Linux and Windows (using AutoHotKey). I am trying to port it to macOS as well. So far I have created a 3l.keylayout file (see it here) and have very basic functionality working.

What’s Working

  1. The keys in normal mode work fine.
  2. If I press the symbol modifier key, the first character I press is outputted as the correct symbol. For example, if I press the symbol key and then O, / is outputted.
  3. The same goes for the cur/num key for the numberpad output.

What’s not Working

  1. If I press and hold the symbol modifier key, and type multiple characters, only the first one actually outputs the symbol. (Same goes for the cur/num key as well.)
  2. If I press and release one of the modifier keys and then press another key, the symbol/number is outputted. This should not be the case. When I release the modifier key, I want it to go back to normal mode (just like the Shift key).
  3. The cursor manipulation keys do not work reliably in all applications and they also have the issue of not allowing repeated keys when they do work.

My Question

Is there any way for me to get the functionality I described above in macOS (Sierra and later)?

Note: I have also tried to remap ' and / to Right Option and Right Control using Karabiner Elements and then attempted to create a new keymap in 3l.keylayout that is activated by those keys. This did not work, however. It screwed everything up and I got into a perpetual control/option key situation.

Get this bounty!!!

#StackBounty: #arch-linux #xfce #keyboard-layout #xkb xfce keyboard layout panel plugin gets stuck

Bounty: 50

I use the xfce “Keyboard Layouts” panel plugin to switch between english and french layouts. Sometimes it gets stuck and clicking the button and alt-shift stops working. The only fix I have found is to open the keyboard settings and under the layouts tab, click one of the layouts and click the up/down button. The weird thing is it only happens on my laptop and not my desktop. Has anyone else experienced this?

uname -a:

Linux Hermes 4.10.6-1-ARCH #1 SMP PREEMPT Mon Mar 27 08:28:22 CEST 2017 x86_64 GNU/Linux

‘pacman -Q | grep xfce`:

gtk-xfce-engine 2.10.1-1
libxfce4ui 4.12.1-2
libxfce4util 4.12.1-1
xfce4-appfinder 4.12.0-4
xfce4-artwork 0.1.1a_git20110420-4
xfce4-battery-plugin 1.1.0-1
xfce4-clipman-plugin 1.4.1-1
xfce4-cpufreq-plugin 1.1.3-1
xfce4-cpugraph-plugin 1.0.5-4
xfce4-datetime-plugin 0.7.0-1
xfce4-dev-tools 4.12.0-1
xfce4-dict 0.7.2-1
xfce4-diskperf-plugin 2.6.1-1
xfce4-eyes-plugin 4.4.5-1
xfce4-fsguard-plugin 1.1.0-1
xfce4-genmon-plugin 4.0.0-1
xfce4-indicator-plugin 2.3.3-3
xfce4-mailwatch-plugin 1.2.0-7
xfce4-mount-plugin 1.1.2-1
xfce4-mpc-plugin 0.5.0-1
xfce4-netload-plugin 1.3.1-1
xfce4-notes-plugin 1.8.1-2
xfce4-notifyd 0.3.6-1
xfce4-panel 4.12.1-1
xfce4-pulseaudio-plugin 0.2.4+8+g50c9279-1
xfce4-screenshooter 1.8.2-3
xfce4-sensors-plugin 1.2.6-3
xfce4-session 4.12.1-6
xfce4-settings 4.12.1-1
xfce4-smartbookmark-plugin 0.5.0-1
xfce4-systemload-plugin 1.2.1-1
xfce4-taskmanager 1.2.0-1
xfce4-terminal 0.8.4-1
xfce4-time-out-plugin 1.0.2-2
xfce4-timer-plugin 1.6.0-4
xfce4-verve-plugin 1.1.0-1
xfce4-wavelan-plugin 0.6.0-1
xfce4-weather-plugin 0.8.9-1
xfce4-whiskermenu-plugin 1.7.1-1
xfce4-xkb-plugin 0.7.1-2

Get this bounty!!!

#StackBounty: #keyboard #keyboard-layout #ibus-avro Avro Bengali keyboard switches to Malay (Jawi) after upgrade to Ubuntu 17.04

Bounty: 50

I upgraded one of my machines to Ubuntu 17.04. May be it is related, may be it is not, but for this machine, Avro Bengali keyboard switched to Malay (Jawi) after upgrade.

My other two machines, running Ubuntu 16.04 are working fine.

Please see these self explanatory screenshots.

enter image description here

enter image description here

I tried removing and re-adding the keyboard, uninstalling and reinstalling the keyboard without any avail.

Whenever, I switch to Avro keyboard, I get texts in Arabic.

Get this bounty!!!