最近在用 Rust 和 Leptos 0.8 重構一款 Wasm 網頁端打字機/輸入法應用。隨着內置的練習題(如宮保拼音、注音字根等打字範文)越來越多,我意識到:有些練習題打過一次就不常用了,一直硬編碼(Hardcode)塞在 Rust 原代碼裏,會讓編譯出來的 Wasm 執行檔無限膨脹。

於是我動手進行了一場「Wasm 瘦身計劃」:將這些長文本全數抽離成獨立的 .txt 文件,通過 Trunk 構建到靜態目錄,並在客戶端使用 gloo-net 進行異步(Async)加載。

結果,喜聞樂見的「翻車」了。

全文

大家好,前陣子我開源了一個爲 34 鍵分體鍵盤(Ferris Sweep)量身打造的粵拼並擊輸入法(宮保粵拼),並做了一個可視化的 Web 模擬器(基於 Rust + Leptos)。上一期發佈後,視覺效果不錯,但在底層架構上,我遇到了一個經典的 Rust 難題:如何讓編譯期就固定的靜態數據,根據前端的 UI 狀態進行動態切換?

❌ 痛點與挑戰

在 Rime 引擎的架構思維中,輸入方案(包含幾百條正則拼寫運算規則)通常是非常重的,所以我們習慣將其放在 lazy_static! 裏,擁有 'static 生命週期。

但我的需求是:當用戶在前端下拉選單切換「實體鍵盤佈局」(如標準直列 -> 縱向錯列)時,底層的方案定義必須動態替換對應的指法規則。如果直接把前端的 AppState 塞進底層,會造成嚴重的耦合;如果每次切換都重新實例化整個方案,效能開銷又太大。

✅ 解法:依賴注入 (DI) + 函數指針 + Leptos 細粒度響應式追蹤

經過一番折騰,我找到了一條非常優雅且符合 Rust 哲學的路徑:

全文

大家好,今天來分享一個最近折騰的開源業餘專案:宮保粵拼 × Ferris Sweep 軟硬體協同優化。

如果你曾經嘗試過「並擊(Chording)」輸入法,你一定會發現一個痛點:
標準鍵盤的斜向錯列(Row-staggered)簡直是並擊的噩夢。
當你需要同時按下跨排的三個鍵時,手指的扭曲與肌肉牽扯不僅容易疲勞,還會嚴重拖慢效率。

爲了解決這個物理極限,我做了兩件事:

一、底層引擎(R²ime 微觀引擎):

基於 Rime 靈活的拼寫運算,開發了「宮保粵拼」。
它允許指法的泛化(例如不綁死絕對鍵位,而是基於相對位置並擊出 ⟨-ng⟩、⟨-m⟩ 等複雜韻尾)。

二、視覺導航與動態優化(Typewriter):

寫了一個 Web 端的可視化模擬器。
它不僅用 CSS 完美復刻了 Ferris Sweep 的激進縱向錯列(Columnar Stagger)與拇指旋轉角度,
更核心的是,它會根據你當前的物理佈局,動態計算並提示最符合人體工學的「最佳並擊和弦」。

舉個例子:

全文

《漢語拼音方案》是中國人名、地名和中文文獻羅馬字母拼寫法的統一規範,
並用於漢字不便或不能使用的領域。

——1958.02.11

始於 1958 年的聲音,在指尖重新定義。

Rime 謹此致敬。

專題影片

Rime 官網的隱藏彩蛋:用代碼演奏拼音字母歌

B 站 · YouTube

Rime 官網 打字機模式、代碼音樂等新功能,趕在拼音紀念日前夜(2026 年 2 月 10 日晚)順利完工!🎉

全文

十餘年前,BYVoid 在部落格中記述了與 Rime 作者佛振的一面之緣,震驚於其「手寫注音」的神技。
這份「緣、驚、愧」成了 Rime 發展史上一段佳話。

創作背景:緣·驚·愧

典出 BYVoid 名篇《推薦一個神級輸入法——Rime》。

隨著最近 Rime 新版注音輸入方案開發完成,我不禁回想到那個開源輸入法初創的純粹年代。

我用鍵盤彈奏這曲〈東風破〉,原是爲蘭茂早梅詩》所寫。
如今,我以 BYVoid 的第一人稱視角重新填詞,重現當年那場大會上的驚鴻一瞥。

作品展示

〈東風破·注音緣〉音軌試聽

全文

Rime 主題曲 2025-03-01 留言

Rime 三部曲——中州韻、小狼毫、鼠鬚管。

某有幸發起了 Rime 輸入法 這款開源軟件,十幾年來備受用家關愛;
衆多編程高手和語文專家積極參與開發維護,方能持續更新、代碼不鏽。

甲辰年末,某決計爲 Rime 輸入法題寫一首主題曲,
紀念這一來之不易的成就,勉勵輸入法開發者再譜新篇。

中州韻輸入法主題曲

中州韻輸入法主題曲 鋼琴版

若本站播放不流暢,請移步 B 站備份:合奏版 | 鋼琴版

曲調早有構思,無奈某是門外漢,全憑直覺在打譜軟件中點選,勉強拼湊成曲,但願拋磚引玉。
將曲譜上傳 開源網站,以期行家裏手指點,修改潤色些許,哪敢奢求演繹續寫?

全文

〔首發於 V2EX

某最近的一個小作品,分享給 Rime 用家。

東風破 /plum/ 是個輕量級的、由 bash 腳本開發的 Rime 輸入法配置管理工具。
有望通過提供單行安裝腳本,收集、包裝「配方」,解決 Rime 用家通過統一介面、簡便地獲取輸入方案這個難題。 並爲積累了一定經驗的用家提供了一個管理和分享配置的渠道。

全文
〔首發於 V2EX〕 感謝 @Prcuvu 和 @nameoverflow 兩位開發者的給力大修,以及 道滿、佛振, @osfans 等新老通字的配合,小狼毫 輸入法現已支持 Windows 8 ~ Windows 10 的「現代介面」,並添加了語言欄狀態圖標,完成多項兼容性改進,集成了 Rime 配置管理器,還完善了工程配置、自動構建流程等開源協作的關鍵設施。 雖然這軟件仍有諸多不足,可期待的是…
全文

山景答問 2016-04-14 留言

問與答

——「RIME」這個名字,還有「中州韻」「小狼毫」和「鼠鬚管」這些有趣的稱呼都是怎麼想出來的呢?方便的話可否講講這裏面的故事?

——不起個好名,寫碼興致索然。

全文

最近錄製了一些Rime 輸入法的打字視頻:

菜鳥俺用了這幾樣工具完成以上視頻的製作:

  • QuickTime Player 用於 OS X 上的屏幕錄像、錄音,以及簡單的視頻剪輯
  • Open Broadcaster Software 用於 Windows 上的屏幕錄像、錄音
  • GoldWave 用於編輯音頻、混音
  • VirtualDub 用於編輯視頻、轉碼

哈,純粹地用於學習和研究輸入法。音樂的神碼版權問題,看官都莫要深究啦。

全文