SCIM: Difference between revisions

From OLPC
Jump to navigation Jump to search
(New page)
 
No edit summary
 
(32 intermediate revisions by 6 users not shown)
Line 5: Line 5:
==Supported Writing Systems==
==Supported Writing Systems==


supports the following IMEs on Linux and other forms of Unix. Although IMEs are not essential for entering text in most alphabets, they add capabilities that cannot be provided on simple one-character-per-key layouts. Among other benefits, this makes it possible to enter accented letters that have no Unicode code points, where it is necessary to provide a sequence of Unicode code points to an application in order to represent a single letter. Accented letters are encoded in Unicode only if they were in some previous standard.
SCIM supports the following IMEs on Linux and other forms of Unix. Although IMEs are not essential for entering text in most alphabets, they add capabilities that cannot be provided on simple one-character-per-key layouts. Among other benefits, this makes it possible to enter accented letters that have no Unicode code points, where it is necessary to provide a sequence of Unicode code points to an application in order to represent a single letter. Accented letters are encoded in Unicode only if they were in some previous standard.


===English/European===
===English/European===
Line 44: Line 44:
SCIM includes six other Cyrillic layouts for Russian, and others for Serbian.
SCIM includes six other Cyrillic layouts for Russian, and others for Serbian.


===Alphabets and Languages of [[India]]===
===Alphabets and Languages of [[OLPC India| India]]===


Inscript and other keyboard layouts for nine writing systems of India, used for hundreds of languages.
Inscript and other keyboard layouts for nine writing systems of India, used for hundreds of languages.
Line 79: Line 79:
Two IMEs provided.
Two IMEs provided.


===Cambodian===


Two IMEs provided.


===Laotian===
===Laotian===
Line 190: Line 188:
* CNS11643
* CNS11643
* Cangjie
* Cangjie
1 2 3 4 5 6 7 8 9 0
手 田 水 口 廿 卜 山 戈 人 心
日 尸 木 火 土 竹 十 大 中 片
重 難 金 女 月 弓 一 , . /

