Skip to content

Commit

Permalink
keysyms: Update to Unicode 16.0
Browse files Browse the repository at this point in the history
  • Loading branch information
wismill committed Nov 29, 2024
1 parent cd465db commit 38b979e
Show file tree
Hide file tree
Showing 5 changed files with 395 additions and 368 deletions.
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
Updated keysyms case mappings to cover full **[Unicode 15.1]**. This change
Updated keysyms case mappings to cover full **[Unicode 16.0]**. This change
provides a *consistent behavior* with respect to case mappings, and affects
the following:

- `xkb_keysym_to_lower()` and `xkb_keysym_to_upper()` give different ouput
- `xkb_keysym_to_lower()` and `xkb_keysym_to_upper()` give different output
for keysyms not covered previously and handle *title*-cased keysyms.

Example of title-cased keysym: `0x10001f2` (`U+01F2` “Dz”):
Expand All @@ -17,4 +17,4 @@ For example, the full upper case of `U+01F0` “ǰ” is “J̌” (2 characters
and `U+030C`), which would require 2 keysyms, which is not supported by the
current API.

[Unicode 15.1]: https://www.unicode.org/versions/Unicode15.1.0/
[Unicode 16.0]: https://www.unicode.org/versions/Unicode16.0.0/
4 changes: 2 additions & 2 deletions include/xkbcommon/xkbcommon.h
Original file line number Diff line number Diff line change
Expand Up @@ -557,7 +557,7 @@ xkb_utf32_to_keysym(uint32_t ucs);
* work with the Unicode representation instead, when possible.
*
* @since 0.8.0: Initial implementation, based on `libX11`.
* @since 1.8.0: Use Unicode 15.1 mappings for complete Unicode coverage.
* @since 1.8.0: Use Unicode 16.0 mappings for complete Unicode coverage.
*/
xkb_keysym_t
xkb_keysym_to_upper(xkb_keysym_t ks);
Expand All @@ -573,7 +573,7 @@ xkb_keysym_to_upper(xkb_keysym_t ks);
* work with the Unicode representation instead, when possible.
*
* @since 0.8.0: Initial implementation, based on `libX11`.
* @since 1.8.0: Use Unicode 15.1 mappings for complete Unicode coverage.
* @since 1.8.0: Use Unicode 16.0 mappings for complete Unicode coverage.
*/
xkb_keysym_t
xkb_keysym_to_lower(xkb_keysym_t ks);
Expand Down
Loading

0 comments on commit 38b979e

Please sign in to comment.