Currently only my right Alt key (which xev prints out as keycode 108 / "ISO-Level3-Shift") is able to print 3rd-level characters like {[]}. The left Alt key (xev shows it as keycode 64 / Alt_L) doesn't do anything, even though I set it via xmodmap like this:

xmodmap -e "keycode 64 = ISO_Level3-Shift"

This didn't work but (for some reason) made things even worse. After using the command, the right Alt key stopped working printing these characters but produced a long sequence of what seems to be filenames, like this:

{.{7\ Wonders\ -\ Magical\ Mystery\ Tour,A{quaria,tomicWorm},Broken\ Rules,CrayonPhysicsDeluxe,F{BReader,ashionCents,ontmatr...

I also tried to use the option for "3rd level" in the keyboard-layout preferences, which didn't work either. Any thoughts?

1 Answer 1


This is how I did this:

use the xev command. This will allow you to get the decimal keycode of the key you want to choose as third-level chooser. Then close it.

Then calculate the hexadecimal number of the keycode you got and type the following :

xmodmap -e "keycode 0xHEXA_NUMBER = ISO_Level3_Shift"
  • dc -e "DECIMAL_NUMBER 16 o p" - will print the HEXA_NUMBER
    – Hannu
    Oct 8, 2014 at 15:44

You must log in to answer this question.

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