* Cangjie 3
* Cangjie 3
* Cangjie 5
* Cangjie 5
Line 202: Line 205:
* Stroke 5
* Stroke 5
* ZhuYin
* ZhuYin
ㄅ ㄉ ˇ ˋ ㄓ ˊ ˙ ㄚ ㄞ ㄢ ㄦ =
* ZhuYin Big
ㄆ ㄊ ㄍ ㄐ ㄔ ㄗ ㄧ ㄛ ㄟ ㄣ [
ㄇ ㄋ ㄎ ㄑ ㄕ ㄘ ㄨ ㄜ ㄠ ㄤ ;
ㄈ ㄌ ㄏ ㄒ ㄖ ㄙ ㄩ ㄝ ㄡ ㄥ


* ZhuYin Big
==Installation and Activation==
On Debian Linux, use apt-get, aptitude, or Synaptic to install the scim package along with im-switch (required for Chinese, Japanese, and Korean) and scim-gtk2-immodule. You can also install skim, the KDE graphical frontend, which puts an icon on the toolbar. On systems using Red Hat packages, install the corresponding software using yum. Follow the [http://www.scim-im.org/wiki/documentation/installation_and_configuration/all/system_configuration configuration instructions] to set the necessary environment variables. Then run


==SCIM on the XO==
scim -d


In some builds, XO software includes SCIM. Open a Write session, then right-click in the text area to get a menu that includes SCIM IMEs. More recently, as is the case with G1G1 XO's, you have to install SCIM manually.
from the command line.


SCIM takes about 16MB of space, of which 10.5MB is taken by perl and perl-libs. The IME's occupy additional space. SCIM-anthy, for instance, is about 6.9MB.
In X, open a supported application such as OpenOffice Write or Firefox/Iceweasel. Click the keyboard icon in the system tray to get the main IME menu. This is separate from the KDE Keyboard Tool flag menu for selecting X keyboard layouts, and from other such tools used in other desktop environments.


You will also need to install [[fonts]].
==SCIM on the XO==

In some builds, XO software includes SCIM. Open a Write session, then right-click in the text area to get a menu that includes SCIM IMEs. More recently, you have to install SCIM manually.


===Installing SCIM===
===Installing SCIM===


SCIM is in the Fedora 7 repository on which XO is based; it is not necessary to further configure yum to recognize another repository.
# Add a repository that includes SCIM.
# As root, type


As root in a terminal, simply type:
yum install scim


yum install scim scim-gtk
# Add scim to an appropriate startup script.


Alternatively, one can grab a customized RPM to fit on OLPC. The dependency of im-chooser is removed as unusable for OLPC. This will greatly save the disk space needed for dependent packages. The post-install script also modifies .xsession file automatically.

wget http://hep1.phys.ntu.edu.tw/~john/olpc/scim-1.4.7-23.olpc.i386.rpm
wget http://hep1.phys.ntu.edu.tw/~john/olpc/scim-libs-1.4.7-23.olpc.i386.rpm
wget http://hep1.phys.ntu.edu.tw/~john/olpc/scim-gtk-1.4.7-23.olpc.i386.rpm
sudo rpm -ihv scim-*.rpm

The source RPM is also available here:
http://hep1.phys.ntu.edu.tw/~john/olpc/scim-1.4.7-23.olpc.src.rpm


===Installing SCIM IMEs===
===Installing SCIM IMEs===


Similarly for the desired IME packages. For example, as root in a Terminal activity type:
Please help.
yum install scim-anthy

* Japanese
scim-anthy
scim-canna
scim-skk
scim-prime
scim-tables-ja

* Chinese
scim-chewing
scim-pinyin
scim-tables-zh

* Korean
scim-hangul
scim-tables-ko

*Hebrew
scim
scim-gtk
scim-m17n
scim-tables
m17n-db-hebrew.noarch

* Other
scim-m17n
scim-tables
scim-tables-additional
scim-tables-amharic
scim-tables-arabic
scim-tables-nepali
scim-tables-russian
scim-tables-thai
scim-tables-vietnamese

===Activation===

The configuration scripts in the SCIM package do not work on XO. One can copy ~olpc/.xsession-example to ~olpc/.xsession and put the following line into it. SCIM will then be activated during Sugar start-up. (~olpc/.xinitrc is obsoleted for system image beyond Build 650.)

export XMODIFIERS=@im=SCIM
export GTK_IM_MODULE=scim
export USE_XOPENIM=t
scim -d

Since there's no system tray in Sugar, SCIM can be invoked by pressing the Ctrl+Space hot-key. The SCIM bar will appear at the bottom right of the screen. Different keyboard layouts can be chosen from the SCIM bar. One can also switch between different IM's from the context menu by right-clicking in the text area.

If using the alternative packages built for OLPC, the modifications on .xsession are not needed.

[[Image:Web_scim_zh.png|600px|SCIM in action]]


==External Links==
==External Links==


* [http://www.redhat.com/docs/manuals/enterprise/RHEL-5-manual/en-US/Internationalization_Guide/Red_Hat_Enterprise_Linux_International_Language_Support_Guide-Smart_Common_Input_Method.html Red Hat documentation for SCIM]
* [http://www.redhat.com/docs/manuals/enterprise/RHEL-5-manual/en-US/Internationalization_Guide/Red_Hat_Enterprise_Linux_International_Language_Support_Guide-Smart_Common_Input_Method.html Red Hat documentation for SCIM]
* [http://hanxo.ep.io/ Korean on XO] in Korean
* [http://hep1.phys.ntu.edu.tw/~john/olpc/olpc_in_chinese.html Chinese on XO] in English
* [http://hep1.phys.ntu.edu.tw/~john/olpc/olpc_in_chinese.html Chinese on XO] in English
* [http://www.tamichan.com/weblog/2007/12/how-to-use-japanese-on-olpc-xo-1.html Japanese on XO] in Japanese
* [http://www.tamichan.com/weblog/2007/12/how-to-use-japanese-on-olpc-xo-1.html Japanese on XO] in Japanese
* [http://www.h4.dion.ne.jp/~apricots/scim-anthy/howto.html SCIM-anthy: getting started]
*[http://www.cjmember.com/ Official Cangjie Home Page]
*[http://www.cjmember.com/cj_book.htm Cangjie Method] book in English
*[http://freedesktop.org/wiki/Software/ScimIntroduction SCIM] at Freedesktop
*[http://lists.freedesktop.org/archives/scim/2004-October/001024.html How to create an IME in scim]
* [[GCIN]]

Latest revision as of 12:43, 16 June 2011

This article is a stub. You can help the OLPC project by expanding it.

The SCIM platform (Smart Common Input Method) provides methods for entering writing systems that are too complex for the usual Unix keyboard handling mechanisms.

Supported Writing Systems

SCIM supports the following IMEs on Linux and other forms of Unix. Although IMEs are not essential for entering text in most alphabets, they add capabilities that cannot be provided on simple one-character-per-key layouts. Among other benefits, this makes it possible to enter accented letters that have no Unicode code points, where it is necessary to provide a sequence of Unicode code points to an application in order to represent a single letter. Accented letters are encoded in Unicode only if they were in some previous standard.

English/European

Adds combining characters to any ASCII keyboard layout, including Dvorak. IMEs are provided for English, Croatian, Slovak, Sampa, and Swedish.

Arabic

Includes Arabic, M17N-ar-kbd, UIM-m17n-ar-kbd keyboard layouts for Egyptian Arabic.

Ethiopic/Amharic

Amharic and other languages of Ethiopia are written in a syllabary with too many symbols to fit on a simple keyboard. However, it can be typed in an IME. One types a base syllable, then a vowel, to get the syllable with the consonant from the base syllable plus the specified vowel.

This is the basic keyboard layout.

` 1 2 3 4 5 6 7 8 9 0 [ ]
   ቅ ው እ ር ት ይ ኡ ኢ ኦ ፕ [ ] \
    አ ስ ድ ፍ ግ ህ ጅ ክ ል ፤   
     ዝ ሽ ች ቭ ብ ን ም ፣ . /

The syllable and vowel letters combine as in the following example.

For   Type
ታ     ት አ
ቶ     ት ኦ
ተ     ት እ
ቱ     ት ኡ
ቲ     ት ኢ

Cyrillic

This is called a phonetic layout, where the letter on most keys is the closest Cyrillic letter in sound to the Latin letter on the same key in QWERTY. But it is not simply a keyboard layout. Letters not on the keyboard can be typed as combinations. For example, the sequence 'ыо' results in 'ё', and similarly 'ыу' results in 'ю'.

` 1 2 3 4 5 6 7 8 9 0 [ ]
   я в е р т ы у и о п [ ] \
    а с д ф г х й к л ; 
     з х ц в б н м , . 

SCIM includes six other Cyrillic layouts for Russian, and others for Serbian.

Alphabets and Languages of India

Inscript and other keyboard layouts for nine writing systems of India, used for hundreds of languages.

Nepali

Written in Devanagari. Traditional and Romanized input is supported.

Greek

Two IMEs provided.

Iranian

aka Persian or Farsi. Two IMEs provided.

Tibetan

Two IMEs provided.

Hebrew

Two IMEs provided.


Laotian

Four IMEs provided.

Thai

Four IMEs provided.

Inuktitut

Again, a base keyboard layout with combining rules.

` 1 2 3 4 5 6 7 8 9 0 - =
   ᖅ  w e ᕐ ᑦ ᔾ ᐅ ᐃ ᐅ ᑉ [ ] \
    ᐊ ᔅ d ᕝ ᒡ ᔅ ᔾ ᒃ ᓪ ; 
     z x ᒡ ᕝ b ᓐ ᒻ , . /

Example: ᔾ ᐅ results in ᔪ.

IPA

Keyboard layout with combining rules.

` 1 2 ʒ 4 5 6 7 8 9 0 - =
   q w e r t y u i o p [ ] \
    a s d f g h j k l ; '
     z x c v b n m , . /

Note that the character 'ʒ' on the 3 key is not a 3, but U+0292 LATIN SMALL LETTER EZH.

Example: 'sh' results in 'ʃ'.

Vietnamese

` 1 2 3 4 5 6 7 8 9 0 - =
   q w e r t y u i o p [ ] 
    a s d f g h j k l ; 
     z x c v b n m , . /

Examples:

  • 'dd' results in 'đ'
  • 'DD' results in 'Đ'

Vowel plus character(s) at left results in accented vowel.

  • ' áéíóúý
  • ` àèìòùỳ
  • ^ âêô
  • ^? ẩổ
  • ^' ấếố
  • ^` ầềồ
  • ? ảẻỉỏủỷ

Japanese

  • Hiragana (romaji-hiragana conversion)

Typing a consonant key produces the syllable with that consonant plus a. Typing a consonant followed by a different vowel in most cases produces the syllable with the consant-vowel combination indicated. Some syllables are spelled in other ways, in an attempt to simplify things for the English-speaking user.

` 1 2 3 4 5 6 7 8 9 0 [ ]
    q わ え ら た や う い お ぱ [ ] 、
     あ さ だ ふ が は じ か l  ;  ' 
      ざ x  ち v  ば ん ん ,  。  /

Examples: kkikukeko produces かきくけこ; tctsteto produces たちつてと

  • Katakana (romaji-katakana conversion)
` 1 2 3 4 5 6 7 8 9 0 ー=
   q ワ エ ラ タ ヤ ウ イ オ パ [ ] 、
    ア サ ダ フ ガ ハ ジ カ l  ;  '
     ザ x チ v バ ン ン , 。 /

Example: kkikukeko produces カキクケコ; tctsteto produces タチツテト

  • Nippon (romaji-kanji conversion)

Type a syllable in romaji. A menu appears, offering characters to be chosen by number. It is essential to know the readings expected by the software, such as naka1kawa1 to get the name read Nakagawa 中川. This IME does not recognizes the modifications to readings that occur when characters are combined.

Example: ni1hon1 produces 日本.

Korean

  • 2bul
  • 3bul (five variants)
  • Hangul
  • Hangul Romaja
  • Hanja
  • M17N (two variants)
  • UIM (six variants)

and many others

Simplified Chinese

  • Cangjie (two variants)
  • Erbi
  • Erbi-QS
  • Pinyin (many variants)
  • Quick (two variants)
  • Wubi
  • Ziranma

Traditional Chinese

  • Wu
  • Array30
  • CNS11643
  • Cangjie
1 2 3 4 5 6 7 8 9 0
手 田 水 口 廿 卜 山 戈 人 心 
 日 尸 木 火 土 竹 十 大 中 片
  重 難 金 女 月 弓 一 ,  . /
  • Cangjie 3
  • Cangjie 5
  • Canton HK
  • Cantonese Pinyin
  • Chewing
  • Dayi3
  • EasyBig
  • Jyutping
  • Quick
  • Simplex
  • Stroke 5
  • ZhuYin
ㄅ ㄉ ˇ ˋ ㄓ ˊ ˙ ㄚ ㄞ ㄢ ㄦ =
 ㄆ ㄊ ㄍ ㄐ ㄔ ㄗ ㄧ ㄛ ㄟ ㄣ [
  ㄇ ㄋ ㄎ ㄑ ㄕ ㄘ ㄨ ㄜ ㄠ ㄤ ;
   ㄈ ㄌ ㄏ ㄒ ㄖ ㄙ ㄩ ㄝ ㄡ ㄥ
  • ZhuYin Big

SCIM on the XO

In some builds, XO software includes SCIM. Open a Write session, then right-click in the text area to get a menu that includes SCIM IMEs. More recently, as is the case with G1G1 XO's, you have to install SCIM manually.

SCIM takes about 16MB of space, of which 10.5MB is taken by perl and perl-libs. The IME's occupy additional space. SCIM-anthy, for instance, is about 6.9MB.

You will also need to install fonts.

Installing SCIM

SCIM is in the Fedora 7 repository on which XO is based; it is not necessary to further configure yum to recognize another repository.

As root in a terminal, simply type:

yum install scim scim-gtk

Alternatively, one can grab a customized RPM to fit on OLPC. The dependency of im-chooser is removed as unusable for OLPC. This will greatly save the disk space needed for dependent packages. The post-install script also modifies .xsession file automatically.

wget http://hep1.phys.ntu.edu.tw/~john/olpc/scim-1.4.7-23.olpc.i386.rpm
wget http://hep1.phys.ntu.edu.tw/~john/olpc/scim-libs-1.4.7-23.olpc.i386.rpm
wget http://hep1.phys.ntu.edu.tw/~john/olpc/scim-gtk-1.4.7-23.olpc.i386.rpm
sudo rpm -ihv scim-*.rpm

The source RPM is also available here: http://hep1.phys.ntu.edu.tw/~john/olpc/scim-1.4.7-23.olpc.src.rpm

Installing SCIM IMEs

Similarly for the desired IME packages. For example, as root in a Terminal activity type:

yum install scim-anthy
  • Japanese
scim-anthy
scim-canna
scim-skk
scim-prime
scim-tables-ja
  • Chinese
scim-chewing
scim-pinyin
scim-tables-zh
  • Korean
scim-hangul
scim-tables-ko
  • Hebrew
scim
scim-gtk
scim-m17n
scim-tables
m17n-db-hebrew.noarch
  • Other
scim-m17n
scim-tables
scim-tables-additional  
scim-tables-amharic
scim-tables-arabic
scim-tables-nepali
scim-tables-russian
scim-tables-thai
scim-tables-vietnamese

Activation

The configuration scripts in the SCIM package do not work on XO. One can copy ~olpc/.xsession-example to ~olpc/.xsession and put the following line into it. SCIM will then be activated during Sugar start-up. (~olpc/.xinitrc is obsoleted for system image beyond Build 650.)

export XMODIFIERS=@im=SCIM
export GTK_IM_MODULE=scim
export USE_XOPENIM=t
scim -d

Since there's no system tray in Sugar, SCIM can be invoked by pressing the Ctrl+Space hot-key. The SCIM bar will appear at the bottom right of the screen. Different keyboard layouts can be chosen from the SCIM bar. One can also switch between different IM's from the context menu by right-clicking in the text area.

If using the alternative packages built for OLPC, the modifications on .xsession are not needed.

SCIM in action

External Links