I have gone through plenty of documents and spent a lot of time trying to configure it, but so far unsuccessfully. I have keyboard with the 3rd level keys (probably ISO_LEVEL3_shift ?) So when I press Caps Lock and at the same time A, I get a acute (á).

Is it possible to map level 3 shift key to Space instead of Caps Lock? I imagine it as when it is pressed with the key, then it acts as level 3 shift, otherwise it is just space. I am not against experimenting but show me, please, at least direction (if it is possible).

2 Answers 2


One possibility is to use xcape. I successfully use it for mapping shift to esc. For mapping spacebar to the modifier (from man page):

xmodmap -e "keycode 65 = $sp"
xmodmap -e "remove mod4 = $sp"
xmodmap -e "add mod1 = $sp"
xmodmap -e "keycode any = space"
xcape -e "$sp=space"

However, it turned out not to be usable for me, since when I type I tend to press the next key before releasing the space.


I have this set up on my laptop to to use space as a mod3. I haven't got the latch to work, but the lock works as expected. you will need to move spacebar to another key, though.

    default partial modifier_keys
xkb_symbols "spce_switch" {
  key <SPCE> {
  symbols[Group1] = [ ISO_Level3_Latch ]
  include "level3(modifier_mapping)"

You would include this with the following statement in the symbols file.

include "Custom_SPCE_remap(spce_switch)"

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .