FUTO Keyboard (with Swipe and Offline Voice Input)

Rating: 
5
Your rating: None Average: 5 (13 votes)

FUTO Keyboard for Sailfish OS

A feature-rich native keyboard for Sailfish OS, based on FUTO Keyboard and designed to work across both native Sailfish applications and Android AppSupport.

This project brings the FUTO typing experience to Sailfish OS while adding many new features and integrations made specifically for the platform.

This is an independent community project and is not an official FUTO product.

Features

Smarter typing

  • Multilingual predictions for every included language with an available offline dictionary
  • Automatic per-word language detection
  • Spelling corrections and next-word predictions
  • Context-aware suggestions and compound-word support
  • Swipe typing with a smooth visual trail
  • Cursor control by holding and dragging the space bar
  • Fully offline voice input with live transcription and push-to-talk
  • Optional URL history and suggestions

Make the keyboard yours

  • The full set of directly typed FUTO language layouts
  • A separate layout can be selected for each language
  • Full-size, thumb, left-handed, and right-handed modes
  • Separate keyboard modes for portrait and landscape
  • Adjustable keyboard height
  • Optional number row and secondary symbols
  • Adjustable long-press timing
  • Customizable sounds, vibration, and key previews
  • Customizable Quick Settings menu

Emoji and symbols

  • Complete Emoji 17 collection
  • Emoji search using your enabled languages
  • Categories, favourites, recently used emoji, and skin tones
  • Twemoji, OpenMoji, and Noto Color Emoji styles
  • Large categorized symbol collection
  • Favourite symbols for quick access

Privacy and useful tools

  • Manual and automatic Incognito mode
  • Privacy Switch integration
  • Automatic protection while entering passwords
  • Encrypted learned words and URL history
  • Encrypted password manager protected by your device code or fingerprint
  • Password import and export, with optional AES-256 ZIP protection
  • Clipboard history with pinned entries and automatic cleanup
  • No account or online service required for typing, predictions, or voice input

Hardware keyboards

  • Automatic hardware-keyboard detection
  • Option to keep the virtual keyboard visible
  • Dead-key support for entering accented characters

Download

Choose the RPM that matches your device: `aarch64`, `armv7hl`, or `i486`.
The new Jolla Phone uses the `aarch64` package.

This release was made and tested on the new Jolla Phone running Sailfish OS 5.2.0.16.

Getting started

1. Download and install FUTO Keyboard.
2. Open Settings → Text input → Keyboards.
3. Enable FUTO.
4. Open Settings → Text input → FUTO Keyboard settings to choose your languages and customize the keyboard.

You can also open the settings directly from the keyboard by holding the 123 button and selecting Settings.

Downloadable content

Open FUTO Keyboard settings → Downloadable content to install the content you want:

  • Language dictionaries
  • Emoji artwork
  • Offline voice input

Content can also be removed again from the same menu.

Privacy

Typing, predictions, learned words, clipboard history, voice recognition, and saved passwords are handled locally on your phone.

Clipboard history, URL learning, and the password manager are optional. Incognito mode prevents the keyboard from learning or collecting clipboard content while it is active.

Saved passwords and protected learned data can be secured using the existing device code or fingerprint authentication.

Source and licensing

This project contains modified and newly developed components under their respective licenses.

The source code is available on GitHub.

This project contains modified and newly developed components under their respective licenses. Upstream sources and revisions are documented in UPSTREAM.md. Details of the modifications are available in MODIFIED-NOTICE.md, with additional license information in the LICENSES directory.

Ported to Sailfish OS with additional features by HtheB.

 

