diff --git a/_config.yml b/_config.yml index b21eae8..e8e1525 100644 --- a/_config.yml +++ b/_config.yml @@ -39,11 +39,11 @@ callouts: title: 重要 color: blue example: - # title: 举例 + title: 例子 color: green note: title: 备注 color: purple warning: title: 提醒 - color: red \ No newline at end of file + color: red diff --git "a/beta/mabiao/baidu/\345\256\207\346\265\251\344\272\214\345\215\201\344\270\207\350\241\214\347\211\210.txt" "b/beta/mabiao/baidu/\345\256\207\346\265\251\344\272\214\345\215\201\344\270\207\350\241\214\347\211\210.txt" index 6d5d16b..7d2c56d 100644 --- "a/beta/mabiao/baidu/\345\256\207\346\265\251\344\272\214\345\215\201\344\270\207\350\241\214\347\211\210.txt" +++ "b/beta/mabiao/baidu/\345\256\207\346\265\251\344\272\214\345\215\201\344\270\207\350\241\214\347\211\210.txt" @@ -86317,7 +86317,6 @@ kkmo モ kkmo ㄇ kkmo ㋲ kkmo ㏁ -kkms ㎥ kkmu µ kkmu Μ kkmu μ diff --git "a/beta/mabiao/baidu/\345\256\207\346\265\251\345\215\225\345\255\227\345\205\250\347\240\201\345\222\214\347\256\200\344\275\223\347\256\200\347\240\201.txt" "b/beta/mabiao/baidu/\345\256\207\346\265\251\345\215\225\345\255\227\345\205\250\347\240\201\345\222\214\347\256\200\344\275\223\347\256\200\347\240\201.txt" index 11ce130..52b6557 100644 --- "a/beta/mabiao/baidu/\345\256\207\346\265\251\345\215\225\345\255\227\345\205\250\347\240\201\345\222\214\347\256\200\344\275\223\347\256\200\347\240\201.txt" +++ "b/beta/mabiao/baidu/\345\256\207\346\265\251\345\215\225\345\255\227\345\205\250\347\240\201\345\222\214\347\256\200\344\275\223\347\256\200\347\240\201.txt" @@ -48081,7 +48081,6 @@ kkmo モ kkmo ㄇ kkmo ㋲ kkmo ㏁ -kkms ㎥ kkmu µ kkmu Μ kkmu μ diff --git "a/beta/mabiao/baidu/\345\256\207\346\265\251\347\256\200\344\275\223\347\256\200\347\240\201\347\211\210.txt" "b/beta/mabiao/baidu/\345\256\207\346\265\251\347\256\200\344\275\223\347\256\200\347\240\201\347\211\210.txt" index c4be3f9..4ad31ca 100644 --- "a/beta/mabiao/baidu/\345\256\207\346\265\251\347\256\200\344\275\223\347\256\200\347\240\201\347\211\210.txt" +++ "b/beta/mabiao/baidu/\345\256\207\346\265\251\347\256\200\344\275\223\347\256\200\347\240\201\347\211\210.txt" @@ -121269,7 +121269,6 @@ kkmo モ kkmo ㄇ kkmo ㋲ kkmo ㏁ -kkms ㎥ kkmu µ kkmu Μ kkmu μ diff --git "a/beta/mabiao/baidu/\345\256\207\346\265\251\347\271\201\351\253\224\347\260\241\347\242\274\347\211\210.txt" "b/beta/mabiao/baidu/\345\256\207\346\265\251\347\271\201\351\253\224\347\260\241\347\242\274\347\211\210.txt" index 160d27c..590ad02 100644 --- "a/beta/mabiao/baidu/\345\256\207\346\265\251\347\271\201\351\253\224\347\260\241\347\242\274\347\211\210.txt" +++ "b/beta/mabiao/baidu/\345\256\207\346\265\251\347\271\201\351\253\224\347\260\241\347\242\274\347\211\210.txt" @@ -122182,7 +122182,6 @@ kkmo ㄇ kkmo ㋲ kkmo ㏁ kkmp 水閣虛涼玉簟空 -kkms ㎥ kkmu µ kkmu Μ kkmu μ diff --git "a/beta/mabiao/duoduo/\345\256\207\346\265\251\347\256\200\344\275\223\347\256\200\347\240\201\347\211\210.txt" "b/beta/mabiao/duoduo/\345\256\207\346\265\251\347\256\200\344\275\223\347\256\200\347\240\201\347\211\210.txt" index 84c3a1c..1877c59 100644 --- "a/beta/mabiao/duoduo/\345\256\207\346\265\251\347\256\200\344\275\223\347\256\200\347\240\201\347\211\210.txt" +++ "b/beta/mabiao/duoduo/\345\256\207\346\265\251\347\256\200\344\275\223\347\256\200\347\240\201\347\211\210.txt" @@ -121269,7 +121269,6 @@ ㄇ kkmo ㋲ kkmo ㏁ kkmo -㎥ kkms µ kkmu Μ kkmu μ kkmu diff --git "a/beta/mabiao/duoduo/\345\256\207\346\265\251\347\271\201\351\253\224\347\260\241\347\242\274\347\211\210.txt" "b/beta/mabiao/duoduo/\345\256\207\346\265\251\347\271\201\351\253\224\347\260\241\347\242\274\347\211\210.txt" index bba0020..1cfa647 100644 --- "a/beta/mabiao/duoduo/\345\256\207\346\265\251\347\271\201\351\253\224\347\260\241\347\242\274\347\211\210.txt" +++ "b/beta/mabiao/duoduo/\345\256\207\346\265\251\347\271\201\351\253\224\347\260\241\347\242\274\347\211\210.txt" @@ -122182,7 +122182,6 @@ ㋲ kkmo ㏁ kkmo 水閣虛涼玉簟空 kkmp -㎥ kkms µ kkmu Μ kkmu μ kkmu diff --git a/beta/schema/yuhao.dict.yaml b/beta/schema/yuhao.dict.yaml index 1836c17..060f92d 100644 --- a/beta/schema/yuhao.dict.yaml +++ b/beta/schema/yuhao.dict.yaml @@ -1,7 +1,7 @@ # encoding: utf-8 # # 宇浩·开来学 -# 版本: 20231226 +# 版本: 20231227 # # 朱宇浩 开发 # Rime方案 forFudan @@ -26,7 +26,7 @@ # - 傳統字增廣詞庫(成語、詩詞) --- name: "yuhao" -version: "20231226" +version: "20231227" sort: original import_tables: # 去除下方的 # 符号以导入词库 diff --git a/beta/schema/yuhao.schema.yaml b/beta/schema/yuhao.schema.yaml index 40c5b38..e105af4 100644 --- a/beta/schema/yuhao.schema.yaml +++ b/beta/schema/yuhao.schema.yaml @@ -3,7 +3,7 @@ schema: schema_id: yuhao - name: 光華·陆简 + name: 光華·陆标简码 version: 20230522 author: - 發明人 朱宇浩 @@ -174,7 +174,7 @@ translator: max_phrase_length: 4 # 自动成词的最大词长 preedit_format: [] comment_format: - - 'xform/^~/ /' + - "xform/^~/ /" disable_user_dict_for_patterns: - "^z.*$" @@ -183,7 +183,7 @@ zaoci: initial_quality: 0 enable_sentence: true enable_user_dict: true - prefix: '`' + prefix: "`" tips: "〔用户造詞〕" tag: zaoci @@ -213,24 +213,38 @@ reverse_lookup: # 默認顯示效果爲: # 浩¹ 泃² 竘³ embeded_cands: - option_name: embeded_cands # 嵌入候選開關 - index_indicators: [ ¹, ², ³, ⁴, ⁵, ⁶, ⁷, ⁸, ⁹, ⁰ ] # 嵌入候選的序號顯示格式 - first_format: "${候選}${Comment}${Seq}" # 首選的渲染格式 - next_format: "${候選}${Comment}${Seq}" # 非首選的渲染格式 - separator: " " # 候選之間的分隔符 + option_name: embeded_cands # 嵌入候選開關 + index_indicators: [¹, ², ³, ⁴, ⁵, ⁶, ⁷, ⁸, ⁹, ⁰] # 嵌入候選的序號顯示格式 + first_format: "${候選}${Comment}${Seq}" # 首選的渲染格式 + next_format: "${候選}${Comment}${Seq}" # 非首選的渲染格式 + separator: " " # 候選之間的分隔符 # 自定義宏 yuhao_macro: funckeys: - macro: [ 0x2f ] # 當輸入串以 "/" 開頭時, 認爲是宏調用 + macro: [0x2f] # 當輸入串以 "/" 開頭時, 認爲是宏調用 macros: help: - { type: tip, name: ❖配置中心 } - - { type: switch, name: embeded_cands, states: [ ☐嵌入, ☑嵌入 ] } - - { type: switch, name: yuhao_single_char_only_for_full_code, states: [ ☐字詞, ☑純單 ] } - - { type: radio, names: [ yuhao_chaifen.off, yuhao_chaifen.lv1, yuhao_chaifen.lv2, yuhao_chaifen.lv3 ], states: [ ☐☐☐註解, ☑☐☐註解, ☐☑☐註解, ☐☐☑註解 ] } - - { type: switch, name: traditionalization, states: [ ☐簡保持, ☑簡轉繁 ] } - - { type: switch, name: simplification, states: [ ☐繁保持, ☑繁轉簡 ] } + - { type: switch, name: embeded_cands, states: [☐嵌入, ☑嵌入] } + - { + type: switch, + name: yuhao_single_char_only_for_full_code, + states: [☐字詞, ☑純單], + } + - { + type: radio, + names: + [ + yuhao_chaifen.off, + yuhao_chaifen.lv1, + yuhao_chaifen.lv2, + yuhao_chaifen.lv3, + ], + states: [☐☐☐註解, ☑☐☐註解, ☐☑☐註解, ☐☐☑註解], + } + - { type: switch, name: traditionalization, states: [☐簡保持, ☑簡轉繁] } + - { type: switch, name: simplification, states: [☐繁保持, ☑繁轉簡] } date: - { type: eval, name: ☀日期, expr: return os.date("%Y-%m-%d") } - { type: eval, name: ⛅年月日, expr: return os.date("%Y年%m月%d日") } @@ -239,15 +253,29 @@ yuhao_macro: - { type: eval, name: Ⓣ時間, expr: return os.date("%Y%m%d%H%M") } - { type: eval, name: Ⓢ時間戳, expr: return tostring(os.time()) } char: - - { type: switch, name: yuhao_single_char_only_for_full_code, states: [ ☐字詞, ☑純單 ] } + - { + type: switch, + name: yuhao_single_char_only_for_full_code, + states: [☐字詞, ☑純單], + } div: - - { type: radio, names: [ yuhao_chaifen.off, yuhao_chaifen.lv1, yuhao_chaifen.lv2, yuhao_chaifen.lv3 ], states: [ ☐☐☐註解, ☑☐☐註解, ☐☑☐註解, ☐☐☑註解 ] } + - { + type: radio, + names: + [ + yuhao_chaifen.off, + yuhao_chaifen.lv1, + yuhao_chaifen.lv2, + yuhao_chaifen.lv3, + ], + states: [☐☐☐註解, ☑☐☐註解, ☐☑☐註解, ☐☐☑註解], + } embed: - - { type: switch, name: embeded_cands, states: [ ☐嵌入, ☑嵌入 ] } + - { type: switch, name: embeded_cands, states: [☐嵌入, ☑嵌入] } trad: - - { type: switch, name: traditionalization, states: [ ☐不轉換, ☑簡轉繁 ] } + - { type: switch, name: traditionalization, states: [☐不轉換, ☑簡轉繁] } simp: - - { type: switch, name: simplification, states: [ ☐不轉換, ☑繁轉簡 ] } + - { type: switch, name: simplification, states: [☐不轉換, ☑繁轉簡] } dist: - type: eval expr: > @@ -305,8 +333,8 @@ key_binder: - { when: has_menu, accept: semicolon, send: 2 } # 分号次选 - { when: has_menu, accept: apostrophe, send: 3 } # 引号三选 - { when: has_menu, accept: Tab, send: 4 } # 製表符四选 - - { when: has_menu, accept: minus, send: Page_Up } #減號上翻頁 - - { when: has_menu, accept: equal, send: Page_Down } #等號下翻頁 + - { when: has_menu, accept: minus, send: Page_Up } #減號上翻頁 + - { when: has_menu, accept: equal, send: Page_Down } #等號下翻頁 recognizer: import_preset: default @@ -314,12 +342,11 @@ recognizer: uppercase: "^(?![`;]).*[A-Z][-_+.'0-9A-Za-z]*$" reverse_lookup: "^z([a-z]+?)*$" zaoci: "^[a-y]*`[a-y`]*$" - punct: '^/([0-9]0?|[A-Za-z]+)?$' + punct: "^/([0-9]0?|[A-Za-z]+)?$" style: horizontal: false inline_preedit: true preedit_type: preview - # menu: # page_size: 5 diff --git a/beta/schema/yuhao.symbols.yaml b/beta/schema/yuhao.symbols.yaml index 98487b0..a57d46a 100644 --- a/beta/schema/yuhao.symbols.yaml +++ b/beta/schema/yuhao.symbols.yaml @@ -674,7 +674,6 @@ punctuator: '/mi' : ['み','ミ','㊙','㋯'] '/ming' : ['㊔'] '/mo' : ['も','モ','ㄇ','㋲','㏁'] - '/ms' : ['㎥'] '/mu' : ['µ','Μ','μ','む','ム','㊍','㋰'] '/my' : ['$','¢','$'] '/na' : ['な','ナ','㋤','㎁'] diff --git a/beta/schema/yuhao/yuhao.full.dict.yaml b/beta/schema/yuhao/yuhao.full.dict.yaml index b216886..f2804e8 100644 --- a/beta/schema/yuhao/yuhao.full.dict.yaml +++ b/beta/schema/yuhao/yuhao.full.dict.yaml @@ -1,7 +1,7 @@ # encoding: utf-8 # # 宇浩·繁简通 -# 版本: 20231226 +# 版本: 20231227 # 朱宇浩 开发 # Rime方案 forFudan @@ -12,7 +12,7 @@ --- name: "yuhao.full" -version: "20231226" +version: "20231227" sort: original columns: - text diff --git a/beta/schema/yuhao/yuhao.quick.dict.yaml b/beta/schema/yuhao/yuhao.quick.dict.yaml index dab3c44..e2061a0 100644 --- a/beta/schema/yuhao/yuhao.quick.dict.yaml +++ b/beta/schema/yuhao/yuhao.quick.dict.yaml @@ -1,7 +1,7 @@ # encoding: utf-8 # # 宇浩·开来学 -# 版本: 20231226 +# 版本: 20231227 # 朱宇浩 开发 # Rime方案 forFudan @@ -11,7 +11,7 @@ --- name: "yuhao.quick" -version: "20231226" +version: "20231227" sort: original columns: - text diff --git a/beta/schema/yuhao/yuhao.symbols.dict.yaml b/beta/schema/yuhao/yuhao.symbols.dict.yaml index c736e5d..331d215 100644 --- a/beta/schema/yuhao/yuhao.symbols.dict.yaml +++ b/beta/schema/yuhao/yuhao.symbols.dict.yaml @@ -1,7 +1,7 @@ # encoding: utf-8 # # 宇浩·繁简通 -# 版本: 20231226 +# 版本: 20231227 # 朱宇浩 开发 # Rime方案 forFudan @@ -11,7 +11,7 @@ --- name: "yuhao.symbols" -version: "20231226" +version: "20231227" sort: original columns: - text @@ -995,7 +995,6 @@ $ kkmy ㎠ kkcm ㎢ kkkm ㎤ kkcm -㎥ kkms ㎥ kklf ㎦ kkkm ㎩ kkpa diff --git a/beta/schema/yuhao/yuhao.words.dict.yaml b/beta/schema/yuhao/yuhao.words.dict.yaml index 4df1550..444fea8 100644 --- a/beta/schema/yuhao/yuhao.words.dict.yaml +++ b/beta/schema/yuhao/yuhao.words.dict.yaml @@ -1,7 +1,7 @@ # encoding: utf-8 # # 宇浩·开来学 -# 版本: 20231226 +# 版本: 20231227 # 朱宇浩 开发 # Rime方案 forFudan @@ -11,7 +11,7 @@ --- name: "yuhao.words" -version: "20231226" +version: "20231227" sort: original columns: - text diff --git a/beta/schema/yuhao/yuhao.words_literature.dict.yaml b/beta/schema/yuhao/yuhao.words_literature.dict.yaml index 610b3dd..c73913f 100644 --- a/beta/schema/yuhao/yuhao.words_literature.dict.yaml +++ b/beta/schema/yuhao/yuhao.words_literature.dict.yaml @@ -1,7 +1,7 @@ # encoding: utf-8 # # 宇浩·开来学 -# 版本: 20231226 +# 版本: 20231227 # 朱宇浩 开发 # Rime方案 forFudan @@ -11,7 +11,7 @@ --- name: "yuhao.words_literature" -version: "20231226" +version: "20231227" sort: original columns: - text diff --git a/beta/schema/yuhao/yuhao_tc.quick.dict.yaml b/beta/schema/yuhao/yuhao_tc.quick.dict.yaml index c00a3c2..905a851 100644 --- a/beta/schema/yuhao/yuhao_tc.quick.dict.yaml +++ b/beta/schema/yuhao/yuhao_tc.quick.dict.yaml @@ -1,7 +1,7 @@ # encoding: utf-8 # # 宇浩·繼往聖 -# 版本: 20231226 +# 版本: 20231227 # 朱宇浩 开发 # Rime方案 forFudan @@ -11,7 +11,7 @@ --- name: "yuhao_tc.quick" -version: "20231226" +version: "20231227" sort: original columns: - text diff --git a/beta/schema/yuhao/yuhao_tc.words.dict.yaml b/beta/schema/yuhao/yuhao_tc.words.dict.yaml index 3386db2..84dc93d 100644 --- a/beta/schema/yuhao/yuhao_tc.words.dict.yaml +++ b/beta/schema/yuhao/yuhao_tc.words.dict.yaml @@ -1,7 +1,7 @@ # encoding: utf-8 # # 宇浩·繼往聖 -# 版本: 20231226 +# 版本: 20231227 # 朱宇浩 开发 # Rime方案 forFudan @@ -12,7 +12,7 @@ --- name: "yuhao_tc.words" -version: "20231226" +version: "20231227" sort: original columns: - text diff --git a/beta/schema/yuhao/yuhao_tc.words_literature.dict.yaml b/beta/schema/yuhao/yuhao_tc.words_literature.dict.yaml index 97bebdc..cbece36 100644 --- a/beta/schema/yuhao/yuhao_tc.words_literature.dict.yaml +++ b/beta/schema/yuhao/yuhao_tc.words_literature.dict.yaml @@ -1,7 +1,7 @@ # encoding: utf-8 # # 宇浩·繼往聖 -# 版本: 20231226 +# 版本: 20231227 # 朱宇浩 开发 # Rime方案 forFudan @@ -11,7 +11,7 @@ --- name: "yuhao_tc.words_literature" -version: "20231226" +version: "20231227" sort: original columns: - text diff --git a/beta/schema/yuhao/yuhao_tw.quick.dict.yaml b/beta/schema/yuhao/yuhao_tw.quick.dict.yaml index ff33f7d..ab15160 100644 --- a/beta/schema/yuhao/yuhao_tw.quick.dict.yaml +++ b/beta/schema/yuhao/yuhao_tw.quick.dict.yaml @@ -1,7 +1,7 @@ # encoding: utf-8 # # 宇浩·書同文 -# 版本: 20231226 +# 版本: 20231227 # 朱宇浩 开发 # Rime方案 forFudan @@ -11,7 +11,7 @@ --- name: "yuhao_tw.quick" -version: "20231226" +version: "20231227" sort: original columns: - text diff --git a/beta/schema/yuhao_chaifen.dict.yaml b/beta/schema/yuhao_chaifen.dict.yaml index 54a22d0..9269d67 100644 --- a/beta/schema/yuhao_chaifen.dict.yaml +++ b/beta/schema/yuhao_chaifen.dict.yaml @@ -21,7 +21,7 @@ --- name: "yuhao_chaifen" -version: 20231226 +version: 20231227 sort: by_weight columns: - text diff --git a/beta/schema/yuhao_chaifen_tw.dict.yaml b/beta/schema/yuhao_chaifen_tw.dict.yaml index cad81cb..5149315 100644 --- a/beta/schema/yuhao_chaifen_tw.dict.yaml +++ b/beta/schema/yuhao_chaifen_tw.dict.yaml @@ -21,7 +21,7 @@ --- name: "yuhao_chaifen_tw" -version: 20231226 +version: 20231227 sort: by_weight columns: - text diff --git a/beta/schema/yuhao_tc.dict.yaml b/beta/schema/yuhao_tc.dict.yaml index 71ea11e..a99308a 100644 --- a/beta/schema/yuhao_tc.dict.yaml +++ b/beta/schema/yuhao_tc.dict.yaml @@ -1,7 +1,7 @@ # encoding: utf-8 # # 宇浩·繼往聖 -# 版本: 20231226 +# 版本: 20231227 # # 發明人 朱宇浩 # Rime方案 forFudan @@ -27,7 +27,7 @@ # - 简化字增广词库(成语、诗词) --- name: "yuhao_tc" -version: "20231226" +version: "20231227" sort: original import_tables: # 去除下方的 # 符号以导入词库 diff --git a/beta/schema/yuhao_tc.schema.yaml b/beta/schema/yuhao_tc.schema.yaml index 51961c0..55dec88 100644 --- a/beta/schema/yuhao_tc.schema.yaml +++ b/beta/schema/yuhao_tc.schema.yaml @@ -3,7 +3,7 @@ schema: schema_id: yuhao_tc - name: 光華·陸繁 + name: 光華·古籍簡碼 version: 20230522 author: - 發明人 朱宇浩 @@ -197,24 +197,38 @@ reverse_lookup: # 默認顯示效果爲: # 浩¹ 泃² 竘³ embeded_cands: - option_name: embeded_cands # 嵌入候選開關 - index_indicators: [ ¹, ², ³, ⁴, ⁵, ⁶, ⁷, ⁸, ⁹, ⁰ ] # 嵌入候選的序號顯示格式 - first_format: "${候選}${Comment}${Seq}" # 首選的渲染格式 - next_format: "${候選}${Comment}${Seq}" # 非首選的渲染格式 - separator: " " # 候選之間的分隔符 + option_name: embeded_cands # 嵌入候選開關 + index_indicators: [¹, ², ³, ⁴, ⁵, ⁶, ⁷, ⁸, ⁹, ⁰] # 嵌入候選的序號顯示格式 + first_format: "${候選}${Comment}${Seq}" # 首選的渲染格式 + next_format: "${候選}${Comment}${Seq}" # 非首選的渲染格式 + separator: " " # 候選之間的分隔符 # 自定義宏 yuhao_macro: funckeys: - macro: [ 0x2f ] # 當輸入串以 "/" 開頭時, 認爲是宏調用 + macro: [0x2f] # 當輸入串以 "/" 開頭時, 認爲是宏調用 macros: help: - { type: tip, name: ❖配置中心 } - - { type: switch, name: embeded_cands, states: [ ☐嵌入, ☑嵌入 ] } - - { type: switch, name: yuhao_single_char_only_for_full_code, states: [ ☐字詞, ☑純單 ] } - - { type: radio, names: [ yuhao_chaifen.off, yuhao_chaifen.lv1, yuhao_chaifen.lv2, yuhao_chaifen.lv3 ], states: [ ☐☐☐註解, ☑☐☐註解, ☐☑☐註解, ☐☐☑註解 ] } - - { type: switch, name: traditionalization, states: [ ☐簡保持, ☑簡轉繁 ] } - - { type: switch, name: simplification, states: [ ☐繁保持, ☑繁轉簡 ] } + - { type: switch, name: embeded_cands, states: [☐嵌入, ☑嵌入] } + - { + type: switch, + name: yuhao_single_char_only_for_full_code, + states: [☐字詞, ☑純單], + } + - { + type: radio, + names: + [ + yuhao_chaifen.off, + yuhao_chaifen.lv1, + yuhao_chaifen.lv2, + yuhao_chaifen.lv3, + ], + states: [☐☐☐註解, ☑☐☐註解, ☐☑☐註解, ☐☐☑註解], + } + - { type: switch, name: traditionalization, states: [☐簡保持, ☑簡轉繁] } + - { type: switch, name: simplification, states: [☐繁保持, ☑繁轉簡] } date: - { type: eval, name: ☀日期, expr: return os.date("%Y-%m-%d") } - { type: eval, name: ⛅年月日, expr: return os.date("%Y年%m月%d日") } @@ -223,15 +237,29 @@ yuhao_macro: - { type: eval, name: Ⓣ時間, expr: return os.date("%Y%m%d%H%M") } - { type: eval, name: Ⓢ時間戳, expr: return tostring(os.time()) } char: - - { type: switch, name: yuhao_single_char_only_for_full_code, states: [ ☐字詞, ☑純單 ] } + - { + type: switch, + name: yuhao_single_char_only_for_full_code, + states: [☐字詞, ☑純單], + } div: - - { type: radio, names: [ yuhao_chaifen.off, yuhao_chaifen.lv1, yuhao_chaifen.lv2, yuhao_chaifen.lv3 ], states: [ ☐☐☐註解, ☑☐☐註解, ☐☑☐註解, ☐☐☑註解 ] } + - { + type: radio, + names: + [ + yuhao_chaifen.off, + yuhao_chaifen.lv1, + yuhao_chaifen.lv2, + yuhao_chaifen.lv3, + ], + states: [☐☐☐註解, ☑☐☐註解, ☐☑☐註解, ☐☐☑註解], + } embed: - - { type: switch, name: embeded_cands, states: [ ☐嵌入, ☑嵌入 ] } + - { type: switch, name: embeded_cands, states: [☐嵌入, ☑嵌入] } trad: - - { type: switch, name: traditionalization, states: [ ☐不轉換, ☑簡轉繁 ] } + - { type: switch, name: traditionalization, states: [☐不轉換, ☑簡轉繁] } simp: - - { type: switch, name: simplification, states: [ ☐不轉換, ☑繁轉簡 ] } + - { type: switch, name: simplification, states: [☐不轉換, ☑繁轉簡] } dist: - type: eval expr: > @@ -289,8 +317,8 @@ key_binder: - { when: has_menu, accept: semicolon, send: 2 } # 分号次选 - { when: has_menu, accept: apostrophe, send: 3 } # 引号三选 - { when: has_menu, accept: Tab, send: 4 } # 製表符四选 - - { when: has_menu, accept: minus, send: Page_Up } #減號上翻頁 - - { when: has_menu, accept: equal, send: Page_Down } #等號下翻頁 + - { when: has_menu, accept: minus, send: Page_Up } #減號上翻頁 + - { when: has_menu, accept: equal, send: Page_Down } #等號下翻頁 recognizer: import_preset: default @@ -298,12 +326,11 @@ recognizer: uppercase: "^(?![`;]).*[A-Z][-_+.'0-9A-Za-z]*$" reverse_lookup: "^z([a-z]+?)*$" zaoci: "^[a-y]*`[a-y`]*$" - punct: '^/([0-9]0?|[A-Za-z]+)?$' + punct: "^/([0-9]0?|[A-Za-z]+)?$" style: horizontal: false inline_preedit: true preedit_type: preview - # menu: # page_size: 5 diff --git a/beta/schema/yuhao_tw.dict.yaml b/beta/schema/yuhao_tw.dict.yaml index b558e93..6953295 100644 --- a/beta/schema/yuhao_tw.dict.yaml +++ b/beta/schema/yuhao_tw.dict.yaml @@ -1,7 +1,7 @@ # encoding: utf-8 # # 宇浩·書同文 -# 版本: 20231226 +# 版本: 20231227 # # 發明人 朱宇浩 # Rime方案 forFudan @@ -27,7 +27,7 @@ --- name: "yuhao_tw" -version: "20231226" +version: "20231227" sort: original import_tables: # 去除下方的 # 符号以导入词库 diff --git a/beta/schema/yuhao_tw.schema.yaml b/beta/schema/yuhao_tw.schema.yaml index dd71632..f67a786 100644 --- a/beta/schema/yuhao_tw.schema.yaml +++ b/beta/schema/yuhao_tw.schema.yaml @@ -3,7 +3,7 @@ schema: schema_id: yuhao_tw - name: 光華·臺正 + name: 光華·臺標簡碼 version: 20230522 author: - 發明人 朱宇浩 @@ -195,24 +195,38 @@ reverse_lookup: # 默認顯示效果爲: # 浩¹ 泃² 竘³ embeded_cands: - option_name: embeded_cands # 嵌入候選開關 - index_indicators: [ ¹, ², ³, ⁴, ⁵, ⁶, ⁷, ⁸, ⁹, ⁰ ] # 嵌入候選的序號顯示格式 - first_format: "${候選}${Comment}${Seq}" # 首選的渲染格式 - next_format: "${候選}${Comment}${Seq}" # 非首選的渲染格式 - separator: " " # 候選之間的分隔符 + option_name: embeded_cands # 嵌入候選開關 + index_indicators: [¹, ², ³, ⁴, ⁵, ⁶, ⁷, ⁸, ⁹, ⁰] # 嵌入候選的序號顯示格式 + first_format: "${候選}${Comment}${Seq}" # 首選的渲染格式 + next_format: "${候選}${Comment}${Seq}" # 非首選的渲染格式 + separator: " " # 候選之間的分隔符 # 自定義宏 yuhao_macro: funckeys: - macro: [ 0x2f ] # 當輸入串以 "/" 開頭時, 認爲是宏調用 + macro: [0x2f] # 當輸入串以 "/" 開頭時, 認爲是宏調用 macros: help: - { type: tip, name: ❖配置中心 } - - { type: switch, name: embeded_cands, states: [ ☐嵌入, ☑嵌入 ] } - - { type: switch, name: yuhao_single_char_only_for_full_code, states: [ ☐字詞, ☑純單 ] } - - { type: radio, names: [ yuhao_chaifen.off, yuhao_chaifen.lv1, yuhao_chaifen.lv2, yuhao_chaifen.lv3 ], states: [ ☐☐☐註解, ☑☐☐註解, ☐☑☐註解, ☐☐☑註解 ] } - - { type: switch, name: traditionalization, states: [ ☐簡保持, ☑簡轉繁 ] } - - { type: switch, name: simplification, states: [ ☐繁保持, ☑繁轉簡 ] } + - { type: switch, name: embeded_cands, states: [☐嵌入, ☑嵌入] } + - { + type: switch, + name: yuhao_single_char_only_for_full_code, + states: [☐字詞, ☑純單], + } + - { + type: radio, + names: + [ + yuhao_chaifen.off, + yuhao_chaifen.lv1, + yuhao_chaifen.lv2, + yuhao_chaifen.lv3, + ], + states: [☐☐☐註解, ☑☐☐註解, ☐☑☐註解, ☐☐☑註解], + } + - { type: switch, name: traditionalization, states: [☐簡保持, ☑簡轉繁] } + - { type: switch, name: simplification, states: [☐繁保持, ☑繁轉簡] } date: - { type: eval, name: ☀日期, expr: return os.date("%Y-%m-%d") } - { type: eval, name: ⛅年月日, expr: return os.date("%Y年%m月%d日") } @@ -221,15 +235,29 @@ yuhao_macro: - { type: eval, name: Ⓣ時間, expr: return os.date("%Y%m%d%H%M") } - { type: eval, name: Ⓢ時間戳, expr: return tostring(os.time()) } char: - - { type: switch, name: yuhao_single_char_only_for_full_code, states: [ ☐字詞, ☑純單 ] } + - { + type: switch, + name: yuhao_single_char_only_for_full_code, + states: [☐字詞, ☑純單], + } div: - - { type: radio, names: [ yuhao_chaifen.off, yuhao_chaifen.lv1, yuhao_chaifen.lv2, yuhao_chaifen.lv3 ], states: [ ☐☐☐註解, ☑☐☐註解, ☐☑☐註解, ☐☐☑註解 ] } + - { + type: radio, + names: + [ + yuhao_chaifen.off, + yuhao_chaifen.lv1, + yuhao_chaifen.lv2, + yuhao_chaifen.lv3, + ], + states: [☐☐☐註解, ☑☐☐註解, ☐☑☐註解, ☐☐☑註解], + } embed: - - { type: switch, name: embeded_cands, states: [ ☐嵌入, ☑嵌入 ] } + - { type: switch, name: embeded_cands, states: [☐嵌入, ☑嵌入] } trad: - - { type: switch, name: traditionalization, states: [ ☐不轉換, ☑簡轉繁 ] } + - { type: switch, name: traditionalization, states: [☐不轉換, ☑簡轉繁] } simp: - - { type: switch, name: simplification, states: [ ☐不轉換, ☑繁轉簡 ] } + - { type: switch, name: simplification, states: [☐不轉換, ☑繁轉簡] } dist: - type: eval expr: > @@ -287,8 +315,8 @@ key_binder: - { when: has_menu, accept: semicolon, send: 2 } # 分号次选 - { when: has_menu, accept: apostrophe, send: 3 } # 引号三选 - { when: has_menu, accept: Tab, send: 4 } # 製表符四选 - - { when: has_menu, accept: minus, send: Page_Up } #減號上翻頁 - - { when: has_menu, accept: equal, send: Page_Down } #等號下翻頁 + - { when: has_menu, accept: minus, send: Page_Up } #減號上翻頁 + - { when: has_menu, accept: equal, send: Page_Down } #等號下翻頁 recognizer: import_preset: default @@ -296,12 +324,11 @@ recognizer: uppercase: "^(?![`;]).*[A-Z][-_+.'0-9A-Za-z]*$" reverse_lookup: "^z([a-z]+?)*$" zaoci: "^[a-y]*`[a-y`]*$" - punct: '^/([0-9]0?|[A-Za-z]+)?$' + punct: "^/([0-9]0?|[A-Za-z]+)?$" style: horizontal: false inline_preedit: true preedit_type: preview - # menu: # page_size: 5 diff --git a/docs/learn.md b/docs/learn.md index 03dddf6..934afd9 100644 --- a/docs/learn.md +++ b/docs/learn.md @@ -34,7 +34,6 @@ language: zh 本教程中的「输入法」,特别指代上文中提到的第一阶段,亦即:用户将汉字,用一定规则,编成一串字母、数字、符号的组合,输入电脑中,并获得想要的汉字。 #### 输入法种类 - {: .no_toc } 输入法,根据其特点,一般分为三类 @@ -53,7 +52,6 @@ language: zh >因此,「宇浩」繁简通打输入法,是一种形码输入法。 #### 形码和音码的对比 - {: .no_toc } 形码输入法和拼音最大的区别,在于拼音输入法,知道读音,便能输入汉字。而形码输入法,知道写法,便能输入汉字。 @@ -88,10 +86,8 @@ language: zh 对于汉语使用者,拆字并不是一件陌生的事情。我们自小就学会将一个字拆成分离的部首,进行检索。大多数时候,这是非常直观的。 {: .example } ->比如: -> ->- 「部」字,大家会自然地将他拆分为「立口阝」三个部分。 ->- 「程」字,大家会自然地将他拆分为「禾口王」三个部分。 +「部」字,大家会自然地将他拆分为「立口阝」三个部分。 +「程」字,大家会自然地将他拆分为「禾口王」三个部分。 对于「宇浩」而言,大多数的字,也是这么拆分的。并且大多数的偏旁部首,也都是「字根」。所以恭喜你,对于大多数的汉字,你已经可以凭借直觉进行拆分了。 @@ -143,10 +139,8 @@ language: zh 我们将字根的键位画出来,这便是字根图。每一个键位上的大写字母,就是大码,是一群字根的「家」。而字根右下角的小写字母,则是小码,也就是单个字根的「姓名」。将大码和小码组合起来,就是一个字根的编码了。 {: .example } ->比如: -> ->- 「言」这个字根,在字母`U`的方框里,同时,右下角的字母是`a`,因此,它的编码就是`Ua`。 ->- 「其」这个字根,在字母`D`的方框里,同时,右下角的字母是`j`,因此,它的编码就是`Dj`。 +「言」这个字根,在字母`U`的方框里,同时,右下角的字母是`a`,因此,它的编码就是`Ua`。 +「其」这个字根,在字母`D`的方框里,同时,右下角的字母是`j`,因此,它的编码就是`Dj`。 字根图是查询字根的重要工具,初学者应当时常将它放在手边,以利用查询。 @@ -158,7 +152,6 @@ language: zh [![宇浩输入法宋体字根图](../image/yulight.png)](../image/yulight.png) #### 字根大码 - {: .no_toc } 光华方案中,字根大码是按照字根第一笔的笔画来制定的。同五笔一样,字根按照笔画分区。 @@ -203,7 +196,6 @@ language: zh >P 文门亦米走之底(辶chuò),病头(疒)麻穴衣字旁(衤)。 #### 字根小码 - {: .no_toc } 字根的小码,都是尽量从它汉语拼音包含的字母中选取。有以下规律: @@ -215,10 +207,8 @@ language: zh 3. 为了提升手感和双手互击,偶尔也使用 d f j k i e。如:八 Ti,辶 Pd,力 Xk。 {: .example } ->例如: -> ->- `米`,第一笔为「点」,故而它的大码在点区的`P`。小码为了便于记忆,选取声母`m`。 ->- `女`,第一笔为「折」,故而它的大码在折区的`C`。小码为了便于记忆,选取声母`n`。 + `米`,第一笔为「点」,故而它的大码在点区的`P`。小码为了便于记忆,选取声母`m`。 + `女`,第一笔为「折」,故而它的大码在折区的`C`。小码为了便于记忆,选取声母`n`。 {: .note } 我在这里使用大写和小写的拉丁字母,是为了区分大码和小码的概念,便于理解学习。在实际打字的过程中,不需要区分大小写。 @@ -229,7 +219,6 @@ language: zh [![yustar](../image/yustar.png)](../image/yustar.png) #### 字根大码 - {: .no_toc } 星陳方案中,拥有相似字形的字根会抱团出现,如郑码、徐码等。 @@ -267,7 +256,6 @@ language: zh | Y | 乙飛阝 | #### 字根小码 - {: .no_toc } 星陈方案使用强音托,字根小码 85% 以上情况下都是汉语拼音的第一个字母(yi 取 y,yu 取 v)。故而大部分的字根小码不用特别记忆,可以猜出来。 @@ -290,32 +278,26 @@ language: zh 先前说过,拆字,就是把汉字按照一定的规则,拆成唯一的字根组合。这个过程如同拼图一般,大多数时候,是非常直观而自然的。 {: .example } ->比如: -> ->- 部 = 立口阝 ->- 先 = ⺧儿 ->- 国 = 囗王丶 ->- 琴 = 王王人丶乛 +部 = 立口阝 +先 = ⺧儿 +国 = 囗王丶 +琴 = 王王人丶乛 这种将字拆成直观的、分离的部件的方法,足以应付大部分汉字的拆分了。但在实际使用中,遇到这个问题:一个独体字,本身不是字根,怎么办?这时候,我们要把它继续拆成更小的字根甚至笔划。 {: .example } ->比如: -> ->- 「戋」这个字,我们可以继续将它拆成「一」和「戈」。查字根图可知,「一」和「戈」正好是两个字根,拆字成功。 ->- 「丸」这个字,我们可以继续将它拆成「九」和「丶」。查字根图可知,「九」和「丶」正好是两个字根,拆字成功。 ->- 「朱」这个字,我们可以继续将它拆成「牛」和「八」。查字根图可知,「牛」和「八」正好是两个字根,拆字成功。 +「戋」这个字,我们可以继续将它拆成「一」和「戈」。查字根图可知,「一」和「戈」正好是两个字根,拆字成功。 +「丸」这个字,我们可以继续将它拆成「九」和「丶」。查字根图可知,「九」和「丶」正好是两个字根,拆字成功。 +「朱」这个字,我们可以继续将它拆成「牛」和「八」。查字根图可知,「牛」和「八」正好是两个字根,拆字成功。 有时候,独体字的拆分不是很直观。比如「再」拆成「王冂」两个字根。遇到此类字时的拆分,往往需要一些经验和练习。所以当你遇到不会拆的字时,应该主动查询它的编码,及时学习。 更麻烦的情况是,**一个字好像有几种拆分方法**。 {: .example } ->比如: -> ->- 「井」,可以拆「二{介下}」,也可以拆「一廾」。 ->- 「单」可以拆成「丷日十」也可以拆成「丷冂丰」。 ->- 「兰」可以拆成「䒑二」也可以拆成「丷三」。 +「井」,可以拆「二{介下}」,也可以拆「一廾」。 +「单」可以拆成「丷日十」也可以拆成「丷冂丰」。 +「兰」可以拆成「䒑二」也可以拆成「丷三」。 这种一字多拆的情况,任何形码中,都是希望避免的。因为一字多拆,会造成极大的不确定性,并造成编码的混乱。 @@ -336,10 +318,12 @@ language: zh 取根时,如果有多种不同的拆分方式,则按**优先级从高到低**依次检查以上规则,选取符合条件的,排除不满足的,最终得到唯一的拆分方案。因此,某种意义上来说,宇浩输入法的拆分规则,其实是一种「比较和淘汰」的排除法,[后文中会展示这些步骤的机器实现](#机器实现)。 -以下为规则详细介绍: - {: .note} -在进行拆分前,首先需要「确认」某个字根到底存不存在,是否合规,也就是检查字根的「内在属性」。比如「土」「士」,两横的长度直接决定了字根的异同,再比如「王」中间如果被笔画「穿心」,则不再是「王」。核心规则有三条:散件不分割、竖向不包夹、横间不穿心。这部分的讨论作为进阶内容,于此处跳过。若有兴趣,可以在后续章节阅读。 +在进行拆分前,首先需要「确认」某个字根到底存不存在,是否合规,也就是检查字根的「内在属性」。比如「土」「士」,两横的长度直接决定了字根的异同。 +其次需要检查一些「拆分禁手」,比如「王」中间如果被笔画「穿心」,这是不被允许的。禁手共有四条:散件不分割、竖向不包夹、横间不穿心、笔顺不交叉。 +对这两点的讨论作为进阶内容,于此处跳过。若有兴趣,可以在后续章节[《进阶讨论》](#进阶讨论)中阅读。 + +以下为拆分规则详细介绍: ### 字根最少 @@ -363,12 +347,10 @@ language: zh 这个原则的设置,是为了不过分破坏汉字的整体性和直观性。 {: .example } ->如: -> ->- 「昜」拆「日一勹彡」不拆「日丆𠃌彡」。 ->- 「万」拆成「一勹」而非「{一丿}乛」。 ->- 「单」可以拆成「丷日十」也可以拆成「丷冂丰」。两者都是三根,都完全「符合笔顺」。因为包围结构不拆散,故而「单」拆成「丷日十」。 ->- 「免」可以拆成「⺈口儿」也可以拆成「⺈冂尢」。两者都是三根,都完全「符合笔顺」。因为包围结构不拆散,故而「免」拆成「⺈口儿」。 +「昜」拆「日一勹彡」不拆「日丆𠃌彡」。 +「万」拆成「一勹」而非「{一丿}乛」。 +「单」可以拆成「丷日十」也可以拆成「丷冂丰」。两者都是三根,都完全「符合笔顺」。因为包围结构不拆散,故而「单」拆成「丷日十」。 +「免」可以拆成「⺈口儿」也可以拆成「⺈冂尢」。两者都是三根,都完全「符合笔顺」。因为包围结构不拆散,故而「免」拆成「⺈口儿」。 {: .note } >注意,拆分的优先级需要得到贯彻: @@ -388,57 +370,43 @@ language: zh 「散连交断」,优先级依次下降,但都排在「字根最少」「符合笔顺」「结构完整」之後。 {: .example } ->比如: -> ->- 「兰」可以拆成「䒑二」也可以拆成「丷三」。观察到,「䒑」的两点是同一横黏在一起的。拆成「丷三」,則兩個字根相連,拆成「䒑二」則兩個字根分散。後者符合「能散不连」。 ->- 「开」可以拆成「一廾」也可以拆成「二{介下}」。观察到,第一种拆法字根相连,第二种拆法字根相交。故而拆成「一廾」符合「能连不交」。 ->- 「果」拆作「日木」,不拆成「田木」,这是因为后者将中间的竖断开了。因为「字根相交」的优先级高于「笔画断开」,「果」应当拆成「日木」。 ->- 「我」拆作「丿扌戈」,不拆成「丿扌乚丿丶」。虽然前者将中间的横断开了,但因为「字根最少」的优先级大于「笔画断开」,我们选择只有三根的「丿扌戈」。 ->- 「熏」拆作「千黑」,不拆成「千囗丷二灬」。虽然前者将中间的竖断开了,但因为「字根最少」的优先级大于「笔画断开」,我们选择只有两根的「千黑」。 - - +「兰」可以拆成「䒑二」也可以拆成「丷三」。观察到,「䒑」的两点是同一横黏在一起的。拆成「丷三」,則兩個字根相連,拆成「䒑二」則兩個字根分散。後者符合「能散不连」。 +「开」可以拆成「一廾」也可以拆成「二{介下}」。观察到,第一种拆法字根相连,第二种拆法字根相交。故而拆成「一廾」符合「能连不交」。 +「果」拆作「日木」,不拆成「田木」,这是因为后者将中间的竖断开了。因为「字根相交」的优先级高于「笔画断开」,「果」应当拆成「日木」。 +「我」拆作「丿扌戈」,不拆成「丿扌乚丿丶」。虽然前者将中间的横断开了,但因为「字根最少」的优先级大于「笔画断开」,我们选择只有三根的「丿扌戈」。 +「熏」拆作「千黑」,不拆成「千囗丷二灬」。虽然前者将中间的竖断开了,但因为「字根最少」的优先级大于「笔画断开」,我们选择只有两根的「千黑」。 ### 字根取大 字根取大,指的是按照笔顺拆字时: -1. 让完全符合笔顺的部件尽可能地大。也就是说,只要其中某个字根多写一笔仍然符合笔顺,就多写一笔。 -2. 让非歪斜根尽可能地大。 -3. 让首笔靠前的字根尽可能地大。 - -「取大原则」,按定义,是一个兜底原则。它保证了最终只有一个候选方案能够胜出。一般而言,上述两条中的第三条比较常见。 + +- 让非歪斜根尽可能地大。 +- 让首笔靠前的字根尽可能地大。 -{: .example } ->比如: -> ->- 「井」拆成「二{齐下}」,而不拆成「一廾」,因为「字根取大」原则。让首笔靠前的字根的笔划数尽量地多,这里,「二」的笔画数大于「一」。 ->- 「美」拆为「䒑土大」,而不拆成「丷王大」,因为「字根取大」原则。让首笔靠前的字根的笔划数尽量地多,这里,「䒑」的笔画数大于「丷」。 +「取大原则」是一个兜底原则,配合「符合笔顺」原则,可以保证最终只有一个候选方案能够胜出。因此,「取大原则」的优先级必然是所有拆字规则中最低的。 -但有的时候,第一条也会被用到。这里以「妻」字举例。 +第一条只有一种场合会出现,那就是部分字根在做偏旁的时候,由于书法的考虑,会有「竖变撇」的变化。如:「千」字根的「丨」变成「丿」,「干」字根的「丨」变成「丿」,称为「歪斜根」。我们应当对非歪斜根取大。 {: .example } ->「妻」可以拆分为「十彐女」「キコ女」甚至「龶乛女」。我们按顺序检查规则,发现: -> ->- 三者都是三根。 ->- 「キコ女」的拆法中,前两根都不符合笔顺;但「十彐女」「龶乛女」的拆法中,有两根符合笔顺,淘汰「キコ女」。 ->- 「十彐女」「龶乛女」都存在相交。 ->- 结构合理都不适用。 ->- 我们最后检查「字根取大」规则。我们发现,两个字根是穿插书写的。根据规则,只要其中某个字根多写一笔仍然符合笔顺,就多写一笔。「十彐女」可以保证合笔顺的字根写了三笔。而「龶乛女」中,符合笔顺的字根只有一笔。因此「十彐女」胜出。 +「失」拆「丿夫」而不拆「牛乀」,因为「牛」的一竖是撇。故而对「夫」取大。 +「井」拆「二{介下}」而不拆「キ丨」,因为因为「キ」的一竖是撇。故而对{介下}取大。 +「缓」拆「纟爪干又」而不拆「纟爪二夂」。虽然前者「干」的竖是撇,但后者出现了「字根相交」。根据规则优先级,「字根相交」低于「字根相连」,故而拆为「纟爪干又」。 -第二条只有一种场合会出现,那就是部分字根有竖变撇的附属根。如:「千」字根的「丨」变成「丿」,「干」字根的「丨」变成「丿」,称为「歪斜根」。 +第二条比较常见。 {: .example } ->比如: +「井」拆成「二{齐下}」,而不拆成「一廾」,因为「字根取大」原则。让首笔靠前的字根的笔划数尽量地多,这里,「二」的笔画数大于「一」。 +「美」拆为「䒑土大」,而不拆成「丷王大」,因为「字根取大」原则。让首笔靠前的字根的笔划数尽量地多,这里,「䒑」的笔画数大于「丷」。 + + ### 机器实现 @@ -629,14 +597,12 @@ for div_i, div_j in permutation(divs, 2): # 俩俩取候选拆分比较 最后一条,只有双根字中会出现。第二条,只有三根字中会出现。 {: .example } ->举例说明: -> ->- 「嫩」字拆成〔女木口夂〕,分别对应了首根、二根、三根、末根,我们直接取〔女Cn 木Fv 口Lv 夂Eh〕四个字根的大码 CFLE 即可出字。 ->- 「整」字拆成〔木口夂一止〕,我们只取首根、二根、三根、末根,也就是〔木Fv 口Lv 攵Eh 止Ni〕的大码,输入 FLEN 即可出字。 ->- 「算」字拆成〔竹目卄〕,只有三根,所以我们取全部根,也就是〔𥫗Qk 目Mf 廾Sj〕的大码,即 QMS。此时,注意到不足四码,故而补上最末根的小码 o。输入 QMSj 即可出字。 ->- 「织」字拆成〔纟口八〕,只有三根,所以我们取全部根大码,也就是 VLT。此时,注意到不足四码,故而补上最末根的小码 b。输入 VLTi 即可出字。 ->- 「认」字拆成〔讠人〕,只有两根,所以我们取全部根,也就是〔讠Oa 人Te〕的大码,即 OT 。此时,注意到不足四码,故而补上最末根的小码 e。注意到仍然不足四码,于是再添上首根的小码 a。输入 OTea 即可出字。 ->- 「好」字拆成〔女子〕,只有两根,所以我们取全部根,也就是〔女Cn 子Vk〕的大码,即 CV。此时,注意到不足四码,故而补上最末根的小码 k。注意到仍然不足四码,于是再添上首根的小码 n。输入 CVkn 即可出字。 +「嫩」字拆成〔女木口夂〕,分别对应了首根、二根、三根、末根,我们直接取〔女Cn 木Fv 口Lv 夂Eh〕四个字根的大码 CFLE 即可出字。 +「整」字拆成〔木口夂一止〕,我们只取首根、二根、三根、末根,也就是〔木Fv 口Lv 攵Eh 止Ni〕的大码,输入 FLEN 即可出字。 +「算」字拆成〔竹目卄〕,只有三根,所以我们取全部根,也就是〔𥫗Qk 目Mf 廾Sj〕的大码,即 QMS。此时,注意到不足四码,故而补上最末根的小码 o。输入 QMSj 即可出字。 +「织」字拆成〔纟口八〕,只有三根,所以我们取全部根大码,也就是 VLT。此时,注意到不足四码,故而补上最末根的小码 b。输入 VLTi 即可出字。 +「认」字拆成〔讠人〕,只有两根,所以我们取全部根,也就是〔讠Oa 人Te〕的大码,即 OT 。此时,注意到不足四码,故而补上最末根的小码 e。注意到仍然不足四码,于是再添上首根的小码 a。输入 OTea 即可出字。 +「好」字拆成〔女子〕,只有两根,所以我们取全部根,也就是〔女Cn 子Vk〕的大码,即 CV。此时,注意到不足四码,故而补上最末根的小码 k。注意到仍然不足四码,于是再添上首根的小码 n。输入 CVkn 即可出字。 末尾添加首根的小码,只是为了补齐四码的作用,只有在双根字中才会出现。 @@ -648,13 +614,12 @@ for div_i, div_j in permutation(divs, 2): # 俩俩取候选拆分比较 - 附属字根,全码为四码:大码+小码+小码+小码 {: .example } ->代表字根举例: +>代表字根: > >- 「木」是代表字根,编码为 `Fvv`。 >- 「骨」是代表字根,编码为 `Mgg`。 - -{: .example } ->附属字根举例: +> +>附属字根: > >- 「長」、「镸」、「髟」被归为一个字根,由「長」统摄,所以「长」的编码为 `Haa`,「镸」的编码为 `Haaa`,「髟」的编码为 `Haaa`。 >- 「户」、「戶」、「戸」被归为一个字根,由「户」统摄,所以「户」的编码为 `Iee`,「戶」的编码为 `Ieee`,「戸」的编码为 `Ieee`。 @@ -704,10 +669,8 @@ for div_i, div_j in permutation(divs, 2): # 俩俩取候选拆分比较 一简字的编码,就是该字全码的第一个字母。 {: .example } ->比如: -> ->- 「我」全码为`〔丿扌戈・QAGg〕`,一级简码为`Q`。输入`Q_`即可实现上屏。 ->- 「的」全码为`〔白{⼓同月}丶・EWOd〕`,一级简码为`E`。输入`E_`即可实现上屏。 +「我」全码为`〔丿扌戈・QAGg〕`,一级简码为`Q`。输入`Q_`即可实现上屏。 +「的」全码为`〔白{⼓同月}丶・EWOd〕`,一级简码为`E`。输入`E_`即可实现上屏。 从A到Y排列,简体一级简码字分别是: @@ -723,13 +686,11 @@ for div_i, div_j in permutation(divs, 2): # 俩俩取候选拆分比较 二级简码字,又称**二简字**,指的是用两个字母为编码实现输入的汉字。「宇浩」中,有676个高频汉字设置为二简字,只要按下两个字母,加上空格,即可上屏。 -二简字的编码,就是该字全码的前两个字母。 +二简字的编码,就是该字全码的前两个字母。使用「光华」方案举例: {: .example } ->比如: -> ->- 「起」全码为`〔走己・DBjk〕`,二级简码为 `DB`。输入 `DB_` 即可实现上屏。 ->- 「可」全码为`〔丁口・ALvn〕`,二级简码为 `AL`。输入 `AL_` 即可实现上屏。 +「起」全码为`〔走己・DBjk〕`,二级简码为 `DB`。输入 `DB_` 即可实现上屏。 +「可」全码为`〔丁口・ALvn〕`,二级简码为 `AL`。输入 `AL_` 即可实现上屏。 @@ -753,35 +714,29 @@ for div_i, div_j in permutation(divs, 2): # 俩俩取候选拆分比较 ### 两字词 -两字词,取每个字**全码**的前两码即可。 +两字词,取每个字**全码**的前两码即可。使用「光华」方案举例: {: .example } ->比如: -> ->- 「人生」:「人」的编码为`〔人・Tee〕`,「生」的编码为`〔生・Wgg〕`。因此,「人生」的编码为`〔人生・TeWg〕`。 ->- 「事情」:「事」的编码为`〔{于下}口彐・ALXx〕`,「情」的编码为`〔心龶月・YHWy〕`。因此,「事情」的编码为`〔{于下}口心龶・ALYH〕`。 +「人生」:「人」的编码为`〔人・Tee〕`,「生」的编码为`〔生・Wgg〕`。因此,「人生」的编码为`〔人生・TeWg〕`。 +「事情」:「事」的编码为`〔{于下}口彐・ALXx〕`,「情」的编码为`〔心龶月・YHWy〕`。因此,「事情」的编码为`〔{于下}口心龶・ALYH〕`。 ### 三字词 -三字词,取前两字的第一码,和第三个字的前两码即可。 +三字词,取前两字的第一码,和第三个字的前两码即可。使用「光华」方案举例: {: .example } ->比如: -> ->- 「泡泡糖」:「泡」的编码为`〔氵月巳・IWXk〕`,「糖」的编码为`〔米广又古・PUBD〕`。因此,「泡泡糖」的编码为`〔氵氵米广・IIPU〕`。 ->- 「星期三」:「星」的编码为`〔日生・JWgr〕`,「期」的编码为`〔其月・DWyj〕`,「三」的编码为`〔三・Faa〕`。因此,「星期三」的编码为`〔日其三・JDFa〕`。 +「泡泡糖」:「泡」的编码为`〔氵月巳・IWXk〕`,「糖」的编码为`〔米广又古・PUBD〕`。因此,「泡泡糖」的编码为`〔氵氵米广・IIPU〕`。 +「星期三」:「星」的编码为`〔日生・JWgr〕`,「期」的编码为`〔其月・DWyj〕`,「三」的编码为`〔三・Faa〕`。因此,「星期三」的编码为`〔日其三・JDFa〕`。 ### 四字词及以上 -四字词及以上,取前三字的第一码,和最后一个字的第一码即可。 +四字词及以上,取前三字的第一码,和最后一个字的第一码即可。使用「光华」方案举例: {: .example } ->比如: -> ->- 「狐假虎威」:「狐」的编码为`〔犭瓜・RQuq〕`,「假」的编码为`〔亻尸二又・EBSB〕`,「虎」的编码为`〔虎・Muu〕`,「威」的编码为`〔戊一女・DFCn〕`。因此,「狐假虎威」的编码为`〔犭亻虎戊・REMD〕`。 ->- 「中华人民共和国」:这是一个七字词,所以我们只看前三字和最后一字「中」、「华」、「人」、「国」。「中」的编码为`〔口丨・LMsv〕`,「华」的编码为`〔亻匕十・ERDi〕`,「人」的编码为`〔人・Te〕`,「国」的编码为`〔囗王丶・NGOd〕`。因此,「中华人民共和国」的编码为`〔口亻禾囗・LERN〕`。 +「狐假虎威」:「狐」的编码为`〔犭瓜・RQuq〕`,「假」的编码为`〔亻尸二又・EBSB〕`,「虎」的编码为`〔虎・Muu〕`,「威」的编码为`〔戊一女・DFCn〕`。因此,「狐假虎威」的编码为`〔犭亻虎戊・REMD〕`。 +「中华人民共和国」:这是一个七字词,所以我们只看前三字和最后一字「中」、「华」、「人」、「国」。「中」的编码为`〔口丨・LMsv〕`,「华」的编码为`〔亻匕十・ERDi〕`,「人」的编码为`〔人・Te〕`,「国」的编码为`〔囗王丶・NGOd〕`。因此,「中华人民共和国」的编码为`〔口亻禾囗・LERN〕`。 ### 词语输入的优缺点 @@ -828,70 +783,65 @@ for div_i, div_j in permutation(divs, 2): # 俩俩取候选拆分比较 何为字根的内在属性?其实就是指某一个字根区别于另一个字根的内在特点。 {: .example } -用例子说明:「吉」拆成「士口」而不是「土口」,这是因为「土」的下面一笔更长,而「士」的下面一笔更短。这是区别两个字根的本质原因和内在属性。 +「吉」拆成「士口」而不是「土口」,这是因为「土」的下面一笔更长,而「士」的下面一笔更短。这是区别两个字根的本质原因和内在属性。 「内在属性」可以解释为什么有些字这样拆而不是那样拆,有些字为什么看上去违反了「字根最少」的原则。 {: .example } -用例子说明:「敝」拆为「丷巾八攵」而非「氺巾攵」,这看似违反了「字根最少」原则,但其实没有。注意到,「敝」字左下的笔画是撇不是提;在「氺」中,左下角的笔画是提不是撇。故而,「敝」字里并不存在「氺」字根。正因为如此,我们取四根「丷巾八攵」而非三根「氺巾攵」。 +「敝」拆为「丷巾八攵」而非「氺巾攵」,这看似违反了「字根最少」原则,但其实没有。注意到,「敝」字左下的笔画是撇不是提;在「氺」中,左下角的笔画是提不是撇。故而,「敝」字里并不存在「氺」字根。正因为如此,我们取四根「丷巾八攵」而非三根「氺巾攵」。 -在这个章节,我们就详细讨论字根的内在属性,从而让某些字的拆分原因更加明确。 +在这个章节,我们就详细讨论字根的内在属性,讨论某些字根在宇浩拆分中被分离或者被合并的原因,从而让某些字的拆分原因更加明确。 -#### 散件不分割 +#### 日曰之辨 {: .no_toc } -有一部分字根,本身存在离散的部件,比如「戈」字右上的点、「犬」字的右上的点、「三」字的三个横等等。为了保证拆字的直观,保证检字(尤其是大字集下)的便捷性,我们需要对字根的连续性做出要求,并将它认定为字根的内在属性。 +不少输入法对与「日」「曰」两字的区分,比较复杂。大概有两种情况: -字根的连续性定义如下: +- 有些是基于形状的,凡是长大于高的都为「曰」,凡是长短于高的都为「日」。但这个方法会跟随着字体的不同而不同,有时候不合字源,也不统一。例如:「書」字源于「聿者」,徐码中「書」下为「曰」,但「者」下为「日」,取码不统一。「曹」古字为「东东口」。在徐码中,「曹」下为「日」,不符合字源。 +- 另外一种区分方法是基于字源。也就是说:凡是在古文中作「口」形,之后隶变为「曰」形或「甘」形的字,都作「曰」。但这个方法对方一般的使用者难度太大,且分析字源会有疏漏之处,不应用于输入法。 -一个字根的离散部件,不可被全包围结构或半包围结构分割。被分割的两个部件不得视为一个字根。 +我们必须注意到,在汉字中,存在「日曰」对立的字形,只有三组,分别为:「日曰」、「汨汩」、「曶㫚」。在其他的情况下,不存在对立,也就不存在混淆问题。 -{: .example } ->例如: -> ->- 「为」字的两点不可以被视为字根「两点」,因为它们被半包围结构分割。 ->- 「曵」字不拆「囗戈」而拆成「电丿丶」,因为「戈」字右上方的点被全包围结构分割。 +因此,我基于**实用主义**原则,对这两个字根不多加以区分,而采取更简单的方法。即:除了上述三组对立情况外,全部取「日」根。换句话说,「曰」根只需要在对立情况下才会使用,包括:「曰」「汩」「㫚」三个字。 + +这样一来,可以显著降低使用者的记忆和学习负担。 -#### 竖向不包夹 +#### 勹𠂊之辨 {: .no_toc } -不少字根中存在若干分散的部件,比如: +「旬」的外框「勹」,同「敖」左下的「𠂊」都是撇加横折钩。宇浩输入法不做区分。 -- 「二」和「三」中的横画是分离的。 -- 「合」分为了「一」「一」「口」三个部分。 -- 「儿」分为了「丿」「乚」两个部分。 + +#### 点 -这给了它们包夹其他字根的可能。如「亘」可看成「二」包夹「日」。 +{: .no_toc } -为了防止拆分不直观,我们做出规定,一个字根**可以横向包夹,但不能纵向包夹**,例如: +这里对「点」的拆分作出解释: -- 卿 = 卯彐厶 -- 胤 = 儿幺月 -- 亘 = 一日一 -- 僵 = 亻一田一田一 +- 单点和捺视为一个字根。 +- 相重叠的两点,即「头」「冬」中的部分,同「二」。 +- 左对点「冫」和右对点「飞右」,同「二」。故而「兆」拆为「儿二二」。 +- 下对点「八」在一个大码。 +- 其他对点「丷」「䒑」「⺦」「リ」在一个大码。 +- 所有三点都在一个大码。 +- 所有四点都在一个大码。 -这是因为,汉字的左右对称多于上下对称。左右包夹是可预测的,但上下包夹往往不可预测,必须要观察到最下方。比如,某些输入法设置了「衣」字根,但「亠」和「𧘇」的出现并不总是成对的,必须看到最下方才能正确判断。 +「为」「卵」等字的两点和「冬」下的两点不同,相隔太远,且被半包围或全包围分割,故而不认定为「两点」。 -#### 横间不穿心 +#### 人八入之辨 {: .no_toc } -为了使拆分更加直观,符合笔顺,防止字根交叉粘连,我们规定: - -「工土士干千禾キ王壬龶丰末未生古矢缶早羊虫」等字根不允许在「一一」间穿插(交)其他字根。 - -这个规定在常用字中比较少用。列举如下: +「人」「八」「入」三字易混,这里做出区分: -- 「再」不拆「王冂」,而拆「一冂土」 -- 「垂」不拆「壬龷」,而拆「丿𠀎丄」 -- 「華」不拆「艹干龷」,而拆「艹𠀎十」 -- 「夀」不拆「龶乛口口寸」,而拆「二乛口丄口寸」 -- 「禹」不拆「丿虫冂」,而拆「丿口冂<丄丶>」 +- 凡左撇不低于右捺,作「人」。 +- 凡左撇低于右捺,作「入」。 +- 凡左撇右捺分离,或者中间被其他笔画隔开,作「八」。 #### 口中无整画 @@ -903,71 +853,80 @@ for div_i, div_j in permutation(divs, 2): # 俩俩取候选拆分比较 答案是,如果方框里有**完整**的笔画,用「囗」`wéi`。否则一律用「口」`kǒu`。 {: .example } ->例如: -> ->- 「国」字中,有完整的笔画,故而必须用「囗」`wéi`。 ->- 「中」字中,虽然「⼁」穿「口」而过,但并未被完全包含在「口」中。由于「口」中没有完整的笔画,故而用「口」`kǒu`。 +「国」字中,有完整的笔画,故而必须用「囗」`wéi`。 +「中」字中,虽然「⼁」穿「口」而过,但并未被完全包含在「口」中。由于「口」中没有完整的笔画,故而用「口」`kǒu`。 此规定也适用于另外两个包含「口」的字根: - 「古」下的「口」中如果包含完整的笔画,应该拆如「十囗」。例如:「鄙」左下方的「口」中有「口」,故而应该拆成「口十囗口阝」。 - 「合」下的「口」中如果包含完整的笔画,应该拆如「人一囗」。例如:「會」中間的「口」中有「小」,故而应该拆成「人一𫩏丷日」。 - - +拆分之「禁手」,指的是无论任何时候都不应当出现一些拆分情形。它高于一切拆分规则。一旦某一个拆分候选中出现了「禁手」,则直接淘汰。禁手共有四条:散件不分割、竖向不包夹、横间不穿心、笔顺不交叉。 -#### 日曰之辨 +#### 散件不分割 {: .no_toc } -不少输入法对与「日」「曰」两字的区分,比较复杂。大概有两种情况: - -- 有些是基于形状的,凡是长大于高的都为「曰」,凡是长短于高的都为「日」。但这个方法会跟随着字体的不同而不同,有时候不合字源,也不统一。例如:「書」字源于「聿者」,徐码中「書」下为「曰」,但「者」下为「日」,取码不统一。「曹」古字为「东东口」。在徐码中,「曹」下为「日」,不符合字源。 -- 另外一种区分方法是基于字源。也就是说:凡是在古文中作「口」形,之后隶变为「曰」形或「甘」形的字,都作「曰」。但这个方法对方一般的使用者难度太大,且分析字源会有疏漏之处,不应用于输入法。 +有一部分字根,本身存在离散的部件,比如「戈」字右上的点、「犬」字的右上的点、「三」字的三个横等等。为了保证拆字的直观,保证检字(尤其是大字集下)的便捷性,我们需要对字根的连续性做出要求,并将它认定为字根的内在属性。 -我们必须注意到,在汉字中,存在「日曰」对立的字形,只有三组,分别为:「日曰」、「汨汩」、「曶㫚」。在其他的情况下,不存在对立,也就不存在混淆问题。 +字根的连续性定义如下: -因此,我基于**实用主义**原则,对这两个字根不多加以区分,而采取更简单的方法。即:除了上述三组对立情况外,全部取「日」根。换句话说,「曰」根只需要在对立情况下才会使用,包括:「曰」「汩」「㫚」三个字。 +一个字根的离散部件,不可被全包围结构或半包围结构分割。被分割的两个部件不得视为一个字根。 -这样一来,可以显著降低使用者的记忆和学习负担。 +{: .example } +「为」字的两点不可以被视为字根「两点」,因为它们被半包围结构分割。 +「曵」字不拆「囗戈」而拆成「电丿丶」,因为「戈」字右上方的点被全包围结构分割。 -#### 勹𠂊之辨 +#### 竖向不包夹 {: .no_toc } -「旬」的外框「勹」,同「敖」左下的「𠂊」都是撇加横折钩。宇浩输入法不做区分。 +不少字根中存在若干分散的部件,比如: - -#### 点 +- 「二」和「三」中的横画是分离的。 +- 「合」分为了「一」「一」「口」三个部分。 +- 「儿」分为了「丿」「乚」两个部分。 -{: .no_toc } +这给了它们包夹其他字根的可能。如「亘」可看成「二」包夹「日」。 -这里对「点」的拆分作出解释: +为了防止拆分不直观,我们做出规定,一个字根**可以横向包夹,但不能纵向包夹**。 -- 单点和捺视为一个字根。 -- 相重叠的两点,即「头」「冬」中的部分,同「二」。 -- 左对点「冫」和右对点「飞右」,同「二」。故而「兆」拆为「儿二二」。 -- 下对点「八」在一个大码。 -- 其他对点「丷」「䒑」「⺦」「リ」在一个大码。 -- 所有三点都在一个大码。 -- 所有四点都在一个大码。 +{: .example } +卿 = 卯彐厶 +胤 = 儿幺月 +亘 = 一日一 +僵 = 亻一田一田一 -「为」「卵」等字的两点和「冬」下的两点不同,相隔太远,且被半包围或全包围分割,故而不认定为「两点」。 +这是因为,汉字的左右对称多于上下对称。左右包夹是可预测的,但上下包夹往往不可预测,必须要观察到最下方。比如,某些输入法设置了「衣」字根,但「亠」和「𧘇」的出现并不总是成对的,必须看到最下方才能正确判断。 -#### 人八入之辨 +#### 横间不穿心 {: .no_toc } -「人」「八」「入」三字易混,这里做出区分: +为了使拆分更加直观,符合笔顺,防止字根交叉粘连,我们规定: -- 凡左撇不低于右捺,作「人」。 -- 凡左撇低于右捺,作「入」。 -- 凡左撇右捺分离,或者中间被其他笔画隔开,作「八」。 +「工土士干千禾キ王壬龶丰末未生古矢缶早羊虫」等字根不允许在「一一」间穿插(交)其他字根。 + +这个规定在常用字中比较少用。列举如下: + +- 「再」不拆「王冂」,而拆「一冂土」 +- 「垂」不拆「壬龷」,而拆「丿𠀎丄」 +- 「華」不拆「艹干龷」,而拆「艹𠀎十」 +- 「夀」不拆「龶乛口口寸」,而拆「二乛口丄口寸」 +- 「禹」不拆「丿虫冂」,而拆「丿口冂<丄丶>」 + +#### 两根不四分 + +两个字根 A 和 B。可以先写 A 的一部分,再写 B,再写 A 剩下的一部分。但不允许两个字根分四次写成。这是因为笔画过于交织的拆分方案往往不直观。 + +{: .example } +「華」字不拆「艹丌丰」,因为先写了「丌」的横,再写了「丰」的横,再写完「丌」剩下的两竖,再写完「丰」剩下的笔画。两根字根分成了四个部分。 +「曵」字不拆「囗戈」,因为先写了「口」的「冂」,再写了「戈」的横,再写完「口」剩下的一竖,再写完「戈」剩下的笔画。两根字根分成了四个部分。 ## 脚注 diff --git a/docs/updates.md b/docs/updates.md index a1db2ae..95aebf6 100644 --- a/docs/updates.md +++ b/docs/updates.md @@ -33,11 +33,11 @@ nav_order: 88 - 阝Pf -> Yf - 寸 Hc -> Kc -- 予 Ky -> Kv,取 ǖ 音 +- 予 Ky -> Kv,取 ü 音 - 亦 Ty -> Ti,取 yì 音 - 牙 Hy -> Ha,取 yá 音 -- 禺 Vy -> Vv,取 ǖ 音,現在所有 yū 小碼都取 v -- 雨 Cy -> Cv,取 ǖ 音,現在所有 yǘ 小碼都取 v +- 禺 Vy -> Vv,取 ü 音,現在所有 yü 小碼都取 v +- 雨 Cy -> Cv,取 ü 音,現在所有 yü 小碼都取 v - 臣 He -> Hc,取 chén 聲 - 己 Oi -> Oj,取 jǐ 聲 - 已 Ov -> Oi,取 yǐ 音 @@ -50,6 +50,20 @@ nav_order: 88 六、修改大字集下一大批錯誤的拆分,主要是擴區的字(感謝 @後天 校正)。 +編碼發生改變的漢字如下: +至 GB0 改變 11 个: 丝咝唾垂捶棰睡缍锤陲鸶 +至 GBK 改變 36 个: 倕厜嘩埵墷娷嬅崋崜撶曄曅樺涶澕燁璍甀皣瞱硾箠綞腄菙華諈譁躖郵錘鏵鞾韡驊鷨 +至 CJK 改變 0 个: +至 CJK-A 改變 21 个: 㔿㙿㠏㡢㦊㩾㬅㰜㴴㵮㷸㻔䅜䅿䊨䍋䙴䮔䮧䱁䳠 +至 CJK-B 改變 514 个: 𠀈𠀍𠀛𠀭𠁅𠁲𠁿𠂁𠂨𠃎𠃛𠃴𠄓𠄖𠄷𠅁𠅕𠅺𠆉𠆦𠉪𠋃𠋓𠌋𠎑𠎜𠒃𠒅𠔃𠔛𠔜𠗛𠗱𠘵𠘺𠘽𠙙𠙚𠙯𠙿𠚎𠚓𠚔𠚙𠚚𠚜𠚞𠜫𠝅𠝠𠝶𠟱𠟵𠠤𠠥𠢰𠦒𠦣𠦶𠦺𠧟𠧠𠧡𠧱𠧴𠨀𠨅𠨔𠪕𠪳𠫓𠫙𠬍𠭩𠳆𠴬𠴺𠵧𠵭𠶁𠷃𠷍𠷭𠹉𠺂𠻔𠿐𠿽𡁰𡂦𡆓𡆵𡋁𡍑𡍕𡐪𡐱𡐽𡑈𡑦𡒿𡓬𡔝𡖍𡖽𡘼𡙇𡙞𡚏𡝤𡝥𡞊𡟤𡟧𡡎𡡨𡢌𡢚𡢣𡣍𡥢𡩇𡪤𡳿𡸬𡺎𡺒𡾍𡿮𢀓𢀯𢀺𢁄𢄕𢄛𢆸𢇍𢍴𢎱𢏒𢏩𢏲𢏴𢏽𢔝𢕃𢘼𢙦𢛀𢛉𢛐𢛲𢜖𢠀𢢔𢤏𢦍𢦐𢦑𢦒𢦫𢧟𢧠𢧬𢧰𢧸𢧹𢧼𢨆𢨏𢨚𢨢𢭣𢮕𢯇𢰍𢴃𢶔𢺬𢻩𢽆𢽫𢾣𢿙𣂩𣂱𣅏𣅞𣆄𣆜𣇓𣇦𣈰𣊜𣌪𣍄𣏋𣐰𣒭𣓪𣔎𣕺𣖈𣖴𣗭𣙒𣜄𣟦𣠬𣡅𣣸𣤀𣤦𣥫𣥼𣧺𣨚𣪸𣫅𣬔𣮇𣮯𣰓𣰝𣰟𣳋𣴁𣴮𣵊𣵍𣶿𣷈𣷢𣺓𣼿𤅘𤆴𤇟𤈮𤉢𤉬𤊪𤋅𤎵𤎸𤐻𤒮𤓀𤕋𤗊𤗕𤗣𤘍𤚊𤞹𤟕𤡶𤢞𤦡𤦴𤨔𤨜𤩤𤪎𤯶𤰃𤰍𤰑𤲐𤷣𤽄𤽆𤽪𥀤𥁘𥄁𥇱𥈃𥎨𥎲𥒩𥔉𥕾𥚝𥚪𥛵𥜨𥝌𥟮𥠻𥡞𥡭𥡽𥥢𥧻𥭣𥭰𥭱𥮞𥮧𥮪𥰀𥵀𥶺𥸖𥹻𥺳𥻯𥼢𥽿𥾬𦀱𦁚𦁛𦁟𦂝𦄡𦄴𦅠𦆅𦇓𦇡𦇽𦈮𦈼𦊷𦐷𦓐𦔨𦖋𦘙𦘚𦙃𦙐𦚯𦚿𦛹𦜈𦜫𦝖𦝠𦟀𦠜𦢼𦣔𦣽𦤴𦥒𦥓𦥢𦥮𦥺𦥻𦧢𦨺𦪠𦪲𦪺𦬝𦭢𦭩𦮆𦮒𦯤𦯧𦯭𦯵𦱫𦱳𦲩𦲭𦵵𦶷𦶻𦸙𦸩𦺯𦽍𦽦𦾏𦿥𧀈𧃹𧈞𧌯𧏁𧑍𧔒𧖵𧘾𧚝𧚦𧛳𧜸𧝌𧠁𧡹𧤄𧤇𧤉𧦆𧦙𧨯𧩑𧪺𧬒𧬿𧯽𧳱𧵯𧽱𧾫𧿋𧿪𨁻𨃋𨅯𨆨𨇔𨉡𨒾𨓫𨔠𨗤𨘅𨙔𨛚𨜎𨝞𨠾𨡠𨣄𨥢𨧲𨧵𨨂𨩹𨩻𨬀𨬁𨬋𨬘𨬨𨬭𨭅𨭜𨮚𨮩𨱗𨲉𨳇𨳈𨵣𨶱𨶼𨸏𨸥𨸷𨸿𨹇𨺀𨺞𨺫𨺵𨻏𨻪𨻿𨼕𨼙𨿠𩀵𩀹𩁢𩃊𩃒𩄥𩆹𩇂𩇤𩈞𩋑𩌷𩍗𩍞𩏎𩏧𩖂𩗰𩜀𩝜𩞳𩢏𩣷𩦧𩧣𩩞𩭦𩮉𩵜𩷮𩸟𩸠𩸫𩹑𩺒𩻠𩻮𩼐𪏥𪑘𪒣𪔂𪚩𪚳 +至 CJK-C 改變 82 个: 𪝊𪝫𪝱𪞇𪟆𪟢𪟥𪠉𪠜𪠻𪡆𪡉𪡔𪡟𪡢𪡲𪡷𪡽𪢁𪢙𪣰𪤲𪤵𪤸𪥥𪧡𪩓𪩠𪫶𪭚𪮌𪯃𪱧𪲯𪴂𪶊𪶳𪹎𪹝𪺈𪼯𪽜𪿸𫀛𫁚𫁯𫃯𫃺𫆡𫆩𫆯𫆰𫆻𫉍𫉝𫉫𫉼𫌎𫎚𫎣𫎾𫏸𫑀𫑯𫑱𫑼𫓕𫓤𫔸𫕖𫕛𫕼𫖍𫘀𫘓𫙀𫙃𫙡𫙢𫙯𫛆𫛓 +至 CJK-D 改變 7 个: 𫝃𫝖𫝸𫝽𫝾𫟒𫠕 +至 CJK-E 改變 109 个: 𫡊𫡋𫡐𫡒𫡓𫡔𫢁𫢩𫢱𫢳𫢻𫢿𫣎𫤗𫤘𫤰𫤲𫥇𫥡𫥧𫧁𫧼𫩉𫪢𫪯𫬋𫬯𫱍𫲒𫳵𫴬𫴺𫵌𫶯𫶰𫶴𫺧𫺳𫻴𫻶𫽻𫾂𫿎𫿠𫿹𬁉𬁍𬂆𬂇𬂍𬃅𬃺𬄫𬅜𬉫𬊓𬊟𬊪𬋾𬍿𬎷𬎾𬏘𬐪𬑩𬒢𬒸𬒼𬓓𬓗𬓡𬓭𬔨𬖩𬗢𬘁𬙞𬚠𬚦𬛼𬝴𬟈𬟓𬟠𬠸𬠺𬡞𬡢𬢻𬥉𬦃𬦍𬧻𬨕𬪄𬪽𬫩𬫹𬬃𬮷𬯓𬯗𬯝𬱅𬳖𬴬𬵹𬸉𬹴 +至 CJK-F 改變 132 个: 𬻇𬻈𬻞𬻟𬻥𬻴𬻻𬼓𬼵𬽘𭀠𭁈𭁉𭂾𭄃𭅃𭅅𭅟𭆫𭆬𭈬𭉘𭌟𭏀𭐅𭐈𭒑𭒧𭓇𭓗𭓛𭔉𭔑𭕠𭕩𭘲𭙑𭙣𭜎𭜘𭜱𭞅𭟶𭡑𭡝𭢅𭢾𭤏𭤪𭦗𭦦𭩠𭪱𭪽𭬢𭭪𭯍𭯸𭰅𭰉𭱩𭲀𭲤𭴺𭶲𭸂𭺮𭽂𭽶𭾆𭾋𭾏𭿆𭿥𮁶𮃒𮃘𮃦𮄇𮆔𮈺𮊫𮌮𮍌𮍍𮍐𮍒𮎵𮎷𮎽𮎿𮏌𮏒𮐀𮑩𮓗𮓟𮓩𮔔𮗘𮗙𮙂𮙘𮛸𮛺𮝛𮝾𮟃𮠚𮠽𮣚𮥃𮥧𮥹𮦱𮨈𮩎𮫖𮫣𮫦𮫧𮫨𮫩𮫪𮫫𮭐𮮠𮮩𮮺𮮻𮮼𮮽 +至 CJK-G 改變 24 个: 𰀵𰀾𰁐𰑉𰕙𰗌𰦏𰪚𰪨𰭼𰮑𰮨𰯒𰴄𰵶𰷍𰷾𰻾𱀉𱀓𱀘𱀭𱀳𱁃 +至 CJK-H 改變 47 个: 𱎁𱏜𱐞𱐤𱑏𱒡𱔾𱗼𱜢𱜣𱡮𱢣𱢲𱥽𱥾𱦹𱧄𱧽𱨉𱨣𱨪𱪺𱫘𱬱𱭆𱭕𱮃𱯅𱯊𱰜𱰰𱲩𱵮𱷙𱷝𱺂𱻫𱾴𱾹𲄈𲆚𲈳𲈴𲉐𲉔𲉖𲉙 +至 CJK-I 改變 5 个: 𮱱𮱻𮵉𮶺𮶻 + ### 2023年11月27日 農曆十月十五望,v3.3.0 正式版發佈。 diff --git a/image/yustar.png b/image/yustar.png index 77a2307..8d08bce 100644 Binary files a/image/yustar.png and b/image/yustar.png differ