Smart Common Input Method

From Wikipedia, the free encyclopedia

The SCIM logo
The SCIM logo

The Smart Common Input Method platform (SCIM) is an input method (IM) platform containing support for more than thirty languages (CJK and many European languages) for POSIX-style operating systems including Linux and BSD.

SCIM is a development platform to reduce development times of IM in software. It uses a clear architecture and provides a simple and powerful programming interface.

SCIM is a common IM platform written in the C++ language. It abstracts the input method interface into several classes and attempts to make the classes more simple and independent from each other. With the simpler and more independent interfaces, developers can write their own input methods in fewer lines of code.

SCIM is a modularized IM platform, and as such, components can be implemented as dynamically loadable modules, thus can be loaded during runtime at will. For example, input methods written for SCIM could be IMEngine modules, and users can use such IMEngine modules combined with different interface modules (FrontEnd) in different environments without rewrite or recompile of the IMEngine modules, reducing the compile time or development time of the project.

SCIM is a high level library, similar to XIM or IIIMF, however, SCIM claims to be simpler than either of those IM platforms. SCIM also claims that it can be used alongside XIM or IIIMF. SCIM can also be used to extend the input method interface of existing application toolkits, such as GTK+2 and Qt via IMmodules.

some of the input methods managed by SCIM
some of the input methods managed by SCIM

[edit] Goals

The main goals of the SCIM project include:

  • To act as an unified frontend for current available input method libraries. Bindings to uim and m17n [1] library are available (as of August 2007).
  • To act as a language engine of IIIMF (an input method framework).
  • To support as many input method protocols/interfaces as existing and in common use.
  • To support multiple operating systems. (Currently, only POSIX-style operating systems are available.)

[edit] See also

[edit] References