SwiftKey needs support for agglutinative languages - does not understand compound words, case endings and other suffixes
SwiftKey not functional for agglutinative languages - does not understand compound words, case endings and other suffixes
Please add support for compound words, case endings and other suffixes.
Swiftkey is fantastic and works great when typing in English. But is not at all that good with agglutinative languages which use case endings instead of prepositions. Thus, SwiftKey needs different logic to improve its handling of compound words and endings. This is particularly important with Finnish, Estonian and Hungarian languages.
Typing in English is fast and comfortable, but typing in Finnish kinda works at times, but it is lousy to deal with the case- and other endings. For instance, if I want to type "ajanvaraukseltakaan" (meaning: "even from the appointment"), typing it becomes very difficult.
When I try to swipe it, it starts suggesting "ajan", then "ajanvaraus", then "ajanvarauksella" - as if they all were different words. But actually they are not. The root word is "ajan" (time) + "varaus" (booking), making a compound word "ajanvaraus". Once completed, this will have to get the correct case ending for elative case "-lta" (meaning: from the), plus the enclictic particle "-kaan" (even).
Now, the SwiftKey has no clue at all about finnish cases and other agglutinative language features. It deals with all endings and compound words as if they were different dictionary words, and adds all of them separately to the dictionary, which in end becomes massive. And it does not help at all, when one has to type a long compound word with complex endings, and SwiftKey keeps suggesting something completely different - without realizing, that I am typing a compound word, that should be split into segments, and where I want to add case endings in the end.
Some recent examples:
"päivärinnankadullako" (päivä+rinnan+katu + -lla + -ko)
"suunnitelmissani" (suunnitelma +i +ssa +ni)
"hapanmaitotuotteitako" (hapan+maito+tuote + -ita + -ko)
"kauranäkkileivällehän" (kaura+näkki+leipä + -lle + -hän)
My suggestion is, that for these languages, SwiftKey should have compound word recognition: It should detect that the person has completed a word, and continues typing without hitting the space, and is likely to form a compound word. Instead of not suggesting anything and getting blank as currently it does (and forces the user to type each letter of the very long compound word), it should detect the new word and suggest the right completion.
In these strongly compounding languages, the grammar rules determine how compound words are formed. In finnish, there is indefinite number of compound words, and practically every term becomes a compound word, and the compound words are formed from normal dictionary words. Thus: "control valve" -> "säätöventtiili" (säätö+venttiili); "electricity consumption meter" -> "sähkökulutusmittari" (sähkö+kulutus+mittari). Plus, the case endings are added in the end.
"Agglutinative languages tend to create very long words with derivational morphemes. Compounds may or may not require the use of derivational morphemes also. The longest compounds in the world may be found in the Finnic and Germanic languages. [...] German examples include Farbfernsehgerät (color television set), Funkfernbedienung (radio remote control), and the jocular word Donaudampfschifffahrtsgesellschaftskapitänsmütze (Danube steamboat shipping company Captain's hat).
In Finnish there is no theoretical limit to the length of compound words, but in practice words consisting of more than three components are rare. Even those can look mysterious to non-Finnish, take hätäuloskäytävä (emergency exit) as an example."