Definite's Extractor

My findings on Life, Linux, Open Source, and so on.

Tag Archives: zhuyin

Re: ㄜ與ㄝ都對應到漢語拼音 e 的問題

兩年前我曾寫過注音和漢語拼音轉換上的問題,並引用了 注音符號轉漢語拼音、兩個多年前的心願 。該作者收到了我的 ping back,並做如是(ㄜ與ㄝ都對應到漢語拼音 e 的問題)回應。

內容大致上是說我不該太相信 pinyin.cin 及 bpmf.cin 的內容,以及因為在所謂「正規」的 Mandarin 系統中,ㄜ跟ㄝ是互斥的,而且這是由眾多傑出學者設計的,絕對不會錯。

那些傑出學者有沒有錯那是一回事, 不過呢,這位老兄/姊倒是錯了:

  1. 我的資料是基於 Unihan 及教育部辭典的,照他的邏輯來說,那也應當不會錯。:-)
  2. “而且ㄝ一定跟隨著ㄧ”, 後面馬上自行推翻: “因為用注音符號寫成的ㄝ這個音素只可能出現在ㄩㄝ跟ㄧㄝ的場合。”
  3. 他所推崇的學者們可是有用ê這個符號來代表ㄝ耶,只是大家都懶的打上面的\hat罷了。
  4. “那可能是對中文輸入法的資料可靠性有很大的誤會”:上游編字典的資料就長這樣,那我們搞輸入法最多只能一是一,二是二了。

此外,我在以前那篇文章還提到 “攣(ㄌㄩㄢˊ)鸞(ㄌㄨㄢˊ) are all map to luán” ,這事怎麼不提?

Usefullness of Keyboard layout in input method.

My previous post elaborates the difficulties and reasons why most of the input methods developers won’t adopt to the xkb key layout framework. To sum up, if your input method needs and relies on exactly one layout (usually en-QWERTY), you can safely hug that layout if ibus is capable of setting that layout for you. That’s why I keep nagging Hutterer about the set/get function of xkb.

However, Peter Hutterer opened my eyes and leaded me to a new aspect to review the input method implementation. Using key layout terminology, Chinese input methods can have up to 6 levels:

  1. Input symbol level: Word roots or Pinyin/Zhuyin symbols.
  2. Lower case full width alphanumber and punctuation marks .
  3. Upper case full width alphanumber and symbols.
  4. English lower case alphanumber. (if IM support temporary English mode)
  5. English upper case alphanumber. (if IM support temporary English mode)
  6. Special/User-defined symbols.

We might also have a quasi-level: Selection key level. Although “1234567890” are widely used to select candidates, some people, however, find “asdfghjkl;” more effective. Doesn’t that deserves a quasi-level? 😛

Althogh libchewing does implement Zhuyin layout conversion and support full width alphanumber input. Using key layout representation has it own benefits:

  • Better screen keyboard support.
  • Better setting ui: so users can bind their own level triggers to every level.

So, thank you, Peter Hutterer!