Introduction to the Roadmap

Update: see the latest version of the roadmap

In this blog post, I have written up our roadmap for Keyman for the next couple of years. This roadmap depends very much on the resources available to our team, and it will change over time. It is not a promise to deliver by a date, but rather our best estimate as to where we want to take the project.

I welcome comments and suggestions on our plans. Many of the dot points here deserve more detail, and as we start work on these, we’ll aim to make the working documents available for design feedback as well.

We’ll aim to update this roadmap periodically – perhaps quarterly – as we adapt to the ever changing software environment and priorities shift accordingly.

Get Involved

As Keyman is open source, we also encourage you to consider becoming involved. There are many ways you can be involved:

The Roadmap

10.0 Stable – 30 Jun 2018

  • Full open source, stable
  • Solidify BCP 47 code install on Windows
  • Other bugs to be selected.

11.0 – Jul 2018 – Dec 2018

  • Bring KMFL into project
    • Target Ubuntu LTS; possible Debian
  • Refactor Keyman Engine on Windows core (“Keyman Core”)
    • Use in KMFL
    • Use in KM4Mac
    • Use in Debugger / Command Line Tests
  • Bug fixes, compatibility and stability
    • Windows – Interop with Metro
    • Windows – User vs elevated for install / uninstall
    • Web – Look at touch layout multitap performance; tweak usability
  • Look and feel refresh, all platforms
  • Remove adhoc .json style keyboard install
  • Complete iOS and Android code refactoring
  • Complete cross-platform consistency evaluation
  • Keyman Developer code editor -> remove encumbered code
  • Keyman Developer -> use Chromium? embedded web engine instead of IE
    • Replace web host form
    • Use (existing) internal web server instead of XSL for Project, Help, etc.
  • Groundwork for predictive text – design, data collection

12.0 – Jan 2019 – Jul 2019

  • Predictive Text
    • Dictionary support
    • Learning
    • Corrections
    • Word / phrase completion
    • Which platforms?
  • Keyman Desktop – use Chromium embedded web engine instead of IE
    • Replace web host form
    • Use internal web server instead of XSL
  • Complete Typescript refactoring for KeymanWeb
  • Converters
    • LDML to KMN converter
    • InKey to KMN converter
    • KMN to MSKLC, XKB, macos, etc.
  • Touch support on Windows

13.0 – Aug 2019 – Dec 2019

  • Optimised input tools: Minority language keyboards as first class citizens
    • Swipe-style input?
    • Swipes for longpress shortcuts
    • Other input tools?
    • Double-tap caps lock, etc
    • Longpress on Windows / Mac?
  • Consolidate Keyman Engine support across platforms
    • Streamline UI customisation
  • Consistent APIs? Keyman Developer web edition
    • LDML editor
    • Rewrite of existing tooling
    • Desktop host for debug and test
  • Native engine on iOS / Android
    • Uses portable Keyman Core from 11.0
  • Native LDML engine


5 thoughts on “Keyman Roadmap”

Jolene · May 10, 2018 at 12:18 pm

This looks great! Very promising… You’ve already a number of the features I’ve been wishing for and planning to request on this list (swipe-style enhanced features for touch entry; and language tools such as dictionaries/spell check and predictive text suggestions two major ones).
I have also been longing to see ways to import keyboards from other platforms & formats, particularly the OS native formats—which I also saw on the list (although Mac was strangely missing?)!
My main request is less specific: basically, make it easier to develop keyboards with some of the more complex features. Ideally involving some kind of GUI, but some renovation of the native description language could also go a long way.

I only wish I had more knowledge and skills to be able to offer this project!

Bol bol · June 29, 2018 at 8:32 pm

I am Not sure yet, may be in the long run, the newly release may be working well. but I am still struggle to learn much about it.

Rimas · October 14, 2018 at 7:43 am

I want to suggest to slightly adjust the “converters” goal for 12.0: since MSKLC is pretty much abandonware at this stage, I don’t think there is much use in having a KMN to MSKLC converter. How about a converter into what MSKLC produces instead (or in addition to it)? That is, a way to export your keyboard layout into an installable native keyboard layout driver package for Windows? That would be awesome!

    Marc Durdin · October 16, 2018 at 11:03 pm

    Thank you for your suggestion. It would be nice to implement, but it’s a whole order of magnitude more complicated; the MSKLC format is a simple XML format that we can easily target. Reproducing MSKLC’s compiler phase to create installable .msi files is a large amount of work so it’s not going to happen with our current resource budget. The value of the work is also somewhat limited given that many Keyman keyboards cannot be converted to MSKLC / Windows keyboard DLL format with full fidelity due to the limitations of the Windows keyboard format.

    But we take note of the abandonware status of MSKLC and so may deprioritise the export work — but not the import work. 🙂

Keyman Roadmap – October 2018 – Keyman Blog · October 4, 2018 at 9:25 pm

[…] May 2018 […]

Leave a Reply to Jolene Cancel reply

Your email address will not be published. Required fields are marked *

Related Posts

Developing Keyman

Keyman Roadmap – October 2018

Introduction to the Roadmap This blog post contains the October 2018 update to our roadmap for Keyman. This roadmap depends very much on the resources available to our team, and it will change over time. Read more…

Developing Keyman

Announcing the release of Keyman 10

Announcing the release of Keyman 10 We are excited to announce that Keyman 10 is now ready for download! This release of Keyman is especially significant: Keyman is now open source Keyman is 100% free Read more…

Developing Keyman

Keyman is now free and open source

SIL International is very pleased to announce that Keyman is now completely free and open source! Today, 23 August 2017, we released free versions of the existing Keyman products on the Keyman website, and have Read more…