Go to file
Ran Benita 47d6e5a8d9 compose/doc: note that it is safe to pass the result of getenv() as locale
See the NOTES section of getenv(3). Somewhat obscure but it doesn't hurt
to reassure the readers who know about this.

Signed-off-by: Ran Benita <ran234@gmail.com>
2017-01-15 18:32:02 +02:00
bench bench: fix compilation on hurd 2016-09-19 10:09:12 +03:00
doc doc/compat: (! MODIFIER) syntax is parsed but ignored 2016-09-01 21:23:23 +03:00
m4 Remove m4/.gitkeep 2014-02-08 22:44:59 +02:00
src compose: remove the keysym_from_name cache 2016-12-03 00:22:05 +02:00
test keysym: fix locale dependence in xkb_keysym_from_name() 2016-12-02 23:46:56 +02:00
xkbcommon compose/doc: note that it is safe to pass the result of getenv() as locale 2017-01-15 18:32:02 +02:00
.autom4te.cfg build: use build-aux as autom4te cache directory 2013-08-15 09:58:50 +03:00
.gitignore gitignore: ignore generated wayland protocol stubs 2016-04-19 12:40:41 +03:00
.travis.yml travis: remove --disable-x11 2016-03-15 20:16:29 +02:00
.uncrustify.cfg Run source tree through uncrustify 2012-07-17 10:20:15 +01:00
Android.mk Android.mk: Remove unnecessary for loop 2012-09-11 15:11:35 +01:00
LICENSE test: Add interactive-wayland 2016-04-12 12:15:04 +01:00
Makefile.am test: Add interactive-wayland 2016-04-12 12:15:04 +01:00
NEWS Update NEWS 2016-11-11 20:01:43 +02:00
PACKAGING PACKAGING: Update for interactive-wayland 2016-06-21 11:35:21 +10:00
README.md README: Add basic build directions 2016-09-16 09:24:09 +03:00
autogen.sh autogen: use --force instead of --symlink 2012-10-24 00:59:37 +11:00
configure.ac keysym: fix locale dependence in xkb_keysym_from_name() 2016-12-02 23:46:56 +02:00
makekeys.py makekeys: mark keysym_names as static 2014-01-11 00:26:58 +02:00
xkbcommon-uninstalled.pc.in build: drop the include/ directory 2012-07-23 00:45:34 +03:00
xkbcommon-x11-uninstalled.pc.in x11: add XKB protocol keymap and state creation support 2014-02-02 11:16:40 +02:00
xkbcommon-x11.map Change initial symbol file versions to V_0.5.0 2014-10-18 16:40:59 +03:00
xkbcommon-x11.pc.in x11: add XKB protocol keymap and state creation support 2014-02-02 11:16:40 +02:00
xkbcommon.map state: allow different modes for calculating consumed modifiers 2016-10-31 12:52:26 +02:00
xkbcommon.pc.in Remove xproto and kbproto from pkg-config file 2012-04-09 14:04:25 +01:00

README.md

libxkbcommon

libxkbcommon is a keyboard keymap compiler and support library which processes a reduced subset of keymaps as defined by the XKB (X Keyboard Extension) specification. It also contains a module for handling Compose and dead keys.

Quick Guide

See Quick Guide.

Building

libxkbcommon is built the typical autoconf way:

./autogen.sh
make

To build for use with Wayland, you can disable X11 support while still using the X11 keyboard configuration resource files thusly:

./autogen.sh --disable-x11 \
    --with-xkb-config-root=/usr/share/X11/xkb \
    --with-x-locale-root=/usr/share/X11/locale
make

API

While libxkbcommon's API is somewhat derived from the classic XKB API as found in X11/extensions/XKB.h and friends, it has been substantially reworked to expose fewer internal details to clients.

See the API Documentation.

Dataset

libxkbcommon does not distribute a keymap dataset itself, other than for testing purposes. The most common dataset is xkeyboard-config, which is used by all current distributions for their X11 XKB data. More information on xkeyboard-config is available here: http://www.freedesktop.org/wiki/Software/XKeyboardConfig

The dataset for Compose is distributed in libX11, as part of the X locale data.

Relation to X11

See Compatibility notes.

Development

An extremely rudimentary homepage can be found at http://xkbcommon.org

xkbcommon is maintained in git at https://github.com/xkbcommon/libxkbcommon

Patches are always welcome, and may be sent to either xorg-devel@lists.x.org or wayland-devel@lists.freedesktop.org or through github.

Bug reports are also welcome, and may be filed either at Bugzilla https://bugs.freedesktop.org/describecomponents.cgi?product=libxkbcommon or Github https://github.com/xkbcommon/libxkbcommon/issues

The maintainers are

Credits

Many thanks are due to Dan Nicholson for his heroic work in getting xkbcommon off the ground initially.