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.
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
Getting started
- Download and install FUTO Keyboard.
- Open Settings → Text input → Keyboards.
- Enable FUTO.
- 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.
Changelog
0.1.0
- Initial Release
0.2.0
New Features
- Added a new 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/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 compatibility in terminal and console applications.
- Fixed predictions, swipe typing, and FUTO Settings being unavailable after
a new installation until the keyboard service was restarted. - Fixed the language/layout Quick Settings item being hidden when another
Sailfish keyboard was enabled but FUTO itself used only one letter layout. - Improved compatibility with Sailfish OS 5.1, fixing swipe typing, Quick
Settings, missing symbol and emoji tabs, and blank emojis.
0.2.1
New Feature
- 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.
0.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.
0.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.
Download
The download is available via OpenRepos.net or the OpenRepos app Storeman
0.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.
0.4.1
New features
- Numpad in the
123page layout can now be placed left or right
Fixes
123and{&=pages has a better layout- Same accented letters whatever languages are enabled
Symbolsare 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
0.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
Download
The download is available via OpenRepos.net or the OpenRepos app Storeman
Download
Downloads are available at OpenRepos.net or the OpenRepos app Storeman
Choose the RPM that matches your device: aarch64, armv7hl, or i486.
The new Jolla Phone uses the aarch64 package.
This is an independent community project and is not an official FUTO product.
This release was made and tested on the new Jolla Phone running Sailfish OS 5.2.0.16.
Ported to Sailfish OS with additional features by HtheB.