Screenshots: 
Application versions: 
AttachmentSizeDate
File futo-keyboard-sailfish-0.1.0-1.i486.rpm4.92 MB28/08/2026 - 05:17
File futo-keyboard-sailfish-0.1.0-1.armv7hl.rpm4.73 MB28/08/2026 - 05:17
File futo-keyboard-sailfish-0.1.0-1.aarch64.rpm4.83 MB28/08/2026 - 05:17
File futo-keyboard-sailfish-0.2.0-1.aarch64.rpm4.88 MB29/08/2026 - 01:13
File futo-keyboard-sailfish-0.2.0-1.armv7hl.rpm4.79 MB29/08/2026 - 01:13
File futo-keyboard-sailfish-0.2.0-1.i486.rpm4.97 MB29/08/2026 - 01:13
File futo-keyboard-sailfish-0.2.1-1.aarch64.rpm4.9 MB29/08/2026 - 04:54
File futo-keyboard-sailfish-0.2.1-1.armv7hl.rpm4.83 MB29/08/2026 - 04:54
File futo-keyboard-sailfish-0.2.1-1.i486.rpm5.02 MB29/08/2026 - 04:54
File futo-keyboard-sailfish-0.2.2-1.aarch64.rpm4.9 MB30/08/2026 - 23:29
File futo-keyboard-sailfish-0.2.2-1.armv7hl.rpm4.8 MB30/08/2026 - 23:29
File futo-keyboard-sailfish-0.2.2-1.i486.rpm4.99 MB30/08/2026 - 23:29
File futo-keyboard-sailfish-0.3.0-1.aarch64.rpm5.73 MB02/09/2026 - 04:43
File futo-keyboard-sailfish-0.3.0-1.armv7hl.rpm5.53 MB02/09/2026 - 04:43
File futo-keyboard-sailfish-0.3.0-1.i486.rpm6.08 MB02/09/2026 - 04:43
File futo-keyboard-sailfish-0.4.0-1.armv7hl.rpm6.3 MB09/09/2026 - 06:16
File futo-keyboard-sailfish-0.4.0-1.i486.rpm6.84 MB09/09/2026 - 06:16
File futo-keyboard-sailfish-0.4.0-1.aarch64.rpm6.49 MB09/09/2026 - 06:16
File futo-keyboard-sailfish-0.4.1-1.aarch64.rpm6.5 MB09/09/2026 - 06:16
File futo-keyboard-sailfish-0.4.1-1.armv7hl.rpm6.31 MB09/09/2026 - 06:16
File futo-keyboard-sailfish-0.4.1-1.i486.rpm6.85 MB09/09/2026 - 06:16
File futo-keyboard-sailfish-0.4.2-2.aarch64.rpm6.77 MB10/09/2026 - 00:53
File futo-keyboard-sailfish-0.4.2-2.armv7hl.rpm6.57 MB10/09/2026 - 00:53
File futo-keyboard-sailfish-0.4.2-2.i486.rpm7.12 MB10/09/2026 - 00:53
File futo-keyboard-sailfish-0.5.0-1.aarch64.rpm6.77 MB13/09/2026 - 13:09
File futo-keyboard-sailfish-0.5.0-1.armv7hl.rpm6.58 MB13/09/2026 - 13:09
File futo-keyboard-sailfish-0.5.0-1.i486.rpm7.12 MB13/09/2026 - 13:09
Changelog: 

v0.5.0:

New features
- Added an option to correct typos when pressing punctuation.
- Added adjustable number-row height.
- Added `QWERTY (Regional)` as a separate layout option that has no accent keys.
- Added a scrollbar to the keyboard layout picker.

Fixes
- The selected language is remembered after a reboot.
- Incognito no longer accidentally turns on in ordinary text fields.
- "Numbers across the top" on the 123 page works with all layouts.
- Catalan is labeled correctly.
- Long layout names scroll in Quick Settings instead of being cut off.
- Pressing Space now keeps short forms like “I’m” and “I’ve” instead of removing the apostrophe.

v0.4.2:

New features
- Added option for "Vibrate while swiping"
- Added "Uninstall FUTO Keyboard" to Maintenance
- Added option for holding the space bar to choose between doing nothing, moving the cursor, or switching languages

