# Rime schema # encoding: utf-8 # 方案说明 schema: schema_id: rime_ice name: 雾凇拼音 version: "1.4.2" author: - Dvel description: | 雾凇拼音 https://github.com/iDvel/rime-ice dependencies: - melt_eng # 英文输入,作为次翻译器挂载到拼音方案 - liangfen # 两分拼字,作为反查挂载到拼音方案 # 开关 # 鼠须管 0.16 后,快捷键切换时的提示由 states 自定义 # 注释掉 states 后,仍可以通过自定义的快捷键切换,但没有切换提示,也不会出现在方案选单中 # 注释掉 reset 后,配合 default.custom.yaml 中的 save_options,可以永久记住开关状态,切换程序后也不会还原。 switches: - name: ascii_mode states: [ 中, A ] reset: 0 - name: full_shape # states: [ 半角, 全角 ] reset: 0 - name: ascii_punct states: [ 。,, ., ] # reset: 0 - name: traditionalization states: [ 简, 繁 ] reset: 0 - name: emoji states: [ 💀, 😄 ] # reset: 1 # 输入引擎 engine: processors: - lua_processor@select_character # 以词定字 - lua_processor@code_length_limit_processor # 限制码长 - ascii_composer - recognizer - key_binder - speller - punctuator - selector - navigator - express_editor segmentors: - ascii_segmentor - matcher - abc_segmentor - punct_segmentor - fallback_segmentor translators: - punct_translator - script_translator - lua_translator@date_translator # 时间、日期、星期 - table_translator@custom_phrase # 自定义短语 custom_phrase.txt - table_translator@melt_eng # 英文输入 - reverse_lookup_translator@liangfen # 反查,两分拼字 - lua_translator@unicode # Unicode filters: - lua_filter@long_word_filter # 长词优先 - simplifier@emoji # Emoji - simplifier@traditionalize # 简繁切换 - lua_filter@v_filter # v 模式 symbols 优先(否则是英文优先) - lua_filter@reduce_english_filter # 降低部分英语单词在候选项的位置 - uniquifier # 去重 # Lua 配置: 限制码长,默认 100。(最多能输入的字符个数) code_length_limit_processor: 100 # Lua 配置: 日期、时间、星期、ISO 8601、时间戳的触发关键字 date_translator: date: rq # 日期: 2022-11-29 time: sj # 时间: 18:13 week: xq # 星期: 星期二 datetime: dt # ISO 8601: 2022-11-29T18:13:11+08:00 timestamp: ts # 时间戳: 1669716794 # Lua 配置: 长词优先,提升 count 个词语,插入到第 idx 个位置。 # 示例:将 2 个词插入到第 4、5 个候选项,输入 jie 得到「1接 2解 3姐 4饥饿 5极恶」 long_word_filter: count: 2 idx: 4 # Lua 配置: 降低部分英语单词在候选项的位置 # 详细介绍 https://dvel.me/posts/make-rime-en-better/#短单词置顶的问题 # 正常情况: 输入 rug 得到 「1.rug 2.如果 …… 」 # 降低之后: 输入 rug 得到 「1.如果 2.rug …… 」 reduce_english_filter: idx: 2 # 降低到第 idx 个位置 words: # 要降低的单词,匹配的是输入码,即全小写。 - rug - bus - ship # words: [rug, bus, ship] # 这么写也行 # 从 default 继承快捷键 key_binder: import_preset: default # bindings: # 也可以增加方案专属的快捷键 # Emoji emoji: opencc_config: emoji.json option_name: emoji # 简繁切换 traditionalize: option_name: traditionalization opencc_config: s2t.json # s2t.json | s2hk.json | s2tw.json | s2twp.json tips: all # 转换提示: all 都显示 | char 仅单字显示 | none 不显示。 excluded_types: [ reverse_lookup ] # 不转换反查(两分拼字)的内容 # 自定义短语:custom_phrase.txt custom_phrase: dictionary: "" user_dict: custom_phrase db_class: stabledb enable_completion: false # 补全提示 enable_sentence: false # 禁止造句 initial_quality: 99 # custom_phrase 的权重应该比 pinyin 和 melt_eng 大 # 引入八股文 grammar: language: zh-hans-t-essay-bgw # 主翻译器,拼音 translator: dictionary: rime_ice # 挂载词库 rime_ice.dict.yaml contextual_suggestions: true # 开启八股文 preedit_format: # preedit_format 影响到输入框的显示和“Shift+回车”上屏的字符 - xform/([jqxy])v/$1u/ # 显示为 ju qu xu yu # - xform/([nl])v/$1ü/ # 显示为 nü lü # - xform/([nl])ue/$1üe/ # 显示为 nüe lüe - xform/([nl])v/$1v/ # 显示为 nv lv - xform/([nl])ue/$1ve/ # 显示为 nve lve initial_quality: 1.2 # 拼音的权重应该比英文大 # 次翻译器,英文 melt_eng: dictionary: melt_eng # 挂载词库 melt_eng.dict.yaml enable_sentence: false # 禁止造句 enable_user_dict: false # 禁用用户词典 initial_quality: 1.1 # 初始权重 comment_format: # 是否显示补全提示? - xform/.*// # 注释掉这两行则显示。 # 标点符号 # 共享目录预设的 punctuation.yaml 包含了 full_shape half_shape (全角和半角的符号映射) # 共享目录预设的 symbols.yaml 包含了 full_shape half_shape symbols # symbols 的功能是支持以「/」前缀开头输出一系列字符,自定义的 symbols_custom.yaml 修改成了「v」开头。 punctuator: # __include: punctuation:/ # 从共享目录引入预设的 punctuation.yaml # import_preset: symbols # 从共享目录引入预设的 symbols.yaml import_preset: symbols_custom # 从 symbols_custom.yaml 引入自己自定义的 # half_shape: # 也可以直接在这里配置 # 处理符合特定规则的输入码,如网址、反查 recognizer: patterns: email: "^[A-Za-z][-_.0-9A-Za-z]*@.*$" # 自带的,e-mail 正则 # uppercase: "[A-Z][-_+.'0-9A-Za-z]*$" # 自带的,大写字母开头后,可以输入[-_+.'0-9A-Za-z]这些字符 url: "^(www[.]|https?:|ftp[.:]|mailto:|file:).*$|^[a-z]+[.].+$" # 自带的,URL 正则 url_2: "^[A-Za-z]+[.].*" # 支持 google.com abc.txt 等网址或文件名,会导致句号不会让句子上屏,或使用句号翻页时需要注释掉 win_path: "^[A-Za-z]:.*" # 支持 c:\file\path 之类的路径输入 colon: "^[A-Za-z]+:.*" # 上面的超集,可以输入冒号,不会导致句子直接上屏 underscore: "^[A-Za-z]+_.*" # 可以输入下划线 _ ,不会导致句子直接上屏 # punct: "^/([0-9]+[a-z]*|[a-z]+)$" # 响应默认的 punctuation/symbols 的「/」开头的字符 punct: "^v([0-9]|10|[A-Za-z]+)$" # 响应 symbols_custom.yaml 下的 punctuator/symbols,用「v」替换「/」并支持大写 reverse_lookup: "^u[a-z]+$" # 响应两分的反查 unicode: "^U[a-f0-9]+" # 响应 Unicode # 反查:两分(拼字) liangfen: dictionary: liangfen # 两分词典 liangfen.dict.yaml prefix: "u" # 以 u 开头来反查 enable_completion: true # 补全提示 # tips: 〔两分〕 # 反查时显示的文字,建议注释掉,否则很多 u 开头的英文单词也会显示这个 # 拼写设定 speller: # 如果不想让什么标点直接上屏,可以加在 alphabet,或者编辑标点符号为两个及以上的映射 alphabet: zyxwvutsrqponmlkjihgfedcbaZYXWVUTSRQPONMLKJIHGFEDCBA delimiter: " '" # 第一位<空格>是拼音之间的分隔符;第二位<'>表示可以手动输入单引号来分割拼音。 algebra: ### 模糊音 # 声母 # - derive/^([zcs])h/$1/ # z c s → zh ch sh # - derive/^([zcs])([^h])/$1h$2/ # zh ch sh → z c s # - derive/^l/n/ # n → l # - derive/^n/l/ # l → n # - derive/^f/h/ # ………… # - derive/^h/f/ # ………… # - derive/^l/r/ # - derive/^r/l/ # - derive/^g/k/ # - derive/^k/g/ # 韵母 # - derive/ang/an/ # - derive/an/ang/ # - derive/eng/en/ # - derive/en/eng/ # - derive/in/ing/ # - derive/ing/in/ # - derive/ian/iang/ # - derive/iang/ian/ # - derive/uan/uang/ # - derive/uang/uan/ # - derive/ai/an/ # - derive/an/ai/ # - derive/ong/un/ # - derive/un/ong/ # - derive/ong/on/ # - derive/iong/un/ # - derive/un/iong/ # - derive/ong/eng/ # - derive/eng/ong/ # 拼音音节 # - derive/^fei$/hui/ # - derive/^hui$/fei/ # - derive/^hu$/fu/ # - derive/^fu$/hu/ # - derive/^wang$/huang/ # - derive/^huang$/wang/ ### 旧时的拼写规则 # - derive/un$/uen/ # - derive/ui$/uei/ # - derive/iu$/iou/ ### 超级简拼 - erase/^hm$/ # 响应超级简拼,取消「噷 hm」的独占 - erase/^m$/ # 响应超级简拼,取消「呣 m」的独占 - erase/^n$/ # 响应超级简拼,取消「嗯 n」的独占 - erase/^ng$/ # 响应超级简拼,取消「嗯 ng」的独占 - abbrev/^([a-z]).+$/$1/ # 超级简拼 - abbrev/^([zcs]h).+$/$1/ # 超级简拼中,zh ch sh 视为整体(ch'sh → 城市),而不是像这样分开(c'h's'h → 吃好睡好)。 ### v u 转换,增加对词库中「nue/nve」「qu/qv」等不同注音的支持 - derive/^([nl])ue$/$1ve/ - derive/^([nl])ve$/$1ue/ - derive/^([jqxy])u/$1v/ - derive/^([jqxy])v/$1u/ ### 自动纠错 # 有些规则对全拼简拼混输有副作用:如「x'ai 喜爱」被纠错为「xia 下」 # zh、ch、sh - derive/([zcs])h(a|e|i|u|ai|ei|an|en|ou|uo|ua|un|ui|uan|uai|uang|ang|eng|ong)$/h$1$2/ # hzi → zhi - derive/([zcs])h([aeiu])$/$1$2h/ # zih → zhi # ai - derive/^([wghk])ai$/$1ia/ # wia → wai # ia - derive/([qjx])ia$/$1ai/ # qai → qia # ei - derive/([wtfghkz])ei$/$1ie/ # ie - derive/([jqx])ie$/$1ei/ # ao - derive/([rtypsdghklzcbnm])ao$/$1oa/ # ou - derive/([ypfm])ou$/$1uo/ # uo(无) # an - derive/([wrtypsdfghklzcbnm])an$/$1na/ # en - derive/([wrpsdfghklzcbnm])en$/$1ne/ # ang - derive/([wrtypsdfghklzcbnm])ang$/$1nag/ - derive/([wrtypsdfghklzcbnm])ang$/$1agn/ # eng - derive/([wrtpsdfghklzcbnm])eng$/$1neg/ - derive/([wrtpsdfghklzcbnm])eng$/$1egn/ # ing - derive/([qtypdjlxbnm])ing$/$1nig/ - derive/([qtypdjlxbnm])ing$/$1ign/ # ong - derive/([rtysdghklzcn])ong$/$1nog/ - derive/([rtysdghklzcn])ong$/$1ogn/ # iao - derive/([qtpdjlxbnm])iao$/$1ioa/ - derive/([qtpdjlxbnm])iao$/$1oia/ # ui - derive/([rtsghkzc])ui$/$1iu/ # iu - derive/([qjlxnm])iu$/$1ui/ # ian - derive/([qtpdjlxbnm])ian$/$1ain/ # - derive/([qtpdjlxbnm])ian$/$1ina/ # 和「李娜、蒂娜、缉拿」等常用词有冲突 # in - derive/([qypjlxbnm])in$/$1ni/ # iang - derive/([qjlxn])iang$/$1aing/ - derive/([qjlxn])iang$/$1inag/ # ua - derive/([g|k|h|zh|sh])ua$/$1au/ # uai - derive/([g|h|k|zh|ch|sh])uai$/$1aui/ - derive/([g|h|k|zh|ch|sh])uai$/$1uia/ # uan - derive/([qrtysdghjklzxcn])uan$/$1aun/ # - derive/([qrtysdghjklzxcn])uan$/$1una/ # 和「去哪、露娜」等常用词有冲突 # un - derive/([qrtysdghjklzxc])un$/$1nu/ # ue - derive/([nlyjqx])ue$/$1eu/ # uang - derive/([g|h|k|zh|ch|sh])uang$/$1aung/ - derive/([g|h|k|zh|ch|sh])uang$/$1uagn/ - derive/([g|h|k|zh|ch|sh])uang$/$1unag/ - derive/([g|h|k|zh|ch|sh])uang$/$1augn/ # iong - derive/([jqx])iong$/$1inog/ - derive/([jqx])iong$/$1oing/ - derive/([jqx])iong$/$1iogn/ - derive/([jqx])iong$/$1oign/ # 其他 - derive/([rtsdghkzc])o(u|ng)$/$1o/ # do → dou|dong - derive/ong$/on/ # lon → long - derive/([tl])eng$/$1en/ # ten → teng - derive/([qwrtypsdfghjklzxcbnm])([aeio])ng$/$1ng/ # lng → lang、leng、ling、long