This is the KMFL IMEngine for IBus (Intelligent Input Bus) framework.
It allows you to use layouts written in KMN keyboard language through
standard IBus interface, through KMFL compiler (textproc/kmflcomp) and
KMFL library (textproc/libkmfl).

KMFL aims to bring Tavultesoft Keyman functionality to *nix operating
systems. KMFL is being jointly developed by SIL International
(http://www.sil.org) and Tavultesoft (http://www.tavultesoft.com).

The powerful KMN keyboard language supports contextual deadkeys, pre-
and post-processing of keystrokes, rules grouping, 'storing' of
character classes for use in similar rules, custom and Unicode character
constants, SIL Ethnologue language codes, etc.

Official Tavultesoft repository contains keyboards that cover more
than 220 languages. Significant number of them are open source.
The keyboard ports are textproc/kmfl-*.

WWW: http://kmfl.sourceforge.net/