-
Notifications
You must be signed in to change notification settings - Fork 124
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ß should uppercase to ẞ #550
Comments
There is no such keysym yet, one need to use the corresponding Unicode keysym. Could you add the relevant direct links? The discussion thread seems quite long. If there is no consensus, I would stick to the official Unicode position. But if Unicode is leaning to this while not changing its mappings for now (policies, etc.), we can update the mapping. Note that we do not ship locale-specific mappings, so this should be a case mapping accepted by all German-speaking countries. |
AFAICT there is no consensus on exactly how to address the issue, though the most likely resolution is a change to CLDR (tracked at https://unicode-org.atlassian.net/browse/CLDR-17624). However, no matter how the issue ends up being resolved by Unicode, we should be making the change in xkbcommon either way. ẞ and SS are both allowable uppercase forms of ß; there is no language or dialect in which either form is considered incorrect. But the current behavior of xkbcommon is to uppercase ß to itself, and that is not correct in any language nor any part of Unicode. So no matter what, making ß uppercase to ẞ is a strict improvement. |
Thanks for the link to the issue.
From our doc:
The case mappings do come from Unicode 16.0 and there is currently no simple case mapping for ß, i.e. no one-to-one char mapping. So we return it unchanged as well. Let's see what Unicode conclude in the linked issue. There is a lot to process. |
To clarify: there are several case mappings defined by Unicode.
In terms of what behavior is useful for users: |
libxkbcommon is not a text-processing library. But I understand your point.
I am not going to tolerate disdainful tone nor patronizing. And I have not forgotten your trolling in |
So I read the CLDR issue to understand better the context. The ß ↔ ẞ case mapping is endorsed by the Council for German Orthography (Rat für deutsche Rechtschreibung) since 2017. As I understood this case mapping is valid for all German dialects; since only those use ß, it seems that we can introduce the new case mapping without making it locale-dependent.
|
FYI: |
The German letter ß (
XKB_KEY_ssharp
) never appears in the middle of words; therefore, it is only capitalized in all-caps contexts. Traditionally, there was no widely accepted capital form of the letter, so SS was used instead. However, such a form was recently introduced (ẞ,XKB_KEY_Ssharp
), and, as of this year, is now the primary recommended form (with SS still permitted as an alternative). Unicode’s stability guarantees mean that it cannot adopt the new mapping for its default casing rules. Butxkbcommon
should not be restricted by this, and should designate ß and ẞ as a case pair.(Related discussion thread on Unicode’s mailing list: https://corp.unicode.org/pipermail/unicode/2024-November/011162.html)
The text was updated successfully, but these errors were encountered: