Age | Commit message (Collapse) | Author |
|
Use “non-deprecated alias for…” instead of plain “alias for” to make
clear that an alias is endorsed and not deprecated.
|
|
|
|
|
|
|
|
|
|
|
|
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)
|
|
Mark some alias deprecated, as per keysymdef.h rules.
Notable changes:
- HP deprecated aliases.
- Ooblique, ooblique: deprecated in favor more explicit names.
- Arabic_farsi_yeh: deprecated, could induce in error with Arabic_yeh.
- Greek_LAMBDA, Greek_lambda: non deprecated aliases, as there seem to
be not common agreeement between standard and literature.
- Armenian_verjaket, Armenian_but, Armenian_yentamna, Armenian_amanak,
Armenian_shesht, Armenian_paruyk: deprecated in favor of the Unicode
name. Currently not used in xkeyboard-config.
|
|
- Normalize codepoint format to upper case.
- Fix Unicode standard names: use *corrected* names.
- Add missing Unicode mappings (see hereinafter).
Some special keysyms have Unicode mappings in both X11 and xkbcommon,
but they are not documented. As these mappings are not one-to-one, we
introduce the concepts of generic/specific compatible semantics:
- Generic keysyms such as as `Space` have a standard Unicode annotation;
- Specialized keysyms such as `KP_Space` have the same standard Unicode
annotation between angle brackets.
|
|
- Harmonize format by using lower case hexadecimal notation.
- Normalize keysym padding: use spaces instead of tabulations
with the same amount everywhere.
- Update generator to new format.
|
|
- `Greek_IOTAdiaeresis`: make clear that the keysym is deprecated
(due to a typo).
- `Thai_maihanakat_maitho`: there is a Unicode mapping to U+0E3E in
both libx11 and xkbcommon, but the code point is unassigned.
Document this mapping and deprecate the keysym.
|
|
The documentation on deprecated keysyms lacks precision for two cases,
which are fixed by this commit:
- Explicit aliases (comment: “alias for XXX”) are not deprecated.
- A keysym can be explicitly deprecated by starting its comment with
“deprecated”.
|
|
Keysyms names are case-sensitive, so rewrite `mode_switch` into
`Mode_switch` in the comment of `Mode_switch` aliases.
|
|
It is intended to be added to the ara(mac-phonetic) and my(phonetic) layouts on
the <BKSL> key. They are based on the following layouts listed in the CLDR:
- https://github.com/unicode-org/cldr/blob/main/keyboards/osx/ar-t-k0-osx-qwerty.xml
- https://github.com/unicode-org/cldr/blob/main/keyboards/osx/ms-t-k0-osx.xml
In CLDR, the dead keys are defined in the <transforms> section. Hamza “ء” is
used there in the first position, making it a dead key. Now, among the keys
that produce this character, E02 has transform="no" while D13 has not. So hamza
on D13 is a dead key but it is not on E02.
The compose sequences required for the mentioned layouts are intended to be
added to libX11. Specifically, dead_hamza with alef, waw and yeh to generate
hamzaonalef, hamzaonwaw, and hamzaonyeh, respectively. Additional sequences
might be added as necessary.
|
|
The new names (`dead_schwa` and `dead_SCHWA`) fit much better with
the `dead_a`, `dead_A` scheme for the other vowels, and also with
how other upper- and lowercase schwa symbols are named.
The old names are deprecated, and can be removed quite soon because
they are not used anywhere -- not in xkeyboard-config at least.
(The dead vowel symbols were introduced fifteen years ago in commit
935dd37be4, to support compose sequences for Amharic, but neither
libX11 nor xkeyboard-config were ever updated to make use of them.)
Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
|
|
Ten years ago, in commit 6d4acb0e3a, these four keysyms were added
to support new compose sequences that then could be typed with the
newish German T3 layout -- or at least, that was the intention.
The commit was in response to https://bugs.freedesktop.org/62189,
right before I retracted the patch after learning that there are no
precomposed characters that use those four symbols as diacritics.
The commit should have been reverted then, but... it lingered and
was forgotten. No layout in xkeyboard-config uses these symbols
(obviously, as they serve no purpose) and meanwhile the T3 layout
itself has become obsolete [1], so... it's time to clean up.
[1] https://de.wikipedia.org/wiki/DIN_2137#Neufassung_2018
"die Belegung T3 wird nicht mehr definiert, da die Erfahrung gezeigt
hat, dass eine solche Tastatur ohnehin nicht produziert wird"
Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
|
|
Turns out the server still used one of those, see [1] and removing those
breaks the build. Let's revert this for now and we can re-visit in a few
xserver releases time.
[1] https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1099
This reverts commit 3b2a6b10e6003151c35f1b80c9ba763b46069765.
|
|
They have been deprecated for more than twenty years,
and were either misspelled or too specifically named.
Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
|
|
The symbolic name for the feminine ordinal indicator is 'ordfeminine',
so the name for the masculine ordinal indicator should be 'ordmasculine'
instead of just 'masculine'. Deprecate this latter form.
Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
|
|
And deprecate the misspelled ones -- guillemots are seabirds [1],
guillemets are the sideways double chevrons [2].
[1] https://en.wikipedia.org/wiki/Guillemot
[2] https://en.wikipedia.org/wiki/Guillemet
This will allow to finally use properly spelt symbol names
in the layouts of xkeyboard-config.
Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
|
|
Fixes #20
|
|
|
|
As of version 7.7, the X protocol does not define a Unicode equivalent for
them. The U+27E8 and U+27E9 equivalents were introduced by 618956f1f ("The
big keysym cleanup, to bring implementation in line with the recent revision
of Appendix A of the protocol spec."), but as xterm Patch #226 explicitly
notes, U+2329 and U+232A should be used rather than U+27E8 and U+27E9. Gtk
also inherited this.
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
|
|
+ is interpreted when not escaped.
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
|
|
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
|
|
These are used in the vn layout.
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
|
|
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
|
Reported by: Keve Müller
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Performed with:
find include -name '*.h' | xargs perl -i -p -e 's{[ \t]+$}{}'
"git diff -w" shows no changes from this changeset.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
|
I kinda hate to do this, it was nice to have everything in one place.
However, the meson build wants to be able to wrap this module as a
dependency, and code that depends on these headers includes them in the
form:
#include <X11/Xfuncproto.h>
As a result, any include path meson can construct needs to point to the
root of a hierarchy that has the same path layout as an installed copy,
hence this change.
Signed-off-by: Adam Jackson <ajax@redhat.com>
|