[B2G][Keyboard] German esset character "ß" is inconsistent and included in non-German keyboards.

RESOLVED FIXED

Status

Firefox OS
Gaia::Keyboard
RESOLVED FIXED
4 years ago
3 years ago

People

(Reporter: Harvey, Assigned: brianweet, Mentored)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: burirun1.3-2,[good first bug][lang=js] [externminationweek], URL)

Attachments

(2 attachments)

(Reporter)

Description

4 years ago
Description:
On a newly flashed phone, when user goes to type text into an app if the first keyboard button that they press and hold is "S" only 3 options show up. But if they then go press and hold "S" again the German esset "ß" is added to that list. This is inconsistent if "ß" is meant to be included in all of the different language's keyboards. 

Repro Steps:
1) Updated Buri to Build ID: 20140115004003
2) Reset the phone.
3) Open messenger.
4) Press the message line, then press and hold the "S" button.

Actual:
The esset "ß" is not included in the list until the second time the user presses and holds the "S" key

Expected:
The esset "ß" is either always available in every language's keyboard or is only included in the German Keyboard as it is the only language that uses the esset.

Environmental Variables
Device: Buri 1.3 Mozilla
Build ID: 20140115004003
Gecko: http://hg.mozilla.org/releases/mozilla-aurora/rev/d7260b206e91
Gaia: 14e199d6a9ad917eacad883820a9f7619dbf42c8
Platform Version: 28.0a2

Notes:
Repro frequency: 100%
Test Suite Name: Keyboard
See attached: http://www.youtube.com/watch?v=lH6FnzxlL2I
(Reporter)

Comment 1

4 years ago
This issue happens in both Buri 1.2 and Buri 1.1

Environmental Variables
Device: Buri 1.2 Com Ril
Build ID: 20140114004002
Gecko: http://hg.mozilla.org/releases/mozilla-b2g26_v1_2/rev/42a1c35fc831
Gaia: 539a25e1887b902b8b25038c547048e691bd97f6
Platform Version: 26.0
RIL Version: 01.01.00.019.281 


Environmental Variables
Device: Buri 1.1 Mozilla
Build ID: 20140115041456
Gecko: http://hg.mozilla.org/releases/mozilla-b2g18/rev/0a2e7ed17611
Gaia: 6ff3a607f873320d00cb036fa76117f6fadd010f
Platform Version: 18.1
(Reporter)

Comment 2

4 years ago
After further investigation I've found that the esset character is inconsistent as it is offered as a special character to capital "S" on the Spanish, and Portuguese keyboards. But only lowercase "s" on the English, French, and Polish keyboards. 

The esset "ß" should be consistently offered as a special character for capital "S" on all of the language's keyboards or only offered at all on the German keyboard as it is a German character.
Yeah it's funky. See f.e. the alts for s and S in en.js: https://github.com/mozilla-b2g/gaia/blob/master/keyboard/layouts/en.js#L14
Whiteboard: burirun1.3-2 → burirun1.3-2,[good first bug][mentor=rudyl][lang=js]

Comment 4

