├── README.md ├── zhung.dict.yaml ├── zhung.schema.yaml ├── zhung_42.schema.yaml ├── zhung_combo.schema.yaml ├── zhung_combo_transcript.schema.yaml ├── zhung_stenotype.schema.yaml └── zhung_transcript.schema.yaml /README.md: -------------------------------------------------------------------------------- 1 | # 中原官話 2 | 3 | 配方: ℞ **lotem/rime-zhung** 4 | 5 | [Rime](http://rime.im) 中原官話輸入方案 6 | 7 | ## 簡介 8 | 9 | 漢字讀音依照中原官話·鄭州老派口音, 10 | 收錄部分合音詞、兒化韻、子變韻及動詞變韻 11 | 12 | 碼表採用【中州羅馬字】拼寫法 13 | 14 | 鍵盤佈局可選用羅馬字、注音、宮保拼音、打字速記等 15 | 16 | ## 安裝 17 | 18 | [東風破](https://github.com/rime/plum) 安裝口令: `bash rime-install lotem/rime-zhung` 19 | -------------------------------------------------------------------------------- /zhung.schema.yaml: -------------------------------------------------------------------------------- 1 | # Rime schema 2 | # encoding: utf-8 3 | 4 | schema: 5 | schema_id: zhung 6 | name: 中州羅馬字 7 | version: "0.5" 8 | author: 9 | - 佛振 10 | description: | 11 | 老派鄭州話 12 | 採用《中州羅馬字》拼音方案 13 | 14 | switches: 15 | - name: ascii_mode 16 | reset: 0 17 | states: [ 中文, 西文 ] 18 | - name: full_shape 19 | states: [ 半角, 全角 ] 20 | - name: simplification 21 | states: [ 漢字, 汉字 ] 22 | 23 | engine: 24 | processors: 25 | - ascii_composer 26 | - recognizer 27 | - key_binder 28 | - speller 29 | - punctuator 30 | - selector 31 | - navigator 32 | - express_editor 33 | segmentors: 34 | - ascii_segmentor 35 | - matcher 36 | - abc_segmentor 37 | - punct_segmentor 38 | - fallback_segmentor 39 | translators: 40 | - punct_translator 41 | - r10n_translator 42 | - reverse_lookup_translator 43 | filters: 44 | - simplifier 45 | - uniquifier 46 | 47 | speller: 48 | alphabet: 'zyxwvutsrqponmlkjihgfedcba:;<,/\' 49 | initials: zyxwvutsrqponmlkjihgfedcba 50 | delimiter: " '" 51 | algebra: 52 | - derive/^wu(.+)$/we$1/ 53 | - derive/^w/v/ 54 | - abbrev/^([a-z]).+$/$1/ 55 | - abbrev/^([zcs]h).+$/$1/ 56 | - derive/^rh/r/ 57 | - derive/^([jqx])([aeou])/$1i$2/ 58 | - derive/eo(\d?)$/oe$1/ 59 | - derive/([aeiou])ng(\d?)$/$1gn$2/ 60 | - derive/([iu])a(l|ng?)(\d?)$/a$1$2$3/ 61 | - derive/^([a-z]+)\d$/$1/ 62 | - 'xlit 1234 : 10 | description: | 11 | 老派鄭州話 12 | 以注音符號錄入! 13 | 14 | switches: 15 | - name: ascii_mode 16 | reset: 0 17 | states: [ 中文, 西文 ] 18 | - name: full_shape 19 | states: [ 半角, 全角 ] 20 | - name: simplification 21 | states: [ 漢字, 汉字 ] 22 | 23 | engine: 24 | processors: 25 | - ascii_composer 26 | - recognizer 27 | - key_binder 28 | - speller 29 | - punctuator 30 | - selector 31 | - navigator 32 | - fluency_editor 33 | segmentors: 34 | - ascii_segmentor 35 | - matcher 36 | - abc_segmentor 37 | - punct_segmentor 38 | - fallback_segmentor 39 | translators: 40 | - punct_translator 41 | - r10n_translator 42 | filters: 43 | - simplifier 44 | - uniquifier 45 | 46 | menu: 47 | alternative_select_keys: "ABCDEFGHIJ" 48 | 49 | speller: 50 | alphabet: '1qaz`2wsxedcrfv5tgbyhnujm8ik,9ol.0p;/- 6347' 51 | initials: '1qaz`2wsxedcrfv5tgbyhnujm8ik,9ol.0p;/-' 52 | finals: " 6347" 53 | delimiter: "'" 54 | use_space: true 55 | algebra: 56 | - xform/^yi?/i/ 57 | - xform/^wu?/u/ 58 | - xform/^([jqx])([^i])/$1i$2/ 59 | - xform/ui/uei/ 60 | - xform/([iu])n/$1en/ 61 | - xform/^zhy?/Z/ 62 | - xform/^chy?/C/ 63 | - xform/^shy?/S/ 64 | - xform/^rhy?/R/ 65 | - xform/^([zcs])y/$1/ 66 | - xform/iu/Y/ 67 | - xform/eo/O/ 68 | - xform/ai/I/ 69 | - xform/ei/E/ 70 | - xform/au/A/ 71 | - xform/ou/U/ 72 | - xform/ang/K/ 73 | - xform/eng/G/ 74 | - xform/an/M/ 75 | - xform/en/N/ 76 | - xform/el/L/ 77 | - xform/([aoAU])l/$1L/ 78 | - derive/^(u\d?)$/v$1/ 79 | - derive/^u([aAMNK])/v$1/ 80 | - abbrev/^([bpmfvdtnlgkhjqxZCSRzcs]).+$/$1/ 81 | - derive/^([A-Za-z]+)\d$/$1/ 82 | - derive/^([jqx])i([A-Za-z])/$1$2/ 83 | - derive/[12]$/5/ 84 | - 'xlit|bpmfvdtnlgkhjqxZCSRzcsiuYaoOeIEAUMNKGL12345|1qaz`2wsxedcrfv5tgbyhnujm8ik,9ol.0p;/- 6347|' 85 | 86 | translator: 87 | dictionary: zhung 88 | prism: zhung_42 89 | preedit_format: 90 | - 'xlit|1qaz`2wsxedcrfv5tgbyhnujm8ik,9ol.0p;/- 6347''|ㄅㄆㄇㄈㄪㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄧㄨㄩㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦˉˆˊˋ˙ |' 91 | 92 | punctuator: 93 | full_shape: 94 | " " : { commit: " " } 95 | "<" : [ ,, 《, 〈, «, ‹ ] 96 | ">" : [ 。, 》, 〉, », › ] 97 | "?" : [ ?, /, "/", ÷ ] 98 | ":" : [ :, ; ] 99 | "'" : { pair: [ "‘", "’" ] } 100 | "\"" : { pair: [ "“", "”" ] } 101 | "\\" : [ 、, \, "\\" ] 102 | "|" : [ ·, |, "|", "§", "¦" ] 103 | "~" : [ 〜, "~", ~, 〰 ] 104 | "!" : { commit: ! } 105 | "@" : [ @, "@", ☯ ] 106 | "#" : [ #, "#", ⌘ ] 107 | "%" : [ %, "%", "°", "℃" ] 108 | "$" : [ ¥, "$", "€", "£", "¥", "¢", "¤" ] 109 | "^" : { commit: …… } 110 | "&" : [ &, "&" ] 111 | "*" : [ *, "*", ·, ×, ※, ❂, ・ ] 112 | "(" : ( 113 | ")" : ) 114 | "_" : [ ——, -, "-" ] 115 | "+" : [ +, "+" ] 116 | "=" : [ =, "=" ] 117 | "[" : [ 「, 【, 〔, [ ] 118 | "]" : [ 」, 】, 〕, ] ] 119 | "{" : [ 『, 〖, { ] 120 | "}" : [ 』, 〗, } ] 121 | half_shape: 122 | "<" : [ ,, 《, 〈, «, ‹ ] 123 | ">" : [ 。, 》, 〉, », › ] 124 | "?" : [ ?, /, "/", ÷ ] 125 | ":" : [ :, ; ] 126 | "'" : { pair: [ "‘", "’" ] } 127 | "\"" : { pair: [ "“", "”" ] } 128 | "\\" : [ 、, "\\", \ ] 129 | "|" : [ ·, "|", |, "§", "¦" ] 130 | "~" : [ "~", "~~", 〜, ~, 〰 ] 131 | "!" : { commit: ! } 132 | "@" : [ "@", @, ☯ ] 133 | "#" : [ "#", #, ⌘ ] 134 | "%" : [ "%", %, "°", "℃" ] 135 | "$" : [ ¥, "$", "€", "£", "¥", "¢", "¤" ] 136 | "^" : { commit: …… } 137 | "&" : [ "&", & ] 138 | "*" : [ "*", *, ·, ×, ※, ❂, ・ ] 139 | "(" : ( 140 | ")" : ) 141 | "_" : [ ——, -, "-" ] 142 | "+" : [ "+", + ] 143 | "=" : [ "=", = ] 144 | "[" : [ 「, 【, 〔, [ ] 145 | "]" : [ 」, 】, 〕, ] ] 146 | "{" : [ 『, 〖, { ] 147 | "}" : [ 』, 〗, } ] 148 | 149 | key_binder: 150 | bindings: 151 | # Emacs style 152 | - { when: composing, accept: Control+p, send: Up } 153 | - { when: composing, accept: Control+n, send: Down } 154 | - { when: composing, accept: Control+b, send: Left } 155 | - { when: composing, accept: Control+f, send: Right } 156 | - { when: composing, accept: Control+a, send: Home } 157 | - { when: composing, accept: Control+e, send: End } 158 | - { when: composing, accept: Control+d, send: Delete } 159 | - { when: composing, accept: Control+k, send: Shift+Delete } 160 | - { when: composing, accept: Control+g, send: Escape } 161 | - { when: composing, accept: Alt+v, send: Page_Up } 162 | - { when: composing, accept: Control+v, send: Page_Down } 163 | # commonly used paging keys 164 | - { when: composing, accept: ISO_Left_Tab, send: Page_Up } 165 | - { when: composing, accept: Shift+Tab, send: Page_Up } 166 | - { when: composing, accept: Tab, send: Page_Down } 167 | - { when: paging, accept: minus, send: Page_Up } 168 | - { when: has_menu, accept: equal, send: Page_Down } 169 | 170 | recognizer: 171 | patterns: 172 | email: "^[a-z][-_.0-9a-z]*@.*$" 173 | uppercase: "^[A-Z][-_+.'0-9A-Za-z]*$" 174 | url: "^(www[.]|https?:|ftp:|mailto:).*$" 175 | -------------------------------------------------------------------------------- /zhung_combo.schema.yaml: -------------------------------------------------------------------------------- 1 | # Rime schema 2 | # encoding: utf-8 3 | 4 | schema: 5 | schema_id: zhung_combo 6 | name: 中州羅馬字(並擊) 7 | version: "0.3" 8 | author: 9 | - 佛振 10 | description: | 11 | 並擊輸入老派鄭州話 12 | 13 | switches: 14 | - name: ascii_mode 15 | reset: 0 16 | states: [ 中文, 西文 ] 17 | - name: full_shape 18 | states: [ 半角, 全角 ] 19 | - name: simplification 20 | states: [ 漢字, 汉字 ] 21 | 22 | engine: 23 | processors: 24 | - ascii_composer 25 | - chord_composer 26 | - recognizer 27 | - key_binder 28 | - speller 29 | - punctuator 30 | - selector 31 | - navigator 32 | - express_editor 33 | segmentors: 34 | - ascii_segmentor 35 | - matcher 36 | - abc_segmentor 37 | - punct_segmentor 38 | - fallback_segmentor 39 | translators: 40 | - punct_translator 41 | - r10n_translator 42 | filters: 43 | - simplifier 44 | - uniquifier 45 | 46 | speller: 47 | alphabet: zyxwvutsrqponmlkjihgfedcba 48 | delimiter: " '" 49 | algebra: 50 | - xform/^([A-Za-z]+)\d$/$1/ 51 | #- derive/^yi?/i/ 52 | #- derive/^wu?/u/ 53 | - derive/^wu/vu/ 54 | - derive/^([vw])u([in])/$1e$2/ 55 | - derive/^([jqx])([^i])/$1i$2/ 56 | - derive/ui/uei/ 57 | - derive/([iu])n/$1en/ 58 | #- derive/^([zcsr]h?)y/$1/ 59 | - derive/^rh/r/ 60 | - derive/^w(a|au|ang?|en)/v$1/ 61 | 62 | chord_composer: 63 | alphabet: "swxdecfrvgtbnjum ki,lo." 64 | algebra: 65 | - 'xlit|swxdecfrvgtbnjum ki,lo.|sczhlfgdbktpLiuVaNIUeOE|' 66 | - xform/^zfb/v/ 67 | - xform/^zf/zh/ 68 | - xform/^cl/ch/ 69 | - xform/^fb/m/ 70 | - xform/^ld/n/ 71 | - xform/^hg/rh/ 72 | - xform/^g([iV])/j$1/ 73 | - xform/^k([iV])/q$1/ 74 | - xform/^h([iV])/x$1/ 75 | - 'xform/^a$/ /' 76 | - xform/ae$/a/ 77 | - xform/^U$/,/ 78 | - xform/^E$/./ 79 | - xform/(ua?)IO$/$1Ne/ 80 | - xform/aI$/ai/ 81 | - xform/I[Oe]$/ei/ 82 | - xform/uI$/ui/ 83 | - xform/^gI$/ji/ 84 | - xform/^kI$/qi/ 85 | - xform/^hI$/xi/ 86 | - xform/I$/i/ 87 | - xform/VUE$/VNe/ 88 | - xform/V(a?)U$/i$1U/ 89 | - xform/aU$/au/ 90 | - xform/UE?$/ou/ 91 | - xform/([aiuV])Ne$/$1ng/ 92 | - xform/Ne$/eng/ 93 | - xform/([aiuV])N$/$1n/ 94 | - xform/N$/en/ 95 | - xform/L$/el/ 96 | - xform/iO$/iuo/ 97 | - xform/uO$/uo/ 98 | - xform/aO$/o/ 99 | - xform/O$/eo/ 100 | - xform/^i(ng?)$/yi$1/ 101 | - xform/^i$/yi/ 102 | - xform/^i/y/ 103 | - xform/^u(i|ng?)$/wu$1/ 104 | - xform/^u$/wu/ 105 | - xform/^u/w/ 106 | - xform/^V/yu/ 107 | - xform/V/iu/ 108 | - xform/^([jqx])i([aoeu])/$1$2/ 109 | - xform/^([zcsr]h)i$/$1y/ 110 | - xform/^([zcsr]h)i([aoeu])/$1$2/ 111 | - xform/^([zcsr]h)i(ng?)$/$1e$2/ 112 | - xlit/VE/ve/ 113 | - xform/^([bpmfv])$/$1u/ 114 | - xform/^([dtnl])$/$1i/ 115 | - xform/^([gkh])$/$1eo/ 116 | - xform/^([zcsr]h?)$/$1y/ 117 | output_format: 118 | - "xform/^([bpmfv])([iu]|i?[ae]|uo|[ae]i|i?[ao]u|[ei]n|i?an|ang|[ei]ng)$/$1$2'/" 119 | - "xform/^([dtnl])(i|i?u|i?[ae]|[eu]o|iu[eo]|[aeu]i|i?[ao]u|i?u?an|[ei]n|i?un|i?ang|[ei]ng|i?ung)$/$1$2'/" 120 | - "xform/^([gkh])(u|u?[ae]|[eu]o|u?ai|[eu]i|[ao]u|u?an|[eu]n|u?ang|[eu]ng)$/$1$2'/" 121 | - "xform/^([jqx]|[zcs]i?)([iu]|u?[ae]|uo|ai|[ao]u|u?an|[iu]n|[aiu]ng)$/$1$2'/" 122 | - "xform/^([zcsr]h?)([yu]|u?[ae]|[eu]o|u?ai|[eu]i|[ao]u|u?an|[eu]n|u?ang|[eu]ng)$/$1$2'/" 123 | - "xform/^(y?)([aeo]|[ae]i|[ao]u|[aeiu]ng?)$/$1$2'/" 124 | - "xform/^(yu|w)([aeo]|[au]i|[au]ng?)$/$1$2'/" 125 | - "xform/^(eo|el|yi|wu|yu)$/$1'/" 126 | - "erase/^([A-Za-z]+)$/" 127 | prompt_format: 128 | - "xform/^(.*)$/[$1]/" 129 | 130 | translator: 131 | dictionary: zhung 132 | prism: zhung_combo 133 | 134 | punctuator: 135 | import_preset: default 136 | 137 | key_binder: 138 | import_preset: default 139 | 140 | recognizer: 141 | import_preset: default 142 | -------------------------------------------------------------------------------- /zhung_combo_transcript.schema.yaml: -------------------------------------------------------------------------------- 1 | # Rime schema 2 | # encoding: utf-8 3 | 4 | schema: 5 | schema_id: zhung_combo_transcript 6 | name: 中州注音法(並擊) 7 | version: "0.4" 8 | author: 9 | - 佛振 10 | description: | 11 | 並擊輸入老派鄭州話 12 | 13 | switches: 14 | - name: ascii_mode 15 | reset: 0 16 | states: [ 中文, 西文 ] 17 | - name: full_shape 18 | states: [ 半角, 全角 ] 19 | - name: simplification 20 | states: [ 漢字, 汉字 ] 21 | 22 | engine: 23 | processors: 24 | - ascii_composer 25 | - chord_composer 26 | - recognizer 27 | - key_binder 28 | - speller 29 | - punctuator 30 | - selector 31 | - navigator 32 | - express_editor 33 | segmentors: 34 | - ascii_segmentor 35 | - matcher 36 | - abc_segmentor 37 | - punct_segmentor 38 | - fallback_segmentor 39 | translators: 40 | - punct_translator 41 | - r10n_translator 42 | filters: 43 | - simplifier 44 | - uniquifier 45 | 46 | speller: 47 | alphabet: zyxwvutsrqponmlkjihgfedcba 48 | delimiter: " '" 49 | algebra: 50 | - xform/^([A-Za-z]+)\d$/$1/ 51 | #- derive/^yi?/i/ 52 | #- derive/^wu?/u/ 53 | - derive/^wu/vu/ 54 | - derive/^([vw])u([in])/$1e$2/ 55 | - derive/^([jqx])([^i])/$1i$2/ 56 | - derive/ui/uei/ 57 | - derive/([iu])n/$1en/ 58 | #- derive/^([zcsr]h?)y/$1/ 59 | - derive/^rh/r/ 60 | - derive/^w(a|au|ang?|en)/v$1/ 61 | 62 | chord_composer: 63 | alphabet: "swxdecfrvgtbnjum ki,lo." 64 | algebra: 65 | - 'xlit|swxdecfrvgtbnjum ki,lo.|sczhlfgdbktpLiuVaNIUeOE|' 66 | - xform/^zfb/v/ 67 | - xform/^zf/zh/ 68 | - xform/^cl/ch/ 69 | - xform/^fb/m/ 70 | - xform/^ld/n/ 71 | - xform/^hg/rh/ 72 | - xform/^g([iV])/j$1/ 73 | - xform/^k([iV])/q$1/ 74 | - xform/^h([iV])/x$1/ 75 | - 'xform/^a$/ /' 76 | - xform/ae$/a/ 77 | - xform/^U$/,/ 78 | - xform/^E$/./ 79 | - xform/(ua?)IO$/$1Ne/ 80 | - xform/aI$/ai/ 81 | - xform/I[Oe]$/ei/ 82 | - xform/uI$/ui/ 83 | - xform/^gI$/ji/ 84 | - xform/^kI$/qi/ 85 | - xform/^hI$/xi/ 86 | - xform/I$/i/ 87 | - xform/VUE$/VNe/ 88 | - xform/V(a?)U$/i$1U/ 89 | - xform/aU$/au/ 90 | - xform/UE?$/ou/ 91 | - xform/([aiuV])Ne$/$1ng/ 92 | - xform/Ne$/eng/ 93 | - xform/([aiuV])N$/$1n/ 94 | - xform/N$/en/ 95 | - xform/L$/el/ 96 | - xform/iO$/iuo/ 97 | - xform/uO$/uo/ 98 | - xform/aO$/o/ 99 | - xform/O$/eo/ 100 | - xform/^i(ng?)$/yi$1/ 101 | - xform/^i$/yi/ 102 | - xform/^i/y/ 103 | - xform/^u(i|ng?)$/wu$1/ 104 | - xform/^u$/wu/ 105 | - xform/^u/w/ 106 | - xform/^V/yu/ 107 | - xform/V/iu/ 108 | #- xform/^([jqx])i([aoeu])/$1$2/ 109 | - xform/^([zcsr]h)i$/$1y/ 110 | - xform/^([zcsr]h)i([aoeu])/$1$2/ 111 | - xform/^([zcsr]h)i(ng?)$/$1e$2/ 112 | - xlit/VE/ve/ 113 | - xform/^([bpmfv])$/$1u/ 114 | - xform/^([dtnl])$/$1i/ 115 | - xform/^([gkh])$/$1eo/ 116 | - xform/^([zcsr]h?)$/$1y/ 117 | output_format: 118 | - "xform/^([bpmfv])([iu]|i?[ae]|uo|[ae]i|i?[ao]u|[ei]n|i?an|ang|[ei]ng)$/$1$2'/" 119 | - "xform/^([dtnl])(i|i?u|i?[ae]|[eu]o|iu[eo]|[aeu]i|i?[ao]u|i?u?an|[ei]n|i?un|i?ang|[ei]ng|i?ung)$/$1$2'/" 120 | - "xform/^([gkh])(u|u?[ae]|[eu]o|u?ai|[eu]i|[ao]u|u?an|[eu]n|u?ang|[eu]ng)$/$1$2'/" 121 | - "xform/^([jqxzcs]i)(u?[aeo]?|ai|[ao]u|u?an|u?n|[au]?ng)$/$1$2'/" 122 | - "xform/^([zcsr]h?)([yu]|u?[ae]|[eu]o|u?ai|[eu]i|[ao]u|u?an|[eu]n|u?ang|[eu]ng)$/$1$2'/" 123 | - "xform/^(y?)([aeo]|[ae]i|[ao]u|[aeiu]ng?)$/$1$2'/" 124 | - "xform/^(yu|w)([aeo]|[au]i|[au]ng?)$/$1$2'/" 125 | - "xform/^(eo|el|yi|wu|yu)$/$1'/" 126 | - "erase/^([A-Za-z]+)$/" 127 | prompt_format: 128 | - "xform/(^|[ '])yi?/$1i/" 129 | - "xform/(^|[ '])wu?/$1u/" 130 | - xform/([zcsr]h?)y/$1/ 131 | - xform/([zcsr])h/\U$1/ 132 | - xform/iu/Y/ 133 | - xform/([jqx])u/$1Y/ 134 | - xform/el/W/ 135 | - xform/([aou])l/$1W/ 136 | - xform/eo/O/ 137 | - xform/ai/I/ 138 | - xform/ei/E/ 139 | - xform/ui/uE/ 140 | - xform/au/A/ 141 | - xform/ou/U/ 142 | - xform/ang/K/ 143 | - xform/eng/G/ 144 | - xform/([iuY])ng/$1G/ 145 | - xform/an/M/ 146 | - xform/en/N/ 147 | - xform/([iuY])n/$1N/ 148 | - "xlit|bpmfvdtnlgkhjqxZCSRzcsiuYWaoOeIEAUMNKG|ㄅㄆㄇㄈㄪㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄧㄨㄩㄦㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥ|" 149 | - "xform/^(.*)$/【$1】/" 150 | 151 | translator: 152 | dictionary: zhung 153 | prism: zhung_combo_transcript 154 | preedit_format: 155 | - "xform/(^|[ '])yi?/$1i/" 156 | - "xform/(^|[ '])wu?/$1u/" 157 | - xform/([zcsr]h?)y/$1/ 158 | - xform/([zcs])h/\U$1/ 159 | - xform/rh?/R/ 160 | - xform/iu/Y/ 161 | - xform/([jqx])u/$1Y/ 162 | - xform/el/W/ 163 | - xform/([aou])l/$1W/ 164 | - xform/eo/O/ 165 | - xform/ai/I/ 166 | - xform/ei/E/ 167 | - xform/ui/uE/ 168 | - xform/au/A/ 169 | - xform/ou/U/ 170 | - xform/ang/K/ 171 | - xform/eng/G/ 172 | - xform/([iuY])ng/$1G/ 173 | - xform/an/M/ 174 | - xform/en/N/ 175 | - xform/([iuY])n/$1N/ 176 | - "xlit|bpmfvdtnlgkhjqxZCSRzcsiuYWaoOeIEAUMNKG|ㄅㄆㄇㄈㄪㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄧㄨㄩㄦㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥ|" 177 | - "xlit|'| |" 178 | 179 | punctuator: 180 | import_preset: default 181 | 182 | key_binder: 183 | import_preset: default 184 | 185 | recognizer: 186 | import_preset: default 187 | -------------------------------------------------------------------------------- /zhung_stenotype.schema.yaml: -------------------------------------------------------------------------------- 1 | # Rime schema 2 | # encoding: utf-8 3 | 4 | schema: 5 | schema_id: zhung_stenotype 6 | name: 中州打字速記法 7 | version: "0.1" 8 | author: 9 | - 佛振 10 | description: | 11 | 老派鄭州話 12 | 改編自早期的打字速記方案 13 | dependencies: 14 | - zhung 15 | 16 | switches: 17 | - name: ascii_mode 18 | reset: 0 19 | states: [ 中文, 西文 ] 20 | - name: full_shape 21 | states: [ 半角, 全角 ] 22 | - name: simplification 23 | states: [ 漢字, 汉字 ] 24 | - name: ascii_punct 25 | states: [ 。,, ., ] 26 | 27 | engine: 28 | processors: 29 | - ascii_composer 30 | - key_binder 31 | - speller 32 | - punctuator 33 | - selector 34 | - navigator 35 | - express_editor 36 | segmentors: 37 | - ascii_segmentor 38 | - abc_segmentor 39 | - punct_segmentor 40 | - fallback_segmentor 41 | translators: 42 | - punct_translator 43 | - script_translator 44 | filters: 45 | - simplifier 46 | - uniquifier 47 | 48 | speller: 49 | alphabet: "zyxwvutsrqponmlkjihgfedcbaZYXWVUTSRQPONMLKJIHGFEDCBA.:\"'`~;,*^<>@#%&$-=()" 50 | delimiter: " _" 51 | algebra: 52 | - xform/^([a-z]*)[0-9]+$/$1/ 53 | - derive/^w/v/ 54 | - xform/^vu([in])/ve$1/ 55 | - xform/^yu/iu/ 56 | - xform/^yi?/i/ 57 | - xform/^wu?/u/ 58 | - xform/([iu])n$/$1en/ 59 | - xform/ui$/uei/ 60 | - xform/iuo$/*/ 61 | - xform/uo$/,/ 62 | - xform/e?o$/;/ 63 | - xform/iung$/O/ 64 | - xform/ung$/U/ 65 | - xform/ing$/I/ 66 | - xform/eng$/E/ 67 | - xform/^bi/B/ 68 | - xform/^pi/P/ 69 | - xform/^mi/M/ 70 | - xform/^fi/F/ 71 | - xform/^vi/V/ 72 | - xform/^di/D/ 73 | - xform/^ti/T/ 74 | - xform/^ni(?!u)/N/ 75 | - xform/^li(?!u)/L/ 76 | - xform/^gu/G/ 77 | - xform/^ku/K/ 78 | - xform/^hu/H/ 79 | - xform/^ju/J/ 80 | - xform/^qu/Q/ 81 | - xform/^xu/X/ 82 | - xform/^zh/Z/ 83 | - xform/^ch/C/ 84 | - xform/^sh/S/ 85 | - xform/^rh/R/ 86 | - xform/el$/r/ 87 | - xform/^([bpmfv])u$/$1/ 88 | - xform/^([dtnl])a$/$1/ 89 | - xform/^([gkh]);$/$1/ 90 | - xform/^([jqx])i/$1/ 91 | - xform/^([ZCSRzcs])y$/$1/ 92 | - xform/(?/ 99 | - xform/ie$/ 10 | description: | 11 | 老派鄭州話 12 | 以羅馬字轉寫注音符號 13 | 14 | switches: 15 | - name: ascii_mode 16 | reset: 0 17 | states: [ 中文, 西文 ] 18 | - name: full_shape 19 | states: [ 半角, 全角 ] 20 | - name: simplification 21 | states: [ 漢字, 汉字 ] 22 | 23 | engine: 24 | processors: 25 | - ascii_composer 26 | - recognizer 27 | - key_binder 28 | - speller 29 | - punctuator 30 | - selector 31 | - navigator 32 | - fluency_editor 33 | segmentors: 34 | - ascii_segmentor 35 | - matcher 36 | - abc_segmentor 37 | - punct_segmentor 38 | - fallback_segmentor 39 | translators: 40 | - punct_translator 41 | - r10n_translator 42 | filters: 43 | - simplifier 44 | - uniquifier 45 | 46 | speller: 47 | alphabet: 'zyxwvutsrqponmlkjihgfedcba-:;<,/\' 48 | initials: 'zyxwvutsrqponmlkjihgfedcba' 49 | delimiter: " '" 50 | algebra: 51 | - derive/^yi?/i/ 52 | - derive/^wu?/u/ 53 | - derive/^wu/vu/ 54 | - derive/^([vw])u([in])/$1e$2/ 55 | - derive/^([jqx])([^i])/$1i$2/ 56 | - derive/ui/uei/ 57 | - derive/([iu])n/$1en/ 58 | - derive/^([zcsr]h?)y/$1/ 59 | - derive/^rh/r/ 60 | #- derive/iu/y/ 61 | #- derive/el/w/ 62 | #- derive/([aou])l/$1w/ 63 | - derive/^w(a|au|ang?|en)/v$1/ 64 | - abbrev/^([bpmfvdtnlgkhjqxyw]|[zcsr]h?).+$/$1/ 65 | - derive/^([A-Za-z]+)\d$/$1/ 66 | - 'xlit|1234|-