|
| 1 | +# Rime schema |
| 2 | +# encoding: utf-8 |
| 3 | + |
| 4 | + |
| 5 | +# 复制自 rime_ice.schema.yaml ,适配了双拼。 |
| 6 | +# 双拼键位映射复制自 https://github.com/rime/rime-double-pinyin |
| 7 | +# 双拼之间主要就是 speller/algebra 和 translator/preedit_format 这里有区别。 |
| 8 | +# |
| 9 | +# 全拼的自定义文本和双拼有些冲突,改成了 custom_phrase_double ,需要创建 custom_phrase_double.txt 文件。 |
| 10 | +# |
| 11 | +# 默认启用的中英混输词库是全拼的,需要在 melt_eng.dict.yaml 中修改为对应的双拼的。 |
| 12 | +# 还需要在英文方案 melt_eng.schema.yaml 将数字的拼写规则 __include: algebra_rime_ice 改为对应的双拼。 |
| 13 | + |
| 14 | + |
| 15 | +# 方案说明 |
| 16 | +schema: |
| 17 | + schema_id: double_pinyin_sogou |
| 18 | + name: 搜狗双拼 |
| 19 | + version: "1" |
| 20 | + author: |
| 21 | + - Dvel |
| 22 | + description: | |
| 23 | + 雾凇拼音 - 搜狗双拼 |
| 24 | + https://github.com/iDvel/rime-ice |
| 25 | + dependencies: |
| 26 | + - melt_eng # 英文输入,作为次翻译器挂载到拼音方案 |
| 27 | + - liangfen # 两分拼字,作为反查挂载到拼音方案 |
| 28 | + |
| 29 | + |
| 30 | +# 开关 |
| 31 | +# 鼠须管 0.16 后,用快捷键切换时的提示文字由 states 定义 |
| 32 | +# states: 方案选单显示的名称。可以注释掉,仍可以通过快捷键切换。 |
| 33 | +# reset: 默认状态。 注释掉后,切换窗口时不会重置到默认状态。 |
| 34 | +switches: |
| 35 | + - name: ascii_mode |
| 36 | + states: [ 中, A ] |
| 37 | + reset: 0 |
| 38 | + - name: ascii_punct # 中英标点 |
| 39 | + states: [ ¥, $ ] |
| 40 | + reset: 0 |
| 41 | + - name: traditionalization |
| 42 | + states: [ 简, 繁 ] |
| 43 | + reset: 0 |
| 44 | + - name: emoji |
| 45 | + states: [ 💀, 😄 ] |
| 46 | + reset: 1 |
| 47 | + - name: full_shape |
| 48 | + states: [ 半角, 全角 ] |
| 49 | + reset: 0 |
| 50 | + |
| 51 | + |
| 52 | +# 输入引擎 |
| 53 | +engine: |
| 54 | + processors: |
| 55 | + - lua_processor@select_character # 以词定字 |
| 56 | + - ascii_composer |
| 57 | + - recognizer |
| 58 | + - key_binder |
| 59 | + - speller |
| 60 | + - punctuator |
| 61 | + - selector |
| 62 | + - navigator |
| 63 | + - express_editor |
| 64 | + segmentors: |
| 65 | + - ascii_segmentor |
| 66 | + - matcher |
| 67 | + - abc_segmentor |
| 68 | + - punct_segmentor |
| 69 | + - fallback_segmentor |
| 70 | + translators: |
| 71 | + - punct_translator |
| 72 | + - script_translator |
| 73 | + - lua_translator@date_translator # 时间、日期、星期 |
| 74 | + - table_translator@custom_phrase # 自定义短语 custom_phrase_double.txt |
| 75 | + - table_translator@melt_eng # 英文输入 |
| 76 | + - reverse_lookup_translator@liangfen # 反查,两分拼字 |
| 77 | + - lua_translator@unicode # Unicode |
| 78 | + - lua_translator@number_translator # 数字、金额大写 |
| 79 | + filters: |
| 80 | + - lua_filter@corrector # 错音错字提示 |
| 81 | + - simplifier@emoji # Emoji |
| 82 | + - simplifier@traditionalize # 简繁切换 |
| 83 | + - lua_filter@autocap_filter # 英文自动大写 |
| 84 | + - lua_filter@reduce_english_filter # 降低部分英语单词在候选项的位置 |
| 85 | + - uniquifier # 去重 |
| 86 | + |
| 87 | + |
| 88 | +# Lua 配置: 日期、时间、星期、ISO 8601、时间戳的触发关键字 |
| 89 | +date_translator: |
| 90 | + date: date # 日期: 2022-11-29 |
| 91 | + time: time # 时间: 18:13 |
| 92 | + week: week # 星期: 星期二 |
| 93 | + datetime: datetime # ISO 8601: 2022-11-29T18:13:11+08:00 |
| 94 | + timestamp: timestamp # 时间戳: 1669716794 |
| 95 | + |
| 96 | + |
| 97 | +# Lua 配置: 降低部分英语单词在候选项的位置 |
| 98 | +# 详细介绍 https://dvel.me/posts/make-rime-en-better/#短单词置顶的问题 |
| 99 | +# 正常情况: 输入 rug 得到 「1.rug 2.如果 …… 」 |
| 100 | +# 降低之后: 输入 rug 得到 「1.如果 2.rug …… 」 |
| 101 | +reduce_english_filter: |
| 102 | + # 降低到第 idx 个位置 |
| 103 | + idx: 2 |
| 104 | + # 要降低的单词,匹配的是输入码,即全小写。 |
| 105 | + words: [nav, uid, wig, |
| 106 | + rug, bus, ship, laos, bail, bam, bans, bib, bos, chic, chit, dab, dag, |
| 107 | + dal, dit, dub, dug, fab, gam, ger, gus, hem, hep, hud, kat, lam, lax, lex, lug, |
| 108 | + lux, moc, mos, mot, mum, nad, nay, nib, nip, pak, pap, pax, rig, rum, sac, sal, |
| 109 | + sax, sec, shin, sis, ska, slang, sus, tad, taj, tac, tic, yep, yum, fax, cain, |
| 110 | + key, mob, buy, dam, wap, yes, but, put, lag, buf, lip, aid, aim, dig, dim, din, |
| 111 | + dip, pail, cad, chap, bend, lid, gem, tin, tum] |
| 112 | + |
| 113 | + |
| 114 | +# 主翻译器,拼音 |
| 115 | +translator: |
| 116 | + dictionary: rime_ice # 挂载词库 rime_ice.dict.yaml |
| 117 | + prism: double_pinyin_sogou # 多方案共用一个词库时,为避免冲突,需要用 prism 指定一个名字。 |
| 118 | + spelling_hints: 8 # corrector.lua :为了让错音错字提示的 Lua 同时适配全拼双拼,将拼音显示在 comment 中 |
| 119 | + always_show_comments: true # corrector.lua :Rime 默认在 preedit 等于 comment 时取消显示 comment,这里强制一直显示,供 corrector.lua 做判断用。 |
| 120 | + initial_quality: 1.2 # 拼音的权重应该比英文大 |
| 121 | + preedit_format: # preedit_format 影响到输入框的显示和“Shift+回车”上屏的字符 |
| 122 | + - xform/([aoe])(\w)/0$2/ |
| 123 | + - xform/([bpmnljqxy])n/$1in/ |
| 124 | + - xform/(\w)g/$1eng/ |
| 125 | + - xform/(\w)q/$1iu/ |
| 126 | + - xform/([gkhvuirzcs])w/$1ua/ |
| 127 | + - xform/(\w)w/$1ia/ |
| 128 | + - xform/([dtnlgkhjqxyvuirzcs])r/$1uan/ |
| 129 | + - xform/0r/er/ |
| 130 | + - xform/([dtgkhvuirzcs])v/$1ui/ |
| 131 | + - xform/(\w)v/$1ve/ |
| 132 | + - xform/(\w)t/$1ve/ |
| 133 | + - xform/([gkhvuirzcs])y/$1uai/ |
| 134 | + - xform/(\w)y/$1v/ |
| 135 | + - xform/([dtnlgkhvuirzcs])o/$1uo/ |
| 136 | + - xform/(\w)p/$1un/ |
| 137 | + - xform/([jqx])s/$1iong/ |
| 138 | + - xform/(\w)s/$1ong/ |
| 139 | + - xform/([jqxnl])d/$1iang/ |
| 140 | + - xform/(\w)d/$1uang/ |
| 141 | + - xform/(\w)f/$1en/ |
| 142 | + - xform/(\w)h/$1ang/ |
| 143 | + - xform/(\w)j/$1an/ |
| 144 | + - xform/(\w)k/$1ao/ |
| 145 | + - xform/(\w)l/$1ai/ |
| 146 | + - xform/(\w)z/$1ei/ |
| 147 | + - xform/(\w)x/$1ie/ |
| 148 | + - xform/(\w)c/$1iao/ |
| 149 | + - xform/(\w)b/$1ou/ |
| 150 | + - xform/(\w)m/$1ian/ |
| 151 | + - xform/(\w);/$1ing/ |
| 152 | + - xform/0(\w)/$1/ |
| 153 | + - "xform/(^|[ '])v/$1zh/" |
| 154 | + - "xform/(^|[ '])i/$1ch/" |
| 155 | + - "xform/(^|[ '])u/$1sh/" |
| 156 | + - xform/([jqxy])v/$1u/ |
| 157 | + - xform/([nl])v/$1ü/ |
| 158 | + |
| 159 | + |
| 160 | +# 次翻译器,英文 |
| 161 | +melt_eng: |
| 162 | + dictionary: melt_eng # 挂载词库 melt_eng.dict.yaml |
| 163 | + enable_sentence: false # 禁止造句 |
| 164 | + enable_user_dict: false # 禁用用户词典 |
| 165 | + initial_quality: 1.1 # 初始权重 |
| 166 | + comment_format: # 自定义提示码 |
| 167 | + - xform/.*// # 清空提示码 |
| 168 | + |
| 169 | + |
| 170 | +# 反查:两分(拼字) |
| 171 | +liangfen: |
| 172 | + dictionary: liangfen # 挂载两分词典 liangfen.dict.yaml |
| 173 | + prefix: "L" # 以 L 开头来反查 |
| 174 | + enable_completion: true # 补全提示 |
| 175 | + # tips: 〔两分〕 # 反查时显示的文字,建议注释掉,否则很多 L 开头的英文单词也会显示这个 |
| 176 | + |
| 177 | + |
| 178 | +# 自定义短语 |
| 179 | +custom_phrase: |
| 180 | + dictionary: "" |
| 181 | + user_dict: custom_phrase_double # 需要手动创建 custom_phrase_double.txt 文件 |
| 182 | + db_class: stabledb |
| 183 | + enable_completion: false # 补全提示 |
| 184 | + enable_sentence: false # 禁止造句 |
| 185 | + initial_quality: 99 # custom_phrase 的权重应该比 pinyin 和 melt_eng 大 |
| 186 | + |
| 187 | + |
| 188 | +# Emoji |
| 189 | +emoji: |
| 190 | + opencc_config: emoji.json |
| 191 | + option_name: emoji |
| 192 | + |
| 193 | + |
| 194 | +# 简繁切换 |
| 195 | +traditionalize: |
| 196 | + option_name: traditionalization |
| 197 | + opencc_config: s2t.json # s2t.json | s2hk.json | s2tw.json | s2twp.json |
| 198 | + tips: none # 转换提示: all 都显示 | char 仅单字显示 | none 不显示。 |
| 199 | + excluded_types: [ reverse_lookup ] # 不转换反查(两分拼字)的内容 |
| 200 | + |
| 201 | + |
| 202 | +# 标点符号 |
| 203 | +# punctuator 下面有三个子项: |
| 204 | +# full_shape 全角标点映射 |
| 205 | +# half_shape 半角标点映射 |
| 206 | +# symbols Rime 的预设配置是以 '/' 前缀开头输出一系列字符,自定义的 symbols_caps_v.yaml 修改成了 'V' 开头。 |
| 207 | +punctuator: |
| 208 | + full_shape: |
| 209 | + __include: default:/punctuator/full_shape # 从 default.yaml 导入配置 |
| 210 | + half_shape: |
| 211 | + __include: default:/punctuator/half_shape # 从 default.yaml 导入配置 |
| 212 | + symbols: |
| 213 | + __include: symbols_caps_v:/symbols # 从 symbols_caps_v.yaml 导入配置 |
| 214 | + |
| 215 | + |
| 216 | +# 处理符合特定规则的输入码,如网址、反查 |
| 217 | +recognizer: |
| 218 | + import_preset: default # 从 default.yaml 继承通用的 |
| 219 | + patterns: # 再增加方案专有的: |
| 220 | + punct: "^V([0-9]|10|[A-Za-z]+)$" # 响应 symbols_caps_v.yaml 的 symbols |
| 221 | + reverse_lookup: "^L[a-z]+$" # 响应两分拼字的反查 |
| 222 | + unicode: "^U[a-f0-9]+" # 响应 Unicode |
| 223 | + number: "^R[0-9]+[.]?[0-9]*" # 响应 number_translator |
| 224 | + |
| 225 | + |
| 226 | +# 从 default 继承快捷键 |
| 227 | +key_binder: |
| 228 | + import_preset: default # 从 default.yaml 继承通用的 |
| 229 | + # bindings: # 也可以再增加方案专有的 |
| 230 | + |
| 231 | + |
| 232 | +# 拼写设定 |
| 233 | +speller: |
| 234 | + # 如果不想让什么标点直接上屏,可以加在 alphabet,或者编辑标点符号为两个及以上的映射 |
| 235 | + alphabet: zyxwvutsrqponmlkjihgfedcbaZYXWVUTSRQPONMLKJIHGFEDCBA; |
| 236 | + delimiter: " '" # 第一位<空格>是拼音之间的分隔符;第二位<'>表示可以手动输入单引号来分割拼音。 |
| 237 | + algebra: |
| 238 | + - erase/^xx$/ |
| 239 | + - derive/^([jqxy])u$/$1v/ |
| 240 | + - derive/^([aoe].*)$/o$1/ |
| 241 | + - xform/^([ae])(.*)$/$1$1$2/ |
| 242 | + - xform/iu$/Ⓠ/ |
| 243 | + - xform/[iu]a$/Ⓦ/ |
| 244 | + - xform/er$|[uv]an$/Ⓡ/ |
| 245 | + - xform/[uv]e$/Ⓣ/ |
| 246 | + - xform/v$|uai$/Ⓨ/ |
| 247 | + - xform/^sh/Ⓤ/ |
| 248 | + - xform/^ch/Ⓘ/ |
| 249 | + - xform/^zh/Ⓥ/ |
| 250 | + - xform/uo$/Ⓞ/ |
| 251 | + - xform/[uv]n$/Ⓟ/ |
| 252 | + - xform/i?ong$/Ⓢ/ |
| 253 | + - xform/[iu]ang$/Ⓓ/ |
| 254 | + - xform/(.)en$/$1Ⓕ/ |
| 255 | + - xform/(.)eng$/$1Ⓖ/ |
| 256 | + - xform/(.)ang$/$1Ⓗ/ |
| 257 | + - xform/ian$/Ⓜ/ |
| 258 | + - xform/(.)an$/$1Ⓙ/ |
| 259 | + - xform/iao$/Ⓒ/ |
| 260 | + - xform/(.)ao$/$1Ⓚ/ |
| 261 | + - xform/(.)ai$/$1Ⓛ/ |
| 262 | + - xform/(.)ei$/$1Ⓩ/ |
| 263 | + - xform/ie$/Ⓧ/ |
| 264 | + - xform/ui$/Ⓥ/ |
| 265 | + - xform/(.)ou$/$1Ⓑ/ |
| 266 | + - xform/in$/Ⓝ/ |
| 267 | + - xform/ing$/;/ |
| 268 | + - xlit/ⓆⓌⓇⓉⓎⓊⒾⓄⓅⓈⒹⒻⒼⒽⓂⒿⒸⓀⓁⓏⓍⓋⒷⓃ/qwrtyuiopsdfghmjcklzxvbn/ |
| 269 | + - abbrev/^(.).+$/$1/ # 首字母简拼 |
0 commit comments