Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | - | - | ||||
.github/workflows/ | H | 25-Apr-2025 | - | 95 | 90 | |
bench/ | H | 25-Apr-2025 | - | 675 | 387 | |
config/ | H | 25-Apr-2025 | - | 3,493 | 2,672 | |
doc/ | H | 25-Apr-2025 | - | 1,161 | 847 | |
fuzz/ | H | 25-Apr-2025 | - | 303 | 267 | |
include/xkbcommon/ | H | 25-Apr-2025 | - | 6,878 | 3,176 | |
scripts/ | H | 25-Apr-2025 | - | 870 | 613 | |
src/ | H | 25-Apr-2025 | - | 31,024 | 24,718 | |
test/ | H | 25-Apr-2025 | - | 67,710 | 62,501 | |
tools/ | H | 25-Apr-2025 | - | 3,479 | 2,763 | |
.editorconfig | H A D | 25-Apr-2025 | 214 | 15 | 12 | |
.uncrustify.cfg | H A D | 25-Apr-2025 | 5.4 KiB | 229 | 228 | |
Android.bp | H A D | 25-Apr-2025 | 3.5 KiB | 111 | 107 | |
LICENSE | H A D | 25-Apr-2025 | 9.9 KiB | 216 | 158 | |
METADATA | H A D | 25-Apr-2025 | 750 | 22 | 21 | |
MODULE_LICENSE_MIT | HD | 25-Apr-2025 | 0 | |||
NEWS | H A D | 25-Apr-2025 | 25.4 KiB | 812 | 523 | |
OWNERS | H A D | 25-Apr-2025 | 135 | 7 | 6 | |
PACKAGING | H A D | 25-Apr-2025 | 2.7 KiB | 77 | 56 | |
README.md | H A D | 25-Apr-2025 | 2.2 KiB | 75 | 50 | |
meson.build | H A D | 25-Apr-2025 | 27.2 KiB | 829 | 786 | |
meson_options.txt | H A D | 25-Apr-2025 | 1.5 KiB | 76 | 75 | |
xkbcommon-x11.map | H A D | 25-Apr-2025 | 165 | 10 | 9 | |
xkbcommon.map | H A D | 25-Apr-2025 | 2.6 KiB | 112 | 107 | |
xkbregistry.map | H A D | 25-Apr-2025 | 1.8 KiB | 62 | 61 |
README.md
1# libxkbcommon 2 3libxkbcommon is a keyboard keymap compiler and support library which 4processes a reduced subset of keymaps as defined by the XKB (X Keyboard 5Extension) specification. It also contains a module for handling Compose 6and dead keys and a separate library for listing available keyboard layouts. 7 8## Quick Guide 9 10See [Quick Guide](doc/quick-guide.md). 11 12## Building 13 14libxkbcommon is built with [Meson](http://mesonbuild.com/): 15 16 meson setup build 17 ninja -C build 18 ninja -C build test # Run the tests. 19 20To build for use with Wayland, you can disable X11 support while still 21using the X11 keyboard configuration resource files thusly: 22 23 meson setup build \ 24 -Denable-x11=false \ 25 -Dxkb-config-root=/usr/share/X11/xkb \ 26 -Dx-locale-root=/usr/share/X11/locale 27 ninja -C build 28 29## API 30 31While libxkbcommon's API is somewhat derived from the classic XKB API as found 32in X11/extensions/XKB.h and friends, it has been substantially reworked to 33expose fewer internal details to clients. 34 35See the [API Documentation](https://xkbcommon.org/doc/current/modules.html). 36 37## Dataset 38 39libxkbcommon does not distribute a keymap dataset itself, other than for 40testing purposes. The most common dataset is xkeyboard-config, which is used 41by all current distributions for their X11 XKB data. More information on 42xkeyboard-config is available here: 43 https://www.freedesktop.org/wiki/Software/XKeyboardConfig 44 45The dataset for Compose is distributed in libX11, as part of the X locale 46data. 47 48## Relation to X11 49 50See [Compatibility](doc/compat.md) notes. 51 52## Development 53 54An extremely rudimentary homepage can be found at 55 https://xkbcommon.org 56 57xkbcommon is maintained in git at 58 https://github.com/xkbcommon/libxkbcommon 59 60Patches are always welcome, and may be sent to either 61 <[email protected]> or <[email protected]> 62or in a [GitHub](https://github.com/xkbcommon/libxkbcommon) pull request. 63 64Bug reports (and usage questions) are also welcome, and may be filed at 65[GitHub](https://github.com/xkbcommon/libxkbcommon/issues). 66 67The maintainers are 68- Daniel Stone <[email protected]> 69- Ran Benita <[email protected]> 70 71## Credits 72 73Many thanks are due to Dan Nicholson for his heroic work in getting xkbcommon 74off the ground initially. 75