I am running Ubuntu MATE 20.04 and read through much theory around xkb and I managed for example to change altGr-, from ·
to (a bigger, bolder) •
:
$> testing keys... öäü…·
$> cp de de_frank (yes, coming from a German keyboard)
OLD key <AB08> { [ comma, semicolon, periodcentered, multiply ] };
NEW key <AB08> { [ comma, semicolon, U2022, multiply ] };
$> setxkbmap de_frank
$> testing key... öäü…• good :)
Problem / Question:
I want to replace
altGr-shift-9 from ±
to ?
(U1F600)
Does work on trivial keys like shift-3, but I don't know where I can find the right place in the file. Line :115 (in my case, Ubuntu MATE 20.04) has NO effect regarding the 9
key with any modifieres whatsoever:
< key <AE09> { [ 9, parenright, bracketright, NoSymbol, fiveeighths, plusminus, bracketleft, NoSymbol ] };
> key <AE09> { [ 9, parenright, bracketright, NoSymbol, U1F600, U1F600, U1F600, NoSymbol ] };
Putting UF1600
on, say, shift-3 (usually the dollar sign) is not a problem. So the Problem is not with the use of a rather exotic unicode.
I am guessing, the settings for altGr-shift-9 come from elsewhere, the „partial“ in which my change sits gets never included, or latter overriden, I do not exactly see through the relations and priority of all this...
possibly useful:
$> setxkbmap -print -verbose 10
Trying to load rules file /usr/share/X11/xkb/rules/evdev...
Success.
Applied rules from evdev:
rules: evdev
model: pc105
layout: de_frank
Trying to build keymap using the following components:
keycodes: evdev+aliases(qwerty)
types: complete
compat: complete
symbols: pc+de_frank+inet(evdev)
geometry: pc(pc105)
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+de_frank+inet(evdev)" };
xkb_geometry { include "pc(pc105)" };
};
The German keyboard layout includes "latin(type4)", and the 9 key definition comes from there. So open the
/usr/share/X11/xkb/symbols/latin
file for editing and find the<AE09>
definition in the "type4" section.