4 years ago
(In reply to jharvey from comment #2)
> [...] or only offered at all on the
> German keyboard as it is a German character.

This character was used in old Spanish language books, for the record. I don’t think it harms in other layouts.

Comment 5

4 years ago
Hello there!

Is it already good to take?
Hi Guilherme,

Yes sure, feel free to take this bug, you may look into gaia:keyboard/layouts/ for the layout definitions,
https://github.com/mozilla-b2g/gaia/tree/master/keyboard/layouts

If you're willing to work on this bug, I'll assign it to you.
Thanks.
Flags: needinfo?(guhels)
See Also: → bug 961183

Comment 7

4 years ago
Hey Rudy.

I'd really like to!

Any definition if "ß" should be consistently offered as a special character for capital "S" on all language's keyboards or on the German keyboard layout only?

Thanks.
Flags: needinfo?(guhels)
Hi Sebastian,

Could you help us to clarify how should we handle "ß" in German keyboard?

 1. Do we need to add "SS" or "LATIN CAPITAL LETTER SHARP S (U+1E9E)" as the capitalized "ß"?
    See Bug 961183 comment 1.

 2. I am not sure if you could help to clarify if we could remove "ß" from all other languages beside Spanish, as comment 4 mentioned, but if you could, that would be great.

Thanks.
Flags: needinfo?(archaeopteryx)
>  1. Do we need to add "SS" or "LATIN CAPITAL LETTER SHARP S (U+1E9E)" as the
> capitalized "ß"?
>     See Bug 961183 comment 1.
No, you neither need to add "SS" nor the "LATIN CAPITAL LETTER SHARP S (U+1E9E)"
For capital letters, using "S" twice is the official rule, see §25 E3 in
http://rechtschreibrat.ids-mannheim.de/download/regeln2006.pdf (German)
Android 4.1.2 (have no more recent version) also doesn't offer any of these characters in uppercase mode with German keyboard active.

>  2. I am not sure if you could help to clarify if we could remove "ß" from
> all other languages beside Spanish, as comment 4 mentioned, but if you
> could, that would be great.
To my knowledge, the "ß" is exclusive to the German language, so it can be removed from the others.
Sources:
German wikipedia: https://de.wikipedia.org/wiki/Eszett
Spanish wikipedia also mentions usage only in German: https://es.wikipedia.org/wiki/%C3%9F
Flags: needinfo?(archaeopteryx)
Created attachment 8363512 [details]
Alternative char menu for "S" on German keyboard

Hi  :aryx,

Sorry that did not make it clear at the first comment.
What I mean is if we need to include "SS" in the alternative char menu, just as Android stock keyboard does.
Please refer to the screenshot for an example.
Flags: needinfo?(archaeopteryx)
No, you don't need to include the SS. People simply type the "S" twice (which is also the official rule).
Flags: needinfo?(archaeopteryx)

Comment 12

4 years ago
@“Archaeopteryx” I don’t get why are you opposed to fill the current hole and add the proper uppercase forms of a letter. Both SS and ẞ are valid, and if a user wants to use them, why should the system limit them? This is beyond official rulings and Wikipedia’s limited coverage — this is about letting a user choose. And we shouldn’t settle on Android’s limitations on typography.

Comment 13

4 years ago
(In reply to Archaeopteryx [:aryx] from comment #9)
> >  1. Do we need to add "SS" or "LATIN CAPITAL LETTER SHARP S (U+1E9E)" as the
> > capitalized "ß"?
> >     See Bug 961183 comment 1.
> No, you neither need to add "SS" nor the "LATIN CAPITAL LETTER SHARP S
> (U+1E9E)"
> For capital letters, using "S" twice is the official rule, see §25 E3 in
> http://rechtschreibrat.ids-mannheim.de/download/regeln2006.pdf (German)
> Android 4.1.2 (have no more recent version) also doesn't offer any of these
> characters in uppercase mode with German keyboard active.

I agree.

> >  2. I am not sure if you could help to clarify if we could remove "ß" from
> > all other languages beside Spanish, as comment 4 mentioned, but if you
> > could, that would be great.
> To my knowledge, the "ß" is exclusive to the German language, so it can be
> removed from the others.
> Sources:
> German wikipedia: https://de.wikipedia.org/wiki/Eszett
> Spanish wikipedia also mentions usage only in German:
> https://es.wikipedia.org/wiki/%C3%9F

I don't agree here because you should not need to change keyboards to write words in a different language. For example, I'm using en-US keyboards on all my touch screens, but surely am and want to be able to write German words containing an 'ß'.

Updated

4 years ago
Whiteboard: burirun1.3-2,[good first bug][mentor=rudyl][lang=js] → burirun1.3-2,[good first bug][mentor=rudyl][lang=js] [externminationweek]

Comment 14

4 years ago
Hi

Good to take?
Hi jpj, there is no consent here, but rudyl has the final word and hopefully will reply soon. The current state doesn't seem to follow strict rules, e.g. https://en.wikipedia.org/wiki/%C5%81 can be found in the English but not the German keyboard or https://en.wikipedia.org/wiki/%C4%8C and https://en.wikipedia.org/wiki/%C3%87 in the German keyboard despite not being part of the German alphabet. In my humble opinion, let Europeans write European characters (especially names) without switching the keyboard if the letters of the keyboard in use are Latin and the characters to type are also Latin.

Comment 16

4 years ago
aryx, 

why not including making it like, german alphabets "must be" present in german keyboard and let the extra alphabets be branded 'extra or funky or whatever' character. The point is, the alphabets of the particular language must be present in the particular language's keyboard.

Comment 17

4 years ago
Android lets me type the "ß" character from the US "Google keyboard" (default keyboard on Nexus 10, the "Hacker's Keyboard" I usually use has even more options) by long-typing, just as a point of reference. They also add the pretty useless "SS" character when capitalization is on, but we shouldn't do that as the rules say to use two "S" characters, see comment #9.

So, let's please always include "ß" on the long-tap list for "s" on Latin keyboards.
(FWIW, I would be pretty pissed if I'd need to decide between using my preferred en-US phone settings or write proper German-language SMS - I'd rather continue to be able to do both.)

Comment 18

4 years ago
kairo,

> So, let's please always include "ß" on the long-tap list for "s" on Latin
> keyboards.

But the issue here is, it only appears on double-tap and not long-tap. Should we move on fixing it?

Comment 19

4 years ago
(In reply to Jaipradeesh [:jpj] from comment #18)
> kairo,
> 
> > So, let's please always include "ß" on the long-tap list for "s" on Latin
> > keyboards.
> 
> But the issue here is, it only appears on double-tap and not long-tap.
> Should we move on fixing it?

I personally think it should be fixed to always be present on long-tap in lowercase mode.
Mentor: rlu@mozilla.com
Whiteboard: burirun1.3-2,[good first bug][mentor=rudyl][lang=js] [externminationweek] → burirun1.3-2,[good first bug][lang=js] [externminationweek]

Comment 20

3 years ago
Rudy - I read that you have the final say on this issue, as per above. What are the next steps here?
Flags: needinfo?(rlu)
My recommendation is to add the esset "ß" to all Latin based keyboards under the long press menu for both upper and lower case S.  It's quite common for users to want to type special characters from other languages without switching keyboards.  For "SS", let's just cover it by letting user key it in twice.  This allows us more space in the alt key layout so we can cover more of these special characters from different languages.
Flags: needinfo?(rlu)
(In reply to Bruce Huang [:bhuang] <bhuang@mozilla.com> from comment #21)
> My recommendation is to add the esset "ß" to all Latin based keyboards under
> the long press menu for both upper and lower case S.  It's quite common for
> users to want to type special characters from other languages without
> switching keyboards.  For "SS", let's just cover it by letting user key it
> in twice.  This allows us more space in the alt key layout so we can cover
> more of these special characters from different languages.

We should REALLY get one line here now. Because in https://bugzilla.mozilla.org/show_bug.cgi?id=940041#c22 UX decided *against* adding diacritic alternatives to layouts that don't have it in their language.
Flags: needinfo?(bhuang)
Flags: needinfo?(ofeng)
Hi Jan, actually my main point in https://bugzilla.mozilla.org/show_bug.cgi?id=940041#c22 is to create a new layout for Esperanto, not against adding alternatives.

For this bug, my suggestion is:

[English layout]
Since it's the default language, it should keep "ß" as an alternative of lowercase "s", not uppercase "S". (According to http://en.wikipedia.org/wiki/%C3%9F , it never occurs initially, and traditional German printing in blackletter never used all-caps.)

[Other layouts]
For the languages with "ß" as alternative, keep only the lowercase one and remove the uppercase one. (like Español and Português)

["SS"]
Tapping "S" twice is faster and easier than long-pressing it. No need to add this alternative.
Flags: needinfo?(ofeng)

Comment 24

3 years ago
Hi! I would like to take this bug.
Redirecting to Brian; new hire in our team, I'll mentor him.
Assignee: nobody → brianweeteling
Mentor: rlu@mozilla.com → janjongboom@gmail.com
Flags: needinfo?(bhuang)
(Assignee)

Comment 26

3 years ago
Created attachment 8530882 [details] [review]
patch

Changed 6 layout files, removed esset from uppercase alternative list. Found some inconsistency in turkish layout file, 'tr-F.js'. Couldn't come up with a good solution for that so the esset is still in the alternative list for the lowercase i.
Attachment #8530882 - Flags: review?(rlu)
Comment on attachment 8530882 [details] [review]
patch

Looks great.
Thanks.
Attachment #8530882 - Flags: review?(rlu) → review+
Try is green
Landed https://github.com/mozilla-b2g/gaia/commit/a9688b356be2e66bfad0541a6ff4f0d3c90e97e0
Status: NEW → RESOLVED
Last Resolved: 3 years ago
Resolution: --- → FIXED
Brian, thanks for your patch! One nit for the next one: add the reviewer info in the commit message, like that:
 Bug 960259 - German keyboard improvement r=rlu
You need to log in before you can comment on or make changes to this bug.