吉旦餅, 基於 宇浩輸入法 (GitHub: forfudan/yuhao) 製作, 亂序字根, 三碼定長, 延遲頂字. 「吉旦餅」其名來自三名主要開發人: 阿吉, forFudan, 王牌餅乾, 又取義於 華夫餅 (wafel), 其漢譯應有 "雞蛋餅" 之義.
原 宇浩三碼頂 相關内容可在保留分支 beta 中找到.
暫無字根圖, 用反查練就完事了.- 這裏 有張字根圖, 在
/assets/
目錄下. - 另有 這張 ASCII 字根對照表 以供參考.
- 這裏 有張字根圖, 在
- 取碼方式:
- 單根字: 字根大碼 + 字根小碼, 補加空格.
- 一:
(一|Fi) -> [fi_]
. - 了:
(了|Kc) -> [kc_]
.
- 一:
- 兩根字: 首根大碼 + 次根大碼 + 次根小碼.
- 他:
(亻也|ErSo) -> [eso]
. - 有:
(𠂇月|SsHr) -> [shr]
.
- 他:
- 多根字: 首根大碼 + 次根大碼 + 末根大碼.
- 的:
(白勹丶|DsHrLl) -> [dhl]
. - 你:
(亻冖小|ErPmKf) -> [epk]
.
- 的:
- 單根字: 字根大碼 + 字根小碼, 補加空格.
- 簡碼:
- 一簡: 采用空格分號二重一簡的方案, 共設一簡三十餘條.
- 一簡字: 的:
[d_]
, 一:[f_]
, 了:[k_]
. - 二重一簡字: 你:
[e;]
, 有:[s;]
, 得:[v;]
. - 一簡詞: 我们:
[w;]
, 可以:[a;]
.
- 一簡字: 的:
- 二簡: 没有碼長上的收益, 僅爲减重設置了十餘條二簡.
- 二簡字: 回:
[do_]
, 便:[ef_]
, 使:[ef;]
. - 二簡詞: 因为:
[dt;]
, 什么:[ed;]
.
- 二簡字: 回:
- 一簡: 采用空格分號二重一簡的方案, 共設一簡三十餘條.
- 反查:
- 拼音反查: 没有輸入内容時, 按下
grave
鍵進行拼音反查. - 輸入框中存在内容時, 按下
/
鍵切換多重拆分提示. - 上屏一個字後, 按下
grave
鍵重復該字並反查其拆分.
- 拼音反查: 没有輸入内容時, 按下
- 智能選重:
- 和 三碼鄭碼 類似, 對形如
abcabc
的輸入串, 檢查有無非單字首選的詞組可用. - 例如 "休息" 一詞, 編碼爲
efkmgk
, 其中efk
/mgk
的首選分别是 "条"/"息", 为了打出 "休息", 引入該六碼詞. - 又如 "可憐", 編碼爲
a_pka
, 單字首選是 "可"/"鳞", 引入該五碼詞.
- 和 三碼鄭碼 類似, 對形如
- 延遲頂:
- 輸入串分爲 "暫存串" 和 "活動串".
- 例如 "時間", 編碼爲
jgarjk
, 此時暫存串爲jga
, 活動串爲rjk
, 暫存候選爲 "時", 活動候選爲 "間". - 顯示效果如:
時[間¹]rjk 幜²
.
- 清空活動串:
- 由於存在延遲頂, 改寫了一般的 回車清屏 功能, 使得回車鍵只清除活動編碼, 而不是清除整個輸入串.
- 例如當前輸入串爲
時[革¹]rj ~間² ~帐³
, 則按下回車鍵後, 清除活動串rj
, 輸入串變爲[時¹]jga 峙² 崶³
.
- 打斷施法:
- 當輸入串
abcabc
觸發 智能選重 時, 如果原本想輸入的是首選單字, 則可按下Tab
鍵打斷本次智能聯想. - 例如
可[憐¹]pka☯ ~鳞²
, 若此時想要輸入的並不是 "憐" 而是 "鳞", 則只須按下Tab
鍵, 上屏 "可" 字, 輸入串變爲[鳞¹]pkg ~憐²
.
- 當輸入串
- 内嵌候選:
- 通過調整首選的 preedit 串, 將當前候選列表展示在嵌入編碼中.
- 該功能默認開啓.
- 純單字模式:
- 爲了獲得最大確定性, 增加純單輸入模式, 此模式下禁用智能詞, 在打到字的第二碼時, 自動頂上前一字.
- 純單模式默認關閉.
- 自定義 lua 宏:
- 實現五個類型的自定義宏:
- 提示: 作爲提示顯示在候選處, 可用於快捷短語或作爲其宏的功能提示.
- 開關: 可用於顯示輸入法的功能開關狀態, 並進行切換.
- 單選: 同開關類似, 顯示開關狀態並在多個選項之間切換.
- Shell: 適用於 Linux/Mac 系統, 提供命令宏功能, 執行預先配置的命令或脚本.
- 求值: 提供 lua 擴展, 允許配置 lua 語句, 函數或 lua 對象.
- 當前預置的宏 (smyh.schema.yaml):
/help
: 類似原有的zhelp
開關管理, 提供一些常用開關和單選的管理操作./date
和/time
: 快捷輸入日期時間./dist
: 查詢當前 librime 版本.
- 擴展預置宏 (smyh.custom.yaml):
/quick
: 快捷短語示例./calc
: 計算器, 簡易 lua 宏示例, 通過/calc/32*2
方式調用./echo
: 簡易 shell 宏示例, 在 Linux/Mac 下通過/echo/hello/world
方式調用.
- 實現五個類型的自定義宏:
- 四馬兩吃:
- 三碼詞庫只收录 CJK 字集, 合計約两萬一千字.
- 如需臨時輸入 CJK 以外的非常用字, 可借助臨時四碼模式; 若要連續輸入生僻字, 請切換四碼雞蛋餅.
- 對於單字或詞語四碼全碼, 可以四碼直出,
Tab
上屏. 當純單模式啓用時, 出四碼單字; 否則出四碼字詞.
對於稍早的 librime-lua 版本, 新式的定義
lua_translator@*smyh.core_translator
不受支持, 可通過手動複製rime.lua
文件及調整smyh.custom.yaml
的方式工作. 對於更古早的版本, 可能本方案使用的諸多特性都不受支持, 若不進行升級將無法正常使用.
- 字頻數據: 25亿字语料汉字字频表, 繁體字頻表.
- 字根及拆分數據: yuhao/schema/yuhao_chaifen.dict.yaml.
- 宇浩拼音: yuhao/schema/yuhao_pinyin.dict.yaml.
吉旦餅的設計與開發非一日之功, 亦非一人之力, 感謝:
- 三碼鄭碼 和 逸碼 的製作人 至至 和 小泥巴, 讓我有機會尝試頂功的輸入體驗, 也爲宇三和吉旦餅的設計提供了絶佳的範例;
- 宇浩輸入法 製作人 朱宇浩, 不僅開發製作了宇浩, 還爲我提供了額外的文件, 數據, 算法支持和其他幫助;
- 王牌人肉測試員 阿吉 和 錢多多, 在開發體驗過程中予我以鼓励, 並給出相當多的優化建議;
- rime, GitHub, Vim 和其他依賴性工具, 語料及字頻數據等, 此處不再一一細表.