Better autocorrection for umlauts

If you wish something new in Smart Keyboard, here is the place to ask!
Post Reply
robert-qfh
Posts: 2
Joined: Sun Feb 21, 2010 6:59 pm
Phone: Nexus One / Android 2.1

Better autocorrection for umlauts

Post by robert-qfh »

Hi there,

just bought your keyboard app. Very nice so far, especially the ability to quick-switch the language. However, I'd like to see one (probably easy to implement) feature. It's always a hassle to write umlauts (e.g. ä), so I'd like to skip that and just write the letter without them (in this case a). So your application could query the dictionary not only for the word entered, but for all permutations with a, o, u and single occurrences of s replaced by ä, ö, ü and ß, respectively.

For instance, I'd like to write the word "läßt" as "last", and the algorithm would generate those words:
last, läst, laßt, läßt
The last word should hit a dictionary entry and be the first on the list of suggestions.

To cut down on the number of generated permutations, you could apply some restrictions depending on the language. I think an umlaut is never preceded by a vowel, so no need to generate "haär" for the word "haar" ("häar" would be possible but doesn't exist in that case). With ß it's a bit different, it's probably best to generate ß for both "ss" and "s": "Straße" can also be written as "Strasse", but I'd expect it to propose "Straße" when I write "Strase".
User avatar
cyril
Developer
Posts: 2079
Joined: Tue Feb 02, 2010 4:02 pm
Phone: Nexus One 2.3
Location: Nice, France

Re: Better autocorrection for umlauts

Post by cyril »

Hi
thanks, that's a fast feedback about the german dictionary, I just added today ! ;)
Actually what you propose should already work, for example "läßt" is suggested when you type "last", and "Straße" when you type "strase"
The problem comes from the word list itself, which may not contain the words you expect (it has only 3000 words). Do you have other examples ?
Cyril
robert-qfh
Posts: 2
Joined: Sun Feb 21, 2010 6:59 pm
Phone: Nexus One / Android 2.1

Re: Better autocorrection for umlauts

Post by robert-qfh »

Wow, I just learned about Smart Keyboard today because Cyanogen mentioned it on twitter. You owe him a beer I guess ;)

How could I overlook something that obvious :) Of course, it's working with words that are on the word list. So I guess what I really want is either a huge word list with contemporary German, a self-learning word list (e.g. fix it once/twice and it's added to the list), or at least the umlaut permutations in the list of suggestions. Don't know if the last one actually works out, because there might be many useless permutations. The self-learning dictionary, however, would probably be a good solution.

BTW, the word that motivated me to write that post is "Süße" (Sweetie). Now that I added it to the word list, it is the first suggestion. Another twist to the problem are words that are actually a combination of two words. We have a lot of that in German, "Hausmeister" is "Haus" and "Meister", both words are in the dictionary, but the prediction stops as soon as the "m" is encountered, because "Hausmeister" is unknown...
User avatar
cyril
Developer
Posts: 2079
Joined: Tue Feb 02, 2010 4:02 pm
Phone: Nexus One 2.3
Location: Nice, France

Re: Better autocorrection for umlauts

Post by cyril »

Wow, I just learned about Smart Keyboard today because Cyanogen mentioned it on twitter.
Haha, good to know ;)

Actually the self-learning dic already exists too ;) But I currently use the same implementation as the stock keyboaard, and it learns quite slowly (I guess it's on purpose)
The problem is that user defined words are added with the same (very high) priority in the dictionary, which can frequently cause wrong suggestions. Anyway I think I will implement a smarter dictionary some day, let's see later ;)
Cyril
Post Reply