Skip to content

Version 3.0

Choose a tag to compare

@ksqsf ksqsf released this 11 May 09:38
· 349 commits to main since this release

前言

經過將近一年的修修補補,3.0 版本終於面市了。其實 2.0 時已經非常完備,但細節優化就像一個無底洞——自上一版本(2.0.2)以來,凡 commit 300 多次,變更 70 餘個文件,增刪 160 萬行,引入 20 餘項新特性,修復 100 多個 bug,徹底優化 Lua 組件性能,更有跟打測試超 100 萬字以優化簡碼,rime-moran 倉庫也從個人帳號轉移到了 rimeinn 組織,甚至還建立了一個網站(感謝呂小布提供域名和空間)。

其實哪怕現在,我還在想「還有一些地方可以優化」。但總要有個止境。現在就是止境。

3.0 是迄今爲止最好的魔然版本。它功能豐富、體驗優秀、兼容性佳、延遲超低、易於配置,綜合性無出其右者。儘管許多特色功能在以前的版本中已經出現(甚至在 1.0 版本就有),但我也要借此機會,重新介紹它們:

  • 快速上手、無縫進階:魔然方案基於自然碼(雙拼和形碼)。其中自然碼雙拼是雙拼的事實標準,而形碼的部首優先規則直觀而自然。新手可以通過雙拼+大詞庫輕鬆上手,在日常使用中自然而然掌握輔助碼和簡碼,進階爲高手。單字簡碼經過精心設計,平衡了手感、重碼和記憶難度,簡詞收錄相對克制,以便用戶自己增加自己想要的簡碼。常用字重碼率較低,水文賽碼碼長(字詞模式)一般在 1.7 左右,普文一般在 2 左右。
  • 簡碼與整句協同設計:許多 Rime 方案通過簡單地設計雙翻譯器來引入固定簡碼。(甚至一些商業輸入法也是如此!)魔然在 1.0 版本就意識到這種設計會導致造詞和詞頻機能受損,而魔然獨有精心設計的翻譯器和候選重排濾鏡,透過特殊的算法設計,高效地解決了前述問題,同時還支持任意編碼固頂獨立字詞模式。魔然從一開始就強調「句中輔助碼」的能力,這是因爲習慣簡碼後,會下意識地在整句中使用 3 碼簡碼,而句中輔助碼對於不打破心流非常重要。
  • 完整的輔助碼功能:魔然的默認模式(moran)和輔篩模式(moran_aux)均支持詞語級直接輔助碼,也支持輸入輔助碼時首選下沉,爲各 Rime 方案獨有。
  • 超快性能:魔然開發過程中非常注重性能表現。從詞庫到方案設計均採取了「非必要、不添加」的設計理念,從而實現在相同功能的前提下,達到最高的性能。Lua 組件則再三優化使用的算法和數據結構,大大降低 Lua 的工作負擔,不僅內存佔用低而穩定,且運行速度極快。

3.0 到底改了些什麼?

一、碼表更新

  1. 三字詞的編碼從原本的 ABCc 修改爲 ABC(僅三碼)。該變更使得三字詞更容易被發現,在手機上更容易輸入。

image

  1. 單字收錄至 Unicode CJK Unified Ideographs Extension I。

  2. 簡體碼表單字得到了大幅優化。(感謝 @pfeiwu

  3. 繁體碼表和簡體碼表增加了大量簡詞,大幅優化手機輸入體驗。

  4. 導入原版自然碼的 o 引導的符號定義,在 moran_fixed.symbols.dict.yaml 中。如 osy 可輸入 ①,omy ooy 可輸入 oduu 可輸入 等。

  5. 大量錯碼、錯拆、錯音、錯字形的校對和糾正。

二、功能更新

  1. 新增Control+t 快捷置頂和「萬靈藥」加詞,支持跨端同步,在所有模式下均可使用(字詞模式需要手動開啓)。(感謝 @pfeiwu→文檔
    image

  2. 新增默認模式詞語級出簡讓全。參見 moran.schema.yaml 中的 moran/ijrq/enable_word。如「鏈接」和「連接」均可用「lmjxf」輸入,但假設已在輸入 lmjx 時看到「鏈接」,那麼額外輸入 f 說明自己不想要「鏈接」,開啓該功能可以將不想要的首選降低權重。

輸入lmjx 不開啓時 開啓時
image image image
  1. 新增默認模式Control+l 輪換切分 →文檔
輸入 bu vi dk 按下 Control+l 後 2-2-2 切分直接轉換成 3-3 切分
image image
  1. 新增默認模式Control+l 取回被吞掉的輔助碼 →文檔
輸入 mz fa dsl 選擇「沒法」,d 被當作「法」的輔助碼吞掉 Control+l 取回
image image image
  1. 新增默認模式引入注音符號反查(大千式),ovy 引導。

  2. 新增默認模式新增快捷鍵 Control+g 開關固詞模式。

  3. 新增默認模式允許重置詞輔匹配提示符,參見 moran.schema.yaml 中的 moran/word_filter_match_indicator

  4. 新增英語混輸數字可以使用雙拼簡寫輸入,如 47 可寫成 sq(四七)或 suq(四十七),16 可寫成 ulyl

AK四七 UTF十六
image image
  1. 新增輔篩模式支持 tab 鍵跳轉,跳轉後也可以正常使用輔篩功能。

  2. 新增輔篩模式允許自定義預取長度,見 moran_aux.schema.yaml 中的 moran/prefetch

  3. 新增字詞模式支持兩分反查。

  4. 新增字詞模式支持用字標準切換。

  5. 新增字詞模式支持 yyxx` 來查詢主碼表以輸入生僻字。

  6. 新增日語混輸支持用 ojp 來引導。即使開啓了簡繁轉換也不會干擾日語輸出。

  7. 改進: 在本輪開發週期中大幅優化了字集過濾、輔助碼提示、簡快碼提示的性能。

  8. 改進:形碼反查不再過濾字集,即使選擇了「通用」字集。

  9. 改進英語混輸現默認只在輸入長度 >= 4 時才啓動英語混輸。⚠️ 依賴於 librime 1.12。如果您發現開箱配置不顯示英語單詞(如輸入 hello 時沒有任何候選),說明 librime 版本較低,請手動更新到最新版,如有必要請用 nightly 版本! 如想直接禁用該變更(從而與舊版 librime 兼容),可在 moran.custom.yaml 中添加如下 patch:

patch:
  english/tag: "abc"
  1. 修復:分號處理在取得候選個數時潛在的問題。
  2. 修復:簡碼提示造成標點不上屏。
  3. 修復:簡碼提示和輔助碼提示的兼容性問題。
  4. 修復:默認模式中候選可能重複輸出的問題。
  5. 修復:emoji 與快符的兼容性問題。
  6. 移除:現已刪除 moran_launcher.lua(沒有什麼實際作用)。如果您需要頻繁打開魔然官網或說明書,請添加到瀏覽器的收藏夾中。 :)

其他變更

  • 倉庫遷移到 rimeinn/rime-moran
  • 增加 trad 和 simp 分支,不包含源數據,可直接使用 plum 安裝
  • 建立魔然網站 zrmfans.cn ,也支持簡體中文

New Contributors

Full Changelog: 2.0.2...3.0


  • Hotfix: 3.0.1 修復增補擴 I 導致的單字退化。