./x11/libxkbcommon, Library to handle keyboard descriptions

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 1.7.0nb5, Package name: libxkbcommon-1.7.0nb5, Maintainer: ryoon

xkbcommon is a library to handle keyboard descriptions, including
loading them from disk, parsing them and handling their state. It's
mainly meant for client toolkits, window systems, and other system
applications; currently that includes Wayland, kmscon, GTK+, Qt,
Clutter, and more.


Required to run:
[x11/libxcb] [lang/python37]

Required to build:
[devel/xorg-util-macros] [x11/xkeyboard-config] [x11/xcb-proto] [pkgtools/cwrappers] [x11/xorgproto] [devel/meson]

Master sites:

Filesize: 521.789 KB

Version history: (Expand)


CVS history: (Expand)


   2024-11-14 23:22:33 by Thomas Klausner | Files touched by this commit (2429)
Log message:
*: recursive bump for icu 76 shlib major version bump
   2024-11-01 13:55:19 by Thomas Klausner | Files touched by this commit (2426)
Log message:
*: revbump for icu downgrade
   2024-11-01 01:54:33 by Thomas Klausner | Files touched by this commit (2427)
Log message:
*: recursive bump for icu 76.1 shlib bump
   2024-07-20 08:20:24 by Thomas Klausner | Files touched by this commit (2)
Log message:
ilibxkbcommon: fix PLIST for doc option

From Robert Whitlock in PR 58449.
   2024-05-29 18:35:19 by Adam Ciarcinski | Files touched by this commit (1929) | Package updated
Log message:
revbump after icu and protobuf updates
   2024-05-20 12:01:48 by Thomas Klausner | Files touched by this commit (1)
Log message:
libxkbcommon: fix dead keys support with native X

Tested by pin@

Bump PKGREVISION.
   2024-04-06 10:07:18 by Thomas Klausner | Files touched by this commit (1490)
Log message:
* recursive bump for libxkbcommon 1.7.0

Marc Baudoin reported problems with using old binary packages
with the new libkxbcommon, so force everything to 1.7.0
   2024-04-05 12:36:19 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
libxkbcommon: update to 1.7.0.

libxkbcommon 1.7.0 - 2024-03-24
==================

API
---

### New

- Added early detection of invalid encodings and BOM for keymaps, rules & \ 
Compose.
  Also added a hint that the expected encoding must be UTF-8 compatible.

### Fixes

- Updated keysyms using latest [xorgproto] (commit: \ 
`cd33097fc779f280925c6d6bbfbd5150f93ca5bc`):

  For the sake of compatibility, this reintroduces some deleted keysyms and
  postpones the effective deprecation of others, that landed in xkbcommon 1.6.0.

  - Additions (reverted removal):

    - `XKB_KEY_dead_lowline`
    - `XKB_KEY_dead_aboveverticalline`
    - `XKB_KEY_dead_belowverticalline`
    - `XKB_KEY_dead_longsolidusoverlay`

  - The following keysyms names remain deprecated, but are set again (i.e. as
    before xkbcommon 1.6.0) as the reference names for their respective keysyms,
    in order to ensure the transition to the newer names that replace them. This
    affects functions such as `xkb_keymap_key_get_name` and \ 
`xkb_keymap_get_as_string`.

    - `XKB_KEY_masculine`: is deprecated in favor of `XKB_KEY_ordmasculine`
    - `XKB_KEY_guillemotleft`: is deprecated in favor of `XKB_KEY_guillemetleft`
    - `XKB_KEY_guillemotright`: is deprecated in favor of `XKB_KEY_guillemetright`
    - `XKB_KEY_dead_small_schwa`: is deprecated in favor of `XKB_KEY_dead_schwa`
    - `XKB_KEY_dead_capital_schwa`: is deprecated in favor of `XKB_KEY_dead_SCHWA`

  Relevant upstream merge requests: [xorgproto-83], [xorgproto-84].

[xorgproto-83]: \ 
https://gitlab.freedesktop.org/xorg/proto/xorgproto/-/merge_requests/83
[xorgproto-84]: \ 
https://gitlab.freedesktop.org/xorg/proto/xorgproto/-/merge_requests/84

- Keysyms: Fixed inconsistent results in `xkb_keysym_from_name` when used with
  the flag `XKB_KEYSYM_CASE_INSENSITIVE`. In some rare cases it would return a
  keysym with an upper-case name instead of the expected lower-case (e.g.
  `XKB_KEY_dead_A` instead of `XKB_KEY_dead_a`).

- Keysyms: Fixed case mapping for 3 Latin 1 keysyms:

  - `XKB_KEY_ydiaeresis`
  - `XKB_KEY_mu`
  - `XKB_KEY_ssharp`

- Keysyms: Fixed `xkb_keysym_is_modifier` to detect also the following keysyms:

  - `XKB_KEY_ISO_Level5_Shift`
  - `XKB_KEY_ISO_Level5_Latch`
  - `XKB_KEY_ISO_Level5_Lock`

- Prevent recursive includes of keymap components.

- Fixed global default statements `x.y = z;` in wrong scope not raising an error.

  Contributed by Mikhail Gusarov

- Rules: Made newline required after `!include` line.

  Contributed by Mikhail Gusarov.

- Rules: Fixed a bug where variant indexes were ignored with the layout index
  used instead. They are practically always the same, but don't have to be.

  Contributed by @wysiwys.

- Compose: Fixed a segfault with `xkb_compose_table_iterator_next` when used on an
  empty table.

  Contributed by Yuichiro Hanada.

- Compose: Added check to ensure to open only regular files, not e.g. directories.

- Registry: Updated the DTD and always parse the “popularity” attribute.

- Fixed a few memory leaks and keymap symbols parsing.

Tools
-----

### New

- `xkbcli compile-compose`: added new CLI utility to test Compose files.
- `xkbcli interactive-evdev`: added `--verbose` option.
- `xkbcli interactive-x11`: added support for Compose.
- `xkbcli interactive-wayland`: added support for Compose.

### Fixes

- Bash completion: Fixed completion in some corner cases.

Build system
------------

- Fix building with clang when using `-Wl,--gc-sections`.

  Contributed by ppw0.

- Fixed linking using `lld 1.17`.

  Contributed by Baptiste Daroussin.

- Fix building X11 tests on macOS.

- Documentation is no longer built by default; it requires `-Denable-docs=true`.