https://www.x.org/releases/X11R7.7/doc/libX11/i18n/compose/en_US.UTF-8.html
$ setxkbmap -option # clear option
$ setxkbmap -model pc105 -layout us -option compose:ralt,caps:ctrl_modifier,shift:both_capslock
$ setxkbmap -print
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us+inet(evdev)+capslock(ctrl_modifier)+compose(ralt)+shift(both_capslock)" };
xkb_geometry { include "pc(pc105)" };
};
$ setxkbmap -query
rules: evdev
model: pc105
layout: us
options: compose:ralt,caps:ctrl_modifier,compose:ralt
Settings options:
$ gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us')]"
$ gsettings set org.gnome.desktop.input-sources xkb-options \
"['caps:ctrl_modifier', 'compose:ralt', 'shift:both_capslock']"
Reading options:
$ gsettings get org.gnome.desktop.input-sources sources
$ gsettings get org.gnome.desktop.input-sources xkb-options
['caps:ctrl_modifier', 'compose:ralt', 'shift:both_capslock']
localectl list-x11-keymap-options | cat
Run "man 7 xkeyboard-config
" for human description of options (and layout/variants).
Simple guide: https://medium.com/@damko/a-simple-humble-but-comprehensive-guide-to-xkb-for-linux-6f1ad5e13450
Ubuntu help: https://help.ubuntu.com/community/ComposeKey