English US Keyboard layout with presage based text prediction

Your rating: None Average: 4.9 (7 votes)

English US Keyboard layout with presage based text prediction

This keyboard layout utilizes an open-source text prediction solution (not the Xt9 engine shipped by the Jolla). It allows you to use it on community supported language pack or if you have a ported device, in addition to the official ones.


The predicted words are generated by the presage library. The presage predictions coming from various plugins:

  • ngram: this plugin uses a database generated from text corpuses. Basically it tries to match your typed word with sentence fragments in the database and offers the words from those segments.
  • user-ngram: this plugin works the same manner as the ngram, but it's database is expanded continously as you type.
  • hunspell: it tries to spellcheck the currently typed word with hunspell and if it found to be mistyped it will suggest the correct version as well

Further info:



If you have used this package previously:


Please read and follow the deprecation instructions from the old package description!

Application versions: 
File keyboard-presage-en_us-0.2.0-1.noarch.rpm3.83 KB19/03/2018 - 00:19



jeanpierreaubry's picture


how do i proceed to remove some unwanted (mistyped by myself) word from the data base (or dictionnary, i do not know)

wher are these data base and dictionnary files ?

are they written in a human readable format


jean pierre aubry

rinigus's picture

When shown wrong word as prediction, hold it for some time and it will be deleted. That's the easiest way to do it.

jeanpierreaubry's picture

elementary my dear Watson!

thanks a lot rinigus

i need this work around as i write in french but using the presage english keyboard

as ther is not yet a french keyboard with presage included

any chance to get one  any day?

rinigus's picture

It's up to french speaking users to make such database. Please look into docs on github projects - its not that hard. ..

dalas_revo's picture

As i am also interested in a German version, I did a little research (without knowing anything about linguistics) and found that this corpus seems to be downloadable and usable under a Creative Commons license. I don't know if it is in a format which could be of help.

rinigus's picture

Please open an issue regarding support for German at https://github.com/sailfish-keyboard/presage . Add there a link as well and we can look into it. Please suggest specific zip. I can see there are several options, I presume we are not interested in very old texts.

matzgewinn's picture


I would like to continue contributing to german language support. I've already created a githup-account and opened an issue regarding this. Unfortunately I am not a developer, just a simple sailfish-user with a tiny linux experience. ...

First of all, I will try to get a text corpus - in which format must this be?

best regards and thank you for your grat work!

naalaa's picture

Hallo Rinigus, i installed this package on my Xperia xa2 plus with the license free sailfish x.

What must i do if i want to use the presage in german language?

rinigus's picture

I urge you to generate it. For that we need some German texts that have been cleaned (remove profanity, for example). With the German texts available, all the rest is rather simple and I'll be happy to assist you.

Now the size of the text used to train predictions is of the order of 150MB (English) to 1900MB (Estonian). So, you would have to look for some language corpus (that's a term used by corresponding community) and get one.

Generation instructions are at https://github.com/sailfish-keyboard/presage#generation-of-n-gram-databa... , but don't worry about them yet. I will be happy to help with it.

Please try to find such corpus. It could be smaller as well, but the larger it is the better predictions are expected. I was expecting more interest with open-source text prediction, but so far only the core team behind it has done dictionaries and actively searched for corpus. None of us is German => no dictionary so far.

naalaa's picture

OK, that means we need a list of the most common german words. In wich format we need this?

In form of a list or comma separated? In alphabetical order?

rinigus's picture

No, its not a list, but text: https://en.wikipedia.org/wiki/Text_corpus

So, collection of long texts that will be parsed by our scripts/programs.

naalaa's picture

So, I am in contact with some People to get a German Textkorpus. If I have some acceptable results I will send you a message.

rinigus's picture

Great! Please let us know. Would be great if you could use https://talk.maemo.org/showthread.php?p=1551260 for communication - the messaging over here is not that visible to others

rinigus's picture

It may still have old keyboard in use. When you type, does spacebar show en_US? This would be if you have predictive keyboard active, otherwise it will show jus EN.

matridium's picture

Ok so I installed storeman, what package should I installed. I tried to install this one. English US Keyboard layout with presage based text prediction said its installed, and I checked under this device. I followed your suggestion to reboot, I went to terminal and rebooted from their. after boot, I went to settings and both the presage and Eng keyboards were selected. I deselected each one a re-selected the presage keyboard... the keyboard works fine, but no text prediction at all. I'm missing something I think?

Reset the phone, started with a clean slate, followed your steps, and worked perfect, must have been something I did previously, that was stuck in the system and the reset cleared it out.
Thanks for dealing with me!

matridium's picture

I have installed Sailfish X on my Xperia X compact, however I have tried over and over to install the presage keyboard with not luck, I'm very new to this kind of thing, One thing that confuses me is their are no clear cut, (at least to me) way to install, I have tried to use terminal to install packages but nothing changes after installation.
Any help would be great, this keyboard is one of the only things that is holding me back from using sailfish as my preferred OS.

rinigus's picture

You have to install this package via Storeman. This should pull all dependencies automatically. When installed, I would suggest to reboot and then select presage keyboard in Settings of the phone, under text input / keyboard

Markkyboy's picture

5* from me, excellent work soldier!......I have Jolla1, so no need for this ultimately, but I had to see it in action, I cannot tell the difference between this and the default xt9, amazing!....I'll use this as the default keyboard for now :)

rinigus's picture

Thanks, we enjoy this keyboard as well!