Skip to content

給注音符號和部首加上像全角、半角標點符號那樣的註釋 #1139

@lumynou5

Description

@lumynou5

Is your feature request related to a problem? Please describe.
長久以來,Rime無法簡單地給候選詞添加註釋,除了在英語輸入法中加上單詞釋義這種比較神奇的用法之外,註釋能夠幫助使用者分辨形近字元,例如注音符號、部首等字元可能和漢字相似,就像標點符號的半角和全角註釋。

Describe the solution you'd like
希望在詞典檔中新增一個comment column,控制候選詞的註釋內容,如下所示,雖然形近字元是否有註釋依賴於方案作者,但允許更靈活的控制。

---
name: Example
version: '1.0.0'
sort: by_weight
use_preset_vocabulary: false
columns:
  - text
  - code
  - weight
  - comment
...

一	yi1	90%
ㄧ	yi1	10%	〔注音〕

Describe alternatives you've considered
或者,也可以如src/rime/gear/punctuator.cc那樣,將特定字元的註釋寫死在程式中,在解決了注音符號、部首這些漢語輸入法常見之形近字元難以分辨的困擾後,註釋的需求就比較低了,只是此方式不那麼靈活,不允許上面提到的英語輸入法中的用法。

(我本來打算這樣實作並提交PR來著,但接著就意識到自己對Rime的架構不夠瞭解,只知CreatePunctCandidate。)

Additional context
目前可以以一種hacky的方式達到類似效果:

# dict
# no comment

ㄧ	yi1#〔注音〕

可以使用任何不會用到的字元分隔真正的編碼和註釋,這裡選擇了井號。然後對方案進行以下修改:

patch:
  engine/filters/@next: reverse_lookup_filter@self_reverse_lookup

  # 刪除分隔符號和註釋,保留真正的編碼。
  speller/algebra/@before 0: 'xform|#.*$||'

  self_reverse_lookup:
    dictionary: <dict>
    comment_format:
      - 'xform|^[^#]+||'
      - 'xform|#||'

參見:#538rime/brise#94

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions