There is a single "list" (in whichever storage form, even distributed across several files) of possible models that setxbmap
understands. If the argument to setxbmap -model
is not in that list, the command setxbmap
would not understand it.
My guess (or expectation) is that the man
page for xkeyboard-config
should produce its output from the same "list" (i.e., the same sources) as used by setxbmap
(at least when using a default configuration; I would understand if man
did not know about user added configuration files).
That doesn't seem to be the case.
Command man -P cat xkeyboard-config
does not list abnt
, nor it is listed here, e.g.
But setxkbmap -model abnt ...
works.
In this sense, man xkeyboard-config
would be misleading.
How can the "mismatch" be explained?
An additional question appeared after tinkering.
If I execute setxkbmap -model khassss ...
(a randomly invented model), setxkbmap
does not complain, and even setxkbmap -query
prints ... model: khassss ...
.
What would setxkbmap
actually take for the model in this case, to define its behaviour?
Notes:
man -P cat xkeyboard-config
doesn't even giveabnt
orabnt2
as a layout or variant, but I guess this is irrelevant for the question.I am not sure the version I have plays any role in the mismatch referred to (I expect it doesn't)
$ apt-cache policy xkb-data xkb-data: Installed: 2.29-2 Candidate: 2.29-2 Version table: *** 2.29-2 500 500 http://ar.archive.ubuntu.com/ubuntu focal/main amd64 Packages 500 http://ar.archive.ubuntu.com/ubuntu focal/main i386 Packages 100 /var/lib/dpkg/status
pt
? How would a user tiept
withabnt
?br
layout, not thept
one, and it's included if you runman xkeyboard-config
. – Gunnar Hjalmarsson May 21 '21 at 12:32abnt
does not exist as an XKB keyboard model. Runningsetxkbmap br
without mentioning the model is perfectly valid. – Gunnar Hjalmarsson May 21 '21 at 15:21abnt
is a valid model, given the fact thatsetxkbmap -model abnt ...
works. But later I found (and I posted it in the OP!) that such command does not throw any error even if using a non-existingmodel
. So that might simply be the answer. – sancho.s ReinstateMonicaCellio May 21 '21 at 15:24