Fixes
- Tibetan letters are now visible, on the keyboard and in the rest of the system
- Danish keyboard uses the Danish letter order instead of the Norwegian one
- Norwegian keyboard is now a separate layout
- Portuguese keyboards carry `ç` instead of the Spanish `ñ`
- Dot key no longer draws a border around it
- Swiping can start after punctuation, not only after a space
- Much lower memory use for all languages

v0.4.1:

New features
- Numpad in the "123" page layout can now be placed left or right

Fixes
- "123" and "{&=" pages has a better layout
- Same accented letters whatever languages are enabled
- Symbols are showing now above the top row when the number row is on
- Dot key shows ",!?"
- Space added after a swiped word
- Smaller symbol picker tabs
- Swipe only works at the start of a new word to prevent false swipe detection (due to a bug in Sailfish OS)
- Haptic feedback is fixed
- Paste button now shows when predictions are off as well

v0.4.0:

New features
- Expanded language and layout support with additional FUTO layouts, their proper key order, and language-specific long-press characters.
- Added predictions and swipe typing for additional languages where an offline dictionary is available.
- Added native Sailfish font support for scripts such as Amazigh, Sinhala, Myanmar, and Khmer.
- Improved the Arabic and Persian layouts with appropriate punctuation, numerals, and alternative letters.
- Added the new Saudi Riyal symbol and improved the rendering of Arabic Rial and Jalla Jalaluhu symbols.
- Added an optional "Add space after punctuation" setting (this excludes web and email addresses).

Fixes
- Greatly reduced emoji-picker memory usage and improved scrolling performance, especially in long categories such as flags.
- Improved emoji search so unrelated results are no longer shown for searches such as "happy".
- Spacebar cursor control now works smoothly in both native Sailfish and Android applications.
- The optional number row now matches the letter-row height and no longer overlaps it.
- Swipe vibration now occurs only on the first touched letter.
- Swiped words receive a space only after accepting the suggestion or beginning the next swipe.
- Swipe typing stays disabled until the required FUTO Swipe content has been downloaded.
- Pressing Space now accepts the visibly highlighted correction instead of an unseen suggestion.
- System-default keyboard sounds now respect both Sailfish Touch sounds and Silent mode.
- The current system clipboard entry can be pasted into password fields without enabling clipboard history.
- Corrected duplicated and misplaced secondary symbols across keyboard layouts.

v0.3.0:

New features
- Added Arabic predictions and a Persian keyboard with predictions.
- Languages sharing the same layout can now remain separate and be switched manually.
- Keyboard sounds can now be set to Off, On or System default from Settings or Quick Settings.

Fixes
- Reworked swipe typing, with improved recognition and word ranking across supported languages.
- Improved contractions such as “I’m” and “can’t”, capitalization and short swiped words.
- Fixed the first swipe after switching languages not being recognized.
- Reduced memory usage when opening, scrolling and switching emoji categories.
- Fixed the suggestion strip jumping back while browsing predictions.
- Added the missing Polish ą and Ą characters.
- Improved double-space periods and removal of unwanted spaces before punctuation.
- The current clipboard can now be pasted into password fields without enabling clipboard history.
- Fixed incorrectly grouped symbols by reorganizing the symbol picker into clearer categories.

v0.2.2:

New features
- Added Hungarian predictions, available through Downloadable content. 
- When automatic language detection is disabled, the Switch language/layout action can now cycle through selected languages that use the same keyboard layout.

Fixes
- Fixed a startup problem that could prevent FUTO Keyboard from appearing on armv7hl and i486 devices.
- Cursor-control mode now correctly hides the keys on the number and symbol pages.

v0.2.1:

New features
- Added an optional Show keyboard action to the Sailfish OS Top Menu, allowing the keyboard to be opened in Android apps that normally do not show a keyboard.

Fixes
- Holding the language/layout button in Quick Settings now switches to another enabled Sailfish OS keyboard.
- Secondary characters no longer appear when briefly holding over a letter during swipe typing.

v0.2.0:

