Skip to content

Rime 入門需知

onion edited this page Feb 12, 2023 · 23 revisions

概觀

  • Rime 為跨平臺輸入法框架,為以下統稱:

    Windows Mac Linux Android iOS
    小狼毫( weasel ) 鼠鬚管( squirrel ) 中州韻( ibus-rime ) 同文輸入法( trime ) iRime 輸入法

    Linux 上還有 fcitx-rime 和 fcitx5-rime 。特定軟體專用 emacs-rime。

  • 以上為 Rime 各平臺[前端介面],或稱「殼」,非核心!但其中是有包裹核心。

    Rime[核心]稱「 librime 」,各平臺都是此名稱!

    「 librime-lua 」為「 librime 」其中一個[外掛套件],補充功能和操作。

    [前端介面]、[核心]、[外掛套件]各有不同新舊版本,可自行組合封裝。

    網上封裝好的 Rime 程式,即使是最新版,此三個組件不一定都是最新。

  • 「方案」為各種拼音、注音、倉頡……輸入法的字典檔、設定檔等文件集合。

    把「方案」用的所有文件置入「用戶設定」資料夾,名稱為「 Rime 」或「 rime 」,「重新部署」後,程式會依組件實現輸入法各種功能。

    雖 Rime 「方案」文件在各平臺通用,但封裝的[前端介面]、[核心]、[外掛套件]版本新舊不同,可能不相容。如:某「方案」設定寫法在 A 平臺正常,B 平臺卻無效。需注意組件版本號!

    「 installation.yaml 」可檢視[前端介面][核心]版本。

  • 修改、新增、刪除「方案」文件後,皆須「重新部署」才能作用。

    「重新部署」會在「用戶設定( Rime )」底下「 build 」建立:

    • 「 .table.bin 」:固態詞典。
    • 「 .prism.bin 」:拼寫算法,以利快速運作。
    • 「 .reverse.bin 」:供反查。
    • 「 .schema.yaml 」為彙整另存的方案設定檔。如後來修改的 schema 發生錯誤,會引用其設定。
  • 避免修改「用戶設定( Rime )」底下「 build 」内的任一文件!去實現想要的功能,網上有文章教人在此作修改 XD

    排查錯誤時,可刪除「 build 」内的文件,「重新部署」,避免先前設定檔影響。

  • 各平臺「方案」置入路徑,或稱「用戶設定」資料夾:

    %APPDATA%\Rime  ( Windows 小狼毫 )
    ~/Library/Rime  ( Mac OS 鼠鬚管 )
    ~/.config/ibus/rime  ( Linux 中州韻 )
    ~/.config/fcitx/rime  ( Linux )
    ~/.local/share/fcitx5/rime ( Linux )
    

方案文件

  • 路徑下,「 default.custom.yaml 」該檔為〔新增〕或〔關閉〕方案處!初始不存在或有文件但內容空白,需自行建立。

  • 承上,以下為洋蔥純注音方案範例:

    patch:
      schema_list:
        - schema: bopomo_onion
        - schema: cangjie5
    
    #「 bopomo_onion 」為純注音主方案,「 cangjie5 」為掛接反查方案。
    # 掛接方案只是相對稱呼,也可直接當主方案。
    # 主方案、掛接方案,置入後第一次「重新部屬」皆需開通,功能才正常完整。
  • 檔名末尾「 .schema.yaml 」為「方案」設定檔。

  • 檔名末尾「 .dict.yaml 」為字典(詞庫)檔。

  • 單純的「 .yaml 」,如:punctuation.yaml,可供不同設定檔引用其內的程式碼。

    特定名稱除外,如:Mac 系統預設介面外觀設定檔 squirrel.yaml。

  • 「 xxx.custom.yaml 」為名稱「 xxx.schema.yaml 」設定檔之補丁(修改檔),也可為「 xxx.yaml 」之補丁(修改檔)。

    在不改變原文件內容,對該「方案」作修改。

  • Mac 鼠鬚管:「 squirrel.custom.yaml 」為介面外觀設定檔。

  • Win 小狼毫:「 weasel.custom.yaml 」為介面外觀設定檔。

  • 「 rime.lua 」為 Rime 外掛 librime-lua 之設定檔(程式碼檔)。

  • 「 opencc 」資料夾內為 opencc 內建濾鏡功能文件匯入處。

  • 「 .userdb 」為輸入紀錄(用戶詞典)產生之文件。

  • 程式碼開頭「#」為註釋,該條程式碼不起作用。

  • 程式碼每行開頭或當中「空格」數很重要,「,」「'」「"」一樣。若錯漏,修改不作用甚至報錯!