Path to this page:
Subject: CVS commit: pkgsrc/x11/libxkbcommon
From: Thomas Klausner
Date: 2020-09-13 11:25:38
Message id: 20200913092538.1A43CFB28@cvs.NetBSD.org
Log Message:
libxkbcommon: update to 1.0.1.
libxkbcommon 1.0.1 - 2020-09-11
==================
- Fix the tool-option-parsing test failing.
- Remove requirement for pytest in the tool-option-parsing test.
- Make the table output of `xkbcli how-to-type` aligned.
- Some portability and test isolation fixes.
libxkbcommon 1.0.0 - 2020-09-05
==================
Note: this release is API and ABI compatible with previous releases -- the
major version bump is only an indication of stability.
- Add libxkbregistry as configure-time optional library. libxkbregistry is a C
library that lists available XKB models, layouts and variants for a given
ruleset. This is a separate library (libxkbregistry.so, pkgconfig file
xkbregistry.pc) and aimed at tools that provide a listing of available
keyboard layouts to the user. See the Documentation for details on the API.
Contributed by Peter Hutterer <@who-t.net>.
- Better support custom user configuration:
* Allow including XKB files from other paths.
Previously, a 'symbols/us' file in path A would shadow the same file in
path B. This is suboptimal, we rarely need to hide the system files - we
care mostly about *extending* them. By continuing to check other lookup
paths, we make it possible for a XDG_CONFIG_HOME/xkb/symbols/us file to
have sections including those from /usr/share/X11/xkb/symbols/us.
Note that this is not possible for rules files, which need to be manually
controlled to get the right bits resolved.
* 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.
* Add a new section to the documentation for custom user configuration.
Contributed by Peter Hutterer <@who-t.net>.
- Add an `xkbcli` command-line utility.
This tool offers various subcommands for introspection and debugging.
Currently the available subcommands are:
list
List available rules, models, layouts, variants and options
interactive-wayland
Interactive debugger for XKB keymaps for Wayland
interactive-x11
Interactive debugger for XKB keymaps for X11
interactive-evdev
Interactive debugger for XKB keymaps for evdev (Linux)
compile-keymap
Compile an XKB keymap
how-to-type
See separate entry below.
See the manpages for usage information.
Contributed by Peter Hutterer <@who-t.net>.
- Add `xkb_utf32_to_keysym()` to translate a Unicode codepoint to a keysym.
When a special keysym (`XKB_KEY_` constant) for the codepoint exists, it is
returned, otherwise the direct encoding is used, if permissible.
Contributed by Jaroslaw Kubik <@froglogic.com>.
- Add `xkb_keymap_key_get_mods_for_level()` which retrieves sets of modifiers
which produce a given shift level in a given key+layout.
Contributed by Jaroslaw Kubik <@froglogic.com>.
- Add `xkbcli how-to-type` command, which, using `xkb_utf32_to_keysym()`
and `xkb_keymap_key_get_mods_for_level()` and other APIs, prints out all
the ways to produce a given keysym.
For example, how to type `?` (codepoint 63) in a us,de keymap?
$ xkbcli how-to-type --layout us,de 63 | column -ts $'\t'
keysym: question (0x3f)
KEYCODE KEY NAME LAYOUT# LAYOUT NAME LEVEL# MODIFIERS
20 AE11 2 German 2 [ Shift ]
20 AE11 2 German 2 [ Shift Lock ]
61 AB10 1 English (US) 2 [ Shift ]
- Add a new section to the documentation describing the format of the XKB
rules file.
- Search for Compose in $XDG_CONFIG_HOME/XCompose (fallback to
~/.config/XCompose) before trying $HOME/.XCompose.
Note that libX11 still only searches in $HOME/.XCompose.
Contributed by Emmanuel Gil Peyrot <@linkmauve.fr>.
- Bump meson requirement to >= 0.49.0.
- Fix build with byacc.
- Fix building X11 tests on PE targets.
Contributed by Jon Turney <@dronecode.org.uk>
- The tests no longer rely on bash, only Python (which is already used by
meson).
- New API:
xkb_utf32_to_keysym
xkb_keymap_key_get_mods_for_level
XKB_KEY_XF86FullScreen
Files: