# Rime schema # encoding: utf-8 # 复制自 rime_ice.schema.yaml ,适配了双拼。 # 双拼键位映射复制自 https://github.com/rime/rime-double-pinyin # 双拼和全拼主要就是 speller/algebra 和 translator/preedit_format 这里有区别。 # 全拼的自定义文本和双拼有些冲突,改成了 custom_phrase_double ,需要创建 custom_phrase_double.txt 文件。 # # v+字母在双拼是正常拼写,有冲突。默认关闭 v 模式,修改可参考 https://github.com/iDvel/rime-ice/issues/58 # 方案说明 schema: schema_id: double_pinyin name: 自然码双拼 version: "1" author: - Dvel description: | 雾凇拼音 - 自然码双拼 https://github.com/iDvel/rime-ice dependencies: - melt_eng # 英文输入,作为次翻译器挂载到拼音方案 - liangfen # 两分拼字,作为反查挂载到拼音方案 # 开关 # 鼠须管 0.16 后,快捷键切换时的提示由 states 自定义,不需要提示的可注释掉 states 那一行。 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 # 自定义短语 - table_translator@melt_eng # 英文输入 - reverse_lookup_translator@liangfen # 反查,两分拼字 - lua_translator@unicode # Unicode filters: - simplifier@emoji # Emoji - simplifier@traditionalize # 简繁切换 - uniquifier # 去重 # Lua 配置: 限制码长,默认 100。(最多能输入的字符个数) code_length_limit_processor: 100 # Lua 配置: 日期、时间、星期、ISO 8601、时间戳的触发关键字 date_translator: date: date # 日期: 2022-11-29 time: time # 时间: 18:13 week: week # 星期: 星期二 datetime: datetime # ISO 8601: 2022-11-29T18:13:11+08:00 timestamp: timestamp # 时间戳: 1669716794 # 从 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: dictionary: "" user_dict: custom_phrase_double # 需要手动创建 custom_phrase_double.txt 文件 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 prism: double_pinyin # 多方案共用一个词库时,为避免冲突,需要用 prism 指定一个名字。 contextual_suggestions: true # 开启八股文 initial_quality: 1.2 # 拼音的权重应该比英文大 preedit_format: # preedit_format 影响到输入框的显示和“Shift+回车”上屏的字符 - xform/([bpmnljqxy])n/$1in/ - xform/(\w)g/$1eng/ - xform/(\w)q/$1iu/ - xform/([gkhvuirzcs])w/$1ua/ - xform/(\w)w/$1ia/ - xform/([dtnlgkhjqxyvuirzcs])r/$1uan/ - xform/(\w)t/$1ve/ - xform/([gkhvuirzcs])y/$1uai/ - xform/(\w)y/$1ing/ - xform/([dtnlgkhvuirzcs])o/$1uo/ - xform/(\w)p/$1un/ - xform/([jqx])s/$1iong/ - xform/(\w)s/$1ong/ - xform/([jqxnl])d/$1iang/ - xform/(\w)d/$1uang/ - xform/(\w)f/$1en/ - xform/(\w)h/$1ang/ - xform/(\w)j/$1an/ - xform/(\w)k/$1ao/ - xform/(\w)l/$1ai/ - xform/(\w)z/$1ei/ - xform/(\w)x/$1ie/ - xform/(\w)c/$1iao/ - xform/([dtgkhvuirzcs])v/$1ui/ - xform/(\w)b/$1ou/ - xform/(\w)m/$1ian/ - xform/([aoe])\1(\w)/$1$2/ - "xform/(^|[ '])v/$1zh/" - "xform/(^|[ '])i/$1ch/" - "xform/(^|[ '])u/$1sh/" - xform/([jqxy])v/$1u/ - xform/([nl])v/$1ü/ # 英文 melt_eng: dictionary: melt_eng enable_completion: true # 补全提示 enable_sentence: false # 禁止造句 enable_user_dict: false # 禁用用户词典 initial_quality: 1.1 # 初始权重 # 标点符号 # 共享目录预设的 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: '^L[a-z]+$' # 响应两分的反查 unicode: "^U[a-f0-9]+" # 响应 Unicode # 反查:两分(拼字) liangfen: dictionary: liangfen prefix: 'L' # 以 L 开头来反查 enable_completion: true # 补全提示 # tips: 〔两分〕 # 反查时显示的文字,建议注释掉,否则很多 L 开头的英文单词也会显示这个 # 拼写设定 speller: # 如果不想让什么标点直接上屏,可以加在 alphabet,或者编辑标点符号为两个及以上的映射 alphabet: zyxwvutsrqponmlkjihgfedcbaZYXWVUTSRQPONMLKJIHGFEDCBA delimiter: " '" # 第一位<空格>是拼音之间的分隔符;第二位<'>表示可以手动输入单引号来分割拼音。 algebra: - erase/^xx$/ - derive/^([jqxy])u$/$1v/ - derive/^([aoe])([ioun])$/$1$1$2/ - xform/^([aoe])(ng)?$/$1$1$2/ - xform/iu$/Q/ - xform/[iu]a$/W/ - xform/[uv]an$/R/ - xform/[uv]e$/T/ - xform/ing$|uai$/Y/ - xform/^sh/U/ - xform/^ch/I/ - xform/^zh/V/ - xform/uo$/O/ - xform/[uv]n$/P/ - xform/i?ong$/S/ - xform/[iu]ang$/D/ - xform/(.)en$/$1F/ - xform/(.)eng$/$1G/ - xform/(.)ang$/$1H/ - xform/ian$/M/ - xform/(.)an$/$1J/ - xform/iao$/C/ - xform/(.)ao$/$1K/ - xform/(.)ai$/$1L/ - xform/(.)ei$/$1Z/ - xform/ie$/X/ - xform/ui$/V/ - xform/(.)ou$/$1B/ - xform/in$/N/ - xlit/QWRTYUIOPSDFGHMJCKLZXVBN/qwrtyuiopsdfghmjcklzxvbn/ - abbrev/^(.).+$/$1/ # 中英混输词库的拼写规则: - derive/^(.+)$/\L$1/ - abbrev/^_?([a-zA-Z]).*$/$1/ - abbrev/^_(.+)$/$1/