Commit Graph

52 Commits (efa5805032c1f70e391b4066428c61d03abd5cb7)

Author SHA1 Message Date
Jouke Witteveen 8b603dbe11 doc: fix user-configuration sample file
Support copy-pasting from the docs to get something functional.

Signed-off-by: Jouke Witteveen <j.witteveen@gmail.com>
2021-04-11 10:25:56 +03:00
Ran Benita 83e3a53ddc doc: add keymap-format-text-v1.md to the HTML documentation
It's incomplete but might be helpful for someone.

Signed-off-by: Ran Benita <ran@unusedvar.com>
2021-02-27 22:38:21 +02:00
Ran Benita 44df69c928 doc/keymap: some slight editing
Signed-off-by: Ran Benita <ran@unusedvar.com>
2020-12-27 09:49:20 +02:00
Simon Zeni 7420521ff4
doc/keymap: add documentation for xkb_symbols (#205) 2020-12-27 09:48:39 +02:00
Peter Hutterer ae90a6a0a9 doc: add some disclaimer regarding user-specific key types and compat entries
It's a niche use-case but basically the same as adding symbols, so let's go with
a general handwavy explanation.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2020-08-30 21:49:41 +03:00
Peter Hutterer d7b39f6ffb Add /etc/xkb as extra lookup path for system data files
This completes the usual triplet of configuration locations available for most
processes:
- vendor-provided data files in /usr/share/X11/xkb
- system-specific data files in /etc/xkb
- user-specific data files in $XDG_CONFIG_HOME/xkb

The default lookup order user, system, vendor, just like everything else that
uses these conventions.

For include directives in rules files, the '%E' resolves to that path.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2020-08-30 21:49:41 +03:00
Ran Benita 81842f7fbb doc: ignore rxkb, RXBK prefixes in doxygen
Signed-off-by: Ran Benita <ran@unusedvar.com>
2020-07-25 17:21:46 +03:00
Peter Hutterer afb26e7df9 Add libxkbregistry to query available RMLVO
This library is the replacement for clients parsing evdev.xml directly.
Instead, they should use the API here so that in the future we may even
be able to swap evdev.xml for a more suitable data format.

The library parses through evdev.xml (using libxml2) and - if requested -
through evdev.extras.xml as well. The merge approach is optimised for
the default case where we have a system-installed rules XML and another file in
$XDG_CONFIG_DIR that adds a few entries.  We load the system file first, then
append any custom ones to that. It's not possible to overwrite the MLVO list
provided by the system files - if you want to do that, get the change upstream.

XML validation is handled through the DTD itself which means we only need to
check for a nonempty name, everything else the DTD validation should complain
about.

The logging system is effectively identical to xkbcommon.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2020-07-06 15:15:20 +10:00
Peter Hutterer 3adbe54eac tools: move the remaining tools from test to here
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2020-06-25 10:32:08 +10:00
Peter Hutterer 4e544e2792 doc: correct the include path list
XKB_CONFIG_ROOT (if defined) replaces the built-in system directories.

Fixes 5fb2c6769b

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2020-06-16 11:26:49 +03:00
Peter Hutterer 5fb2c6769b doc: add documentation for user configuration
Most of this is currently hidden in the commit message for ca033a29d2, let's
make it a bit more public so we have a link to point users to.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2020-06-15 07:32:10 +03:00
Peter Hutterer a26578742c doc: add the rules-format file (as markdown)
Useful to have this as part of the documentation. The rendering isn't great but
at least not any worse than pure text. Markdown escapes % so explaining our use
of %S and %H would require a double % - not idea. Let's just wrap it as a code
block and done.

Includes two typo fixes too, yay.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2020-06-15 07:32:10 +03:00
Ran Benita 517464eb7a doc/rules-format.txt: document include support
Signed-off-by: Ran Benita <ran@unusedvar.com>
2020-01-18 23:06:58 +02:00
Ran Benita 41bea9ab2b build: make doxygen run from the source tree
I couldn't find any other way to make this work!

Signed-off-by: Ran Benita <ran234@gmail.com>
2017-08-01 23:32:15 +03:00
Ran Benita 4983dbcf43 build: change doxygen target to be properly dependency-based
This hackery (thanks libinput) is clearer and more precise than the
previous hackery.

Signed-off-by: Ran Benita <ran234@gmail.com>
2017-07-31 15:55:48 +03:00
Ran Benita 148aec8bdf doc/compat: correct the XKB protocol version from 1.1 to 1.0
There is no XKB 1.1!

Thanks to Oded Arbel for catching this.

Signed-off-by: Ran Benita <ran234@gmail.com>
2017-04-29 15:26:38 +03:00
Ran Benita 599fd9ba39 doc/compat: (! MODIFIER) syntax is parsed but ignored
Signed-off-by: Ran Benita <ran234@gmail.com>
2016-09-01 21:23:23 +03:00
Ran Benita c29afcc346 doc/compat.md: xkbcomp ignores multiple-keysyms these days
https://cgit.freedesktop.org/xorg/app/xkbcomp/commit/?id=e119cbec7e750ffc4d4bd08b577db2c697035a30

Signed-off-by: Ran Benita <ran234@gmail.com>
2016-09-01 21:23:12 +03:00
Bryce Harrington d58fc90a29 doc: Also mention the wayland test client in the quick guide
Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
2016-06-21 11:35:21 +10:00
Bryce Harrington 094c8dc59b doc: Declare keymap for wayland example
keymap was defined in the X11 example, but also define it in the wayland
example just to make it a bit more standalone

Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
2016-06-21 11:35:21 +10:00
Bryce Harrington 832e32dc6c doc: Fix ctx type in example
xkb_context_new() returns a xkb_context pointer, so change the variable
definition to be consistent.

Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
2016-06-21 11:35:21 +10:00
Daniel Stone a2974d5f8a doc: Fix Doxygen include for srcdir != builddir
Instead of giving Doxygen a series of absolute paths to the source
files and a relative path to the output directory, run it from the
source directory with purely relative paths to the source files, and
give it an absolute path to the build directory.

This fixes the parsing of README.md with a separate build directory,
since the relative includes for doc/quick-guide.md and doc/compat.md
don't resolve otherwise. Doxygen's INCLUDE_PATH turns out not to fix
this either, since that's just a set of paths to open and parse, rather
than an analogue to cpp's -I.

Signed-off-by: Daniel Stone <daniels@collabora.com>
2016-03-15 11:21:29 +00:00
Ran Benita 4aa50c9d88 doc: some notes about key names and aliases
Signed-off-by: Ran Benita <ran234@gmail.com>
2016-01-20 23:17:42 +02:00
Ran Benita 7f3bb16729 doc/keymap-format-text-v1: add title and intro
Signed-off-by: Ran Benita <ran234@gmail.com>
2015-11-23 00:07:15 +02:00
Ran Benita cf337875c5 doc/quick-guide: small improvements
Signed-off-by: Ran Benita <ran234@gmail.com>
2015-11-21 23:17:55 +02:00
Ran Benita 4266402345 doc/keymap-format-text-v1: convert to markdown
Make it more readable for random browsing.

Signed-off-by: Ran Benita <ran234@gmail.com>
2015-11-21 23:12:18 +02:00
Ran Benita 8891953514 doc/keymap-format-text-v1: update info on preserve
Signed-off-by: Ran Benita <ran234@gmail.com>
2015-11-21 22:51:13 +02:00
Ran Benita 7bb425c14e doc/Doxyfile: explicitly set HTML_TIMESTAMP = NO
YES was the default in older version. Having a timestamp hurts
reproducible builds, and serves no purpose, so remove it.

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=789071

Signed-off-by: Ran Benita <ran234@gmail.com>
2015-09-08 17:28:42 +03:00
Ran Benita 7a15c0efcc doc/Doxyfile: only keep non-default values
Signed-off-by: Ran Benita <ran234@gmail.com>
2015-09-08 09:21:32 +03:00
Ran Benita 8c0d6c7960 doc/Doxyfile: sync with latest version
Signed-off-by: Ran Benita <ran234@gmail.com>
2015-09-08 09:17:16 +03:00
Ran Benita aa41d88334 doc/compat.md: add compose incompatibilities
Signed-off-by: Ran Benita <ran234@gmail.com>
2014-10-18 16:03:41 +03:00
Ran Benita 0419f6e783 docs: make html output have a fixed width, hide footer
It's hard to read text which stretches indefinitely.

The footer is not adding much.

Signed-off-by: Ran Benita <ran234@gmail.com>
2014-10-18 15:06:16 +03:00
Ran Benita 49dc91cedb doc/quick-guide: some improvements
Signed-off-by: Ran Benita <ran234@gmail.com>
2014-10-18 15:05:30 +03:00
Ran Benita ab9cb11c91 doc/compat.md: we don't support more groups or mods yet
Signed-off-by: Ran Benita <ran234@gmail.com>
2014-10-18 15:05:30 +03:00
Ran Benita 494a8fbf3f README: move compatibility notes to their own page
Signed-off-by: Ran Benita <ran234@gmail.com>
2014-10-18 15:05:30 +03:00
Ran Benita 046c802e96 compose: add xkbcommon-compose - API
xkbcommon-compose is a Compose implementation for xkbcommon. It mostly
behaves like libX11's Compose, but the support is somewhat low-level and
is not transparent like in libX11. The user must add some supporting code
in order to utilize it.

The intended audience are users who use xkbcommon but not a full-blown
input method. With this they can add Compose support in a straightforward
manner, so they have a fairly complete keyboard input for Latin-like
languages at least.

See the header documentation for details.

Signed-off-by: Ran Benita <ran234@gmail.com>
2014-10-03 00:15:39 +03:00
Ran Benita 9c088df3b3 doc: disable alphabetical data structure index
It is useless - we have very little data structures.

Signed-off-by: Ran Benita <ran234@gmail.com>
2014-09-22 15:46:13 +03:00
Ran Benita 805ed4e71b 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>
2014-09-22 15:31:51 +03:00
Ran Benita 08d05799dd doc: disable tree view
It is redundant with the header navigation.

Signed-off-by: Ran Benita <ran234@gmail.com>
2014-09-22 15:27:13 +03:00
Ran Benita f0cd7abcff quick-guide: fix xkb_state_key_get_syms() example
Signed-off-by: Ran Benita <ran234@gmail.com>
2014-09-21 00:59:11 +03:00
Ran Benita 51ae4a172a quick-guide: fix Java-esque array syntax
Signed-off-by: Ran Benita <ran234@gmail.com>
2014-09-21 00:56:33 +03:00
Ran Benita 0aeb109518 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>
2014-09-18 21:14:40 +03:00
Ran Benita 770f3e4bda doc: fix new doxygen version warnings
Signed-off-by: Ran Benita <ran234@gmail.com>
2014-04-25 01:21:09 +03:00
Ran Benita 240fa418fb build: trim down generated doxygen docs
Remove the huge verbatim copies of the header files.

Signed-off-by: Ran Benita <ran234@gmail.com>
2014-03-27 21:00:58 +02:00
Ran Benita 806dbeac81 Reformat README markdown
So that github displays it as markdown, and correctly.

Signed-off-by: Ran Benita <ran234@gmail.com>
2014-03-27 17:11:49 +02:00
Ran Benita aa3e823642 doc: add a quick guide to the library
This is a nice intro to the documentation, and also preferably gently
pushes users to the "proper way" of using the library, which can be
confusing.

See also: http://fooishbar.org/tell-me-about/xkbcommon-intro/

Signed-off-by: Ran Benita <ran234@gmail.com>
2014-03-27 17:11:48 +02:00
Ran Benita 3923aa71c2 doc: move some file comments into txt files in doc/
Signed-off-by: Ran Benita <ran234@gmail.com>
2014-02-09 14:09:44 +02:00
Ran Benita 6f06eb5944 doc: Update Doxyfile
It gives:

Warning: Tag `SYMBOL_CACHE_SIZE' at line 346 of file doc/Doxyfile has become obsolete.
To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"

So run 'doxygen -u' as suggested.

Signed-off-by: Ran Benita <ran234@gmail.com>
2013-06-19 21:14:41 +03:00
Ran Benita e8c0396f97 doc: use README as doxygen main page overview
The doxygen page looked a bit dead, the README fills it nicely, and is
already written in the markdown format which doxygen uses (I think?).

Unfortunately the USE_MDFILE_AS_MAINPAGE doxygen config doesn't seem to
do anything.. So we just add a {#mainpage} tag at the top of the README
which isn't so bad. BUT we still need some config option (the
no_extension=md part) so that doxygen will accept README instead of
README.md or somesuch. And that requires an even newer release, 1.8.3.1,
released 2013-01. But if an older version is used, it doesn't spew out
warnings but just skips the README, which is fine.

Signed-off-by: Ran Benita <ran234@gmail.com>
2013-03-18 22:20:06 +00:00
Ran Benita 40e5de9ac4 doc: update Doxyfile template to one from newer version
We want to use the USE_MDFILE_AS_MAINPAGE option which was introduced in
doxygen 1.8.3 (released 2012-12).

Right now the new options are commented, otherwise older doxygen spews
these these warnings, which can be ignored:

warning: ignoring unsupported tag `USE_MDFILE_AS_MAINPAGE =' at line 794, file doc/Doxyfile
warning: ignoring unsupported tag `MATHJAX_FORMAT         =' at line 1210, file doc/Doxyfile
warning: ignoring unsupported tag `EXTERNAL_SEARCH        =' at line 1257, file doc/Doxyfile
warning: ignoring unsupported tag `SEARCHENGINE_URL       =' at line 1265, file doc/Doxyfile
warning: ignoring unsupported tag `SEARCHDATA_FILE        =' at line 1271, file doc/Doxyfile
warning: ignoring unsupported tag `EXTERNAL_SEARCH_ID     =' at line 1278, file doc/Doxyfile
warning: ignoring unsupported tag `EXTRA_SEARCH_MAPPINGS  =' at line 1287, file doc/Doxyfile

Signed-off-by: Ran Benita <ran234@gmail.com>
2013-03-18 22:20:06 +00:00