summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Le Marre <dev@wismill.eu>2024-02-03 16:51:48 +0100
committerPierre Le Marre <dev@wismill.eu>2024-02-03 18:12:56 +0100
commite9a98ce6a754e46ba9bbb6e02fbfb5b7117c09d3 (patch)
tree6aad35d83dd628e0bc98b410eda65193717c2bbc
parent1c8128d72df22843a2022576850bc5ab5e3a46ea (diff)
keysyms: Revert removals and postpone effective deprecation
Recent removals & deprecations of keysyms have caused quite a lot of trouble: - Removed keysyms *were* used in the wild, especially the dead keys: e.g. in Neo-like and Bépo-like layouts. While checking for keysyms use in xkeyboard-config database is a mandatory first step, it is not enough. - Removed keysyms broke Qt build. - Deprecated names are now replaced by their new non-deprecated version. It is problematic in the case that a sandbox application (e.g. with flatpak) uses X11 or xkbcommon libraries older than the system’s one: they are not able to parse the new names. For the sake of the stability, this commit restore all previous keysyms and introduces the new names as alternative. While the comments mark some names as “deprecated”, they will remain the canonical names (i.e. they are *output* by `xkbcomp` and `xkbcommon`) for the next 10 years. Details of the modified commits: - "keysymdef.h: add better names for the dead schwa and SCHWA symbols" (commit e5cccecd814dd2005b3c5e9d22e426ff985ef387) - "keysymdef.h: delete four symbolic names that serve no purpose" (commit cb44799b72f611eb4c9d7cc185bc3b09e070be08) - "keysymdef.h: name the masculine ordinal indicator similar to feminine one" (commit 3ddfc9803676dd3b3ed909f8d9fbe1a699a5ce35) - "keysymdef.h: add correctly spelled names for the left and right guillemet" (commit 8cfcc91a3f86cbea5ba676715412880ff6a61b21)
-rw-r--r--include/X11/keysymdef.h16
1 files changed, 11 insertions, 5 deletions
diff --git a/include/X11/keysymdef.h b/include/X11/keysymdef.h
index eef28fc..29647fe 100644
--- a/include/X11/keysymdef.h
+++ b/include/X11/keysymdef.h
@@ -430,6 +430,12 @@ SOFTWARE.
#define XK_dead_belowcomma 0xfe6e
#define XK_dead_currency 0xfe6f
+/* extra dead elements for German T3 layout */
+#define XK_dead_lowline 0xfe90
+#define XK_dead_aboveverticalline 0xfe91
+#define XK_dead_belowverticalline 0xfe92
+#define XK_dead_longsolidusoverlay 0xfe93
+
/* dead vowels for universal syllable entry */
#define XK_dead_a 0xfe80
#define XK_dead_A 0xfe81
@@ -441,10 +447,10 @@ SOFTWARE.
#define XK_dead_O 0xfe87
#define XK_dead_u 0xfe88
#define XK_dead_U 0xfe89
+#define XK_dead_small_schwa 0xfe8a /* deprecated, use dead_schwa instead */
+#define XK_dead_capital_schwa 0xfe8b /* deprecated, use dead_SCHWA instead */
#define XK_dead_schwa 0xfe8a
#define XK_dead_SCHWA 0xfe8b
-#define XK_dead_small_schwa 0xfe8a /* deprecated, remove in 2025 */
-#define XK_dead_capital_schwa 0xfe8b /* deprecated, remove in 2025 */
#define XK_dead_greek 0xfe8c
#define XK_dead_hamza 0xfe8d
@@ -663,8 +669,8 @@ SOFTWARE.
#define XK_diaeresis 0x00a8 /* U+00A8 DIAERESIS */
#define XK_copyright 0x00a9 /* U+00A9 COPYRIGHT SIGN */
#define XK_ordfeminine 0x00aa /* U+00AA FEMININE ORDINAL INDICATOR */
+#define XK_guillemotleft 0x00ab /* deprecated misspelling. Use guillemetleft instead. */
#define XK_guillemetleft 0x00ab /* U+00AB LEFT-POINTING DOUBLE ANGLE QUOTATION MARK */
-#define XK_guillemotleft 0x00ab /* deprecated misspelling */
#define XK_notsign 0x00ac /* U+00AC NOT SIGN */
#define XK_hyphen 0x00ad /* U+00AD SOFT HYPHEN */
#define XK_registered 0x00ae /* U+00AE REGISTERED SIGN */
@@ -679,10 +685,10 @@ SOFTWARE.
#define XK_periodcentered 0x00b7 /* U+00B7 MIDDLE DOT */
#define XK_cedilla 0x00b8 /* U+00B8 CEDILLA */
#define XK_onesuperior 0x00b9 /* U+00B9 SUPERSCRIPT ONE */
+#define XK_masculine 0x00ba /* deprecated inconsistent name (see ordfeminine), use ordmasculine instead */
#define XK_ordmasculine 0x00ba /* U+00BA MASCULINE ORDINAL INDICATOR */
-#define XK_masculine 0x00ba /* deprecated inconsistent name */
+#define XK_guillemotright 0x00bb /* deprecated misspelling. Use guillemotright instead. */
#define XK_guillemetright 0x00bb /* U+00BB RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK */
-#define XK_guillemotright 0x00bb /* deprecated misspelling */
#define XK_onequarter 0x00bc /* U+00BC VULGAR FRACTION ONE QUARTER */
#define XK_onehalf 0x00bd /* U+00BD VULGAR FRACTION ONE HALF */
#define XK_threequarters 0x00be /* U+00BE VULGAR FRACTION THREE QUARTERS */