test: add "how to type" demo program The program takes a unicode codepoint and an RMLVO and prints out all key + modifier combinations that would result in that codepoint. The program was written to exercise the new xkb_keymap_key_get_mods_for_level() function. It's handy and can be extended in several ways, but enough for now. Example: $ ./build/how-to-type -l us,il,ru 0x41 | column -ts $'\t' keysym: A (0x41) KEYCODE KEY NAME LAYOUT# LAYOUT NAME LEVEL# MODIFIERS 38 AC01 1 English (US) 2 [ Shift ] 38 AC01 1 English (US) 2 [ Lock ] 38 AC01 2 Hebrew 2 [ Shift ] 38 AC01 2 Hebrew 2 [ Lock ] $ ./build/how-to-type -l de -v neo 0x3b6 | column -ts $'\t' keysym: Greek_zeta (0x7e6) KEYCODE KEY NAME LAYOUT# LAYOUT NAME LEVEL# MODIFIERS 56 AB05 1 German (Neo 2) 4 [ Shift Mod5 ] 56 AB05 1 German (Neo 2) 4 [ Shift Mod2 Mod3 Mod5 ] 56 AB05 1 German (Neo 2) 4 [ Shift Lock Mod5 ] 56 AB05 1 German (Neo 2) 4 [ Lock Mod2 Mod3 Mod5 ] Signed-off-by: Ran Benita <ran@unusedvar.com>