New features
- Added an Fn keyboard page with arrow keys, Esc, Tab, Ctrl, Alt, AltGr, the Sailfish key, F1–F12, Home, End, Page Up, Page Down, Insert, Delete and more.
- Added an optional and customizable extra-key row.
- Modifier keys can be used once for the next key or locked by tapping them twice.
- Added predictions for Greek, Russian, Serbian Cyrillic and Serbian Latin.
- Added Slovenian QWERTZ, Croatian and Serbian Latin QWERTZ, and Serbian Cyrillic layouts.
- Added a keyboard-sound toggle to Quick Settings.
- Holding the language/layout item in Quick Settings can now switch to another active Sailfish OS keyboard.

Improvements
- Spacebar cursor control can now move the cursor horizontally and vertically.
- A second finger can be held during cursor movement to select text.
- Quick Settings and extra keys can be reordered by holding and dragging.
- Added Restore defaults to the Quick Settings and extra-key organizers.
- Improved typing in terminal and console applications.
- Fixed predictions, swipe typing and FUTO Settings not working immediately after a new installation.
- Improved compatibility with Sailfish OS 5.1, including fixes for swipe typing, Quick Settings, missing symbol and emoji tabs, and blank emojis.

v0.1.0:
- Initial Release

 

Comments

HtheB's picture

Please try out version 0.2.2

windes's picture

Thanks, will test!
Tested. It becomes better, works, but with bugs.
Armv7hl, XA2.
Hmm, it seems that after some changes in setting of futo it need to wait about 30-40 seconds for restarting futo in background.. While user thinks that its bug and keyboard will never show.
Questions:
1. How to change languages in FUTO? Only by longtap on 123 and then in prediction line tapping a button of layout? It's too long! Please add button of switching languages exactly on keyboard, on right from space or left from space, as usual on all other keyboards. And if possible - switching languages with swiping on space right-left.
2. What does FUTO really mean for this keyboard?) Didn't find any info about decryption of this abbreviation.
3. Do we need to turn off all other keyboards after installing FUTO? - Seems that YES, better off them after installing futo.
Bugs:
1. CRITICAL problem with RAM when enetering to emoji section. If switching tabs of them and scrolling - maliit server goes to ~770 Mb and all other apps in background closed automatically.
2. Also theres a RAM leak when just going to futo settings, using keyboard.. 229 Mb of maliit server, even if i didnt open emoji.
3. Very bad prediction accuracy of swipes also, on english and russian. OKBoard is better predicting swipes. Case not in dictionary, seems something wrong in swipe mechanism. You must slooowwwly and accuuuurate swipe right on letters of your word for exact predict it. No even possibility to swipe fast words as in OKBoard, for example. Simplest test. Try to swipe "AS" on english keyboard. It prints "S", "Add", but no "As". On more hard words - more unpredictable results.
3. Number row keys are too large in vertical size, they not consist additional symbols, so can be shrinked at vertical size on x1.5 times approximately.
4. Prediction line can't swiping left on russian keyboard - it goes, but stops and return to first word. Impossible to see all 12 predictions - only first 4-5. On english - works often, but sometimes same not working too..
5. First swipe after changing language not works, only second on all languages.
6. Capital letter from swipe on russian not working. On english - works.
7. Bug on last word when send it to any app's chat (with pressing button of ui of app, not "enter" on keyboard) - last word disappear. If word have space or dot after it - works normally.
8. The rare-using sign ; is on russian keyboard 2 times, but most needful sign " is somewhere deep in 123, shift, tap, ABC ! Please place it on letter 'Т' instead of 2nd ; sign.
9. The sign ! is on russian keyboard 2 times, but also needful sign % is somewhere deep in 123, shift, tap, ABC ! Please place it on letter 'Э' instead of 2nd ! sign.
10. No letter 'Ё' in russian anywhere, please place it on additional symbol to 'E'.
11. Please delete a crowd of unnecessary symbols on english keyboard (that hiding until long tapping). They interfering to fast type 1 main additional symbol.

Pages