SCIM

SCIM（Smart Common Input Method）是一個支援多國語言的輸入法平台，虽然它的设计着眼于通用性，但是鉴于Windows之类的桌面OS有较完整的原生机制，所以SCIM更多还是用在UNIX／类UNIX环境中。它曾經作爲多數Linux發行版中文默認輸入法。

 簡介 
SCIM的目標是建造一个通用的输入法开发平台，用以简化输入法的开发和维护。它擁有極清晰的結構和容易使用但功能強大的操作介 面。并包括完整的 XFree86 窗口系统输入法应用程序

SCIM使用C++程式語言寫成，它將輸入平台的介面分為數個不同的等級，而這些等級是互相獨立並且容易使用的。因此，開發者可以很容易寫出新的輸入法，而且只須數行程式碼。

SCIM有著高度模組化的特徵，大部份組件皆可編譯為動態的可載入模組，所以可以如使用者所願隨時執行程式。舉例來說，為SCIM所寫的輸入方法為IMEngine模組，使用者可以使用這個模組配搭不同的前端程式，如SKIM來使用，這大大的方便了使用者。

SCIM對比XIM或IIIMF使用較高級的程式庫，所以擁有更容易使用的介面。而且可以與XIM或IIIMF並存。SCIM亦支援客製化的輸入法介面，如GTK+2介面模組及qt 介面模組。


 特點 
使用C++程式語言寫成，完全支援物件導向。
高度模組化。
可塑性極高的結構。
簡單的使用介面。
完全國際化及支援UCS-4／UTF-8編碼。
圖形使用者介面具有豐富的功能。
統一的設定架構。

 目標 
作為一個輸入法的前端介面，它正與uim作整合，並提供m17n程序庫。
同時使用IIIMF輸入法架構，因此亦可作為輸入法引擎。
提供儘可能多的原生IMEngine。
支持儘可能多的輸入法介面。
支持儘可能多的作業系統。

 配置方法 
SCIM本身基本不用配置，默认参数在绝大多数情况下能够正常工作。如需配置，可以使用四个配置模块中的任意一个完成——gconf, simple, socket 和 dummy， 默认使用simple。

如果X11客户端进程需要使用SCIM输入服务，就要配置这个进程的环境变量XMODIFIERS
export XMODIFIERS="@im=SCIM"

 命令行参数 
参数目的 -h,--help显示简单的帮助 -d,--daemon以后台进程形式运行 -l,--list列出所有可用的模块 -f,--frontend name运行指定的前端模块（缺省运行 x11 前端） -c,--config name使用指定的配置模块（缺省使用 simple 模块） -e,--engines name仅调入指定的输入法引擎模块（缺省调入所有输入法引擎模块），多个模块可以用逗号隔开 -ne,--no-engines name不调入指定的输入法引擎模块 --no-socket不启动独立的 Socket 前端进程。缺省情况下，SCIM 会首先启动一个独立的 Socket 前端守护进程来提供输入法服务，然后再启动实际的 SCIM 进程。如果已经指定使用 socket 前端，则该选项无效

 參閱 
iBus
Fcitx
 uim

參考資料
Multilanguage Blending SCIM Input Method System Based on Linux
CJKV Information Processing

 外部連結 

SCIM的主頁
SCIM在sourceforge.net的計劃介紹和下載頁
SCIM在freedesktop计划中的介绍网页

Category:SourceForge专案
Category:中文輸入法平台