x11, doc: add overview

Signed-off-by: Ran Benita <ran234@gmail.com>
x11, doc: fix typo

Signed-off-by: Ran Benita <ran234@gmail.com>
doc: order the modules better

Explicitly specify the files in INPUT so that "X11 Support" appears
after the main modules.

Signed-off-by: Ran Benita <ran234@gmail.com>
doc: move consumed modifier description to its own section

With small edits.

Signed-off-by: Ran Benita <ran234@gmail.com>
doc: reorder "Keymap Components" functions

Put the general keymap stuff before key-specific functions.

Signed-off-by: Ran Benita <ran234@gmail.com>
parser: use "atom" instead of "sval" in yylval

"sval" is already used for "struct sval".

Signed-off-by: Ran Benita <ran234@gmail.com>
rules: warn when an RMLVO component isn't used

Due to wildcard matches in the rules file, this is only really useful
for misspelled or missing options, e.g.

$ ./test/rmlvo-to-kccgst -o comprose:ralt > /dev/null
xkbcommon: ERROR: Unrecognized RMLVO option "comprose:ralt" was ignored

Although it is more of a warning, it indicates a misconfiguration which
the user probably wants to see. Therefore the log level is ERROR.

Signed-off-by: Ran Benita <ran234@gmail.com>
quick-guide: fix Java-esque array syntax

Signed-off-by: Ran Benita <ran234@gmail.com>
quick-guide: fix xkb_state_key_get_syms() example

Signed-off-by: Ran Benita <ran234@gmail.com>
rules: fix mlvo-not-used warning

An mlvo can also be used in an expansion, but we didn't mark them in
this case in commit d8a4f52cb95d989b4. This caused wrongful warnings on
something like -l ch -v fr -- the `fr` is only added via expansion.

Signed-off-by: Ran Benita <ran234@gmail.com>
keymap-dump: combine modifier_map's with the same modifier

A bit less efficient, but makes for shorter, nicer output.

Signed-off-by: Ran Benita <ran234@gmail.com>
x11, doc: add note about per-client flags like detectable autorepeat

Signed-off-by: Ran Benita <ran234@gmail.com>
x11, doc: add note about Key{Press,Release}->state field

Signed-off-by: Ran Benita <ran234@gmail.com>
doc: linkify some references

Signed-off-by: Ran Benita <ran234@gmail.com>
doc: disable tree view

It is redundant with the header navigation.

Signed-off-by: Ran Benita <ran234@gmail.com>
doc: disable BRIEF_MEMBER_DESC

It's easier to quickly go through the functions in a module this way.
The names provide enough "brief description" to get someone to click for
the full description.

Signed-off-by: Ran Benita <ran234@gmail.com>
doc: disable alphabetical data structure index

It is useless - we have very little data structures.

Signed-off-by: Ran Benita <ran234@gmail.com>
symbols: use correct max value

xkb_level_index_t was initially uint16_t, now it's 32.

Signed-off-by: Ran Benita <ran234@gmail.com>
symbols: improve FindKeyForSymbol()

A bit more involved, but can short circuit.

Signed-off-by: Ran Benita <ran234@gmail.com>
keymap: rename XkbKeyGroupWidth to XkbKeyNumLevels

The "width" terminology comes from the group*width+level layout of the
keysyms in a key, as used in the old implementations. We don't keep all
the keysyms of a key in one array so change it to a more accurate name.

Signed-off-by: Ran Benita <ran234@gmail.com>