Files
rime_wanxiang/wanxiang.schema.yaml
2026-01-29 11:40:03 +08:00

669 lines
34 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Rime schema
# encoding: utf-8
# 方案说明
schema:
schema_id: wanxiang
name: 万象拼音
version: "LTS"
author:
- amzxyz
description: |
请勾选【万象拼音】以启用,万象拼音标准版本,带声调的词库,支持语法模型,全拼、简拼、整句、声调辅助筛选,拥有超越大厂的输入体验!
【文本框输入:/pinyin全拼/zrm自然码,/flypy小鹤/mspy,/sogou,/pyjj等详见README.md】
dependencies:
- wanxiang_mixedcode #混合编码
- wanxiang_reverse #部件拆字,反查及辅码
- wanxiang_english #英文
# 开关
# reset: 默认状态。注释掉后,切换窗口时不会重置到默认状态。
# states: 方案选单显示的名称。可以注释掉,仍可以通过快捷键切换。
# abbrev: 默认的缩写取 states 的第一个字符abbrev 可自定义一个字符
switches:
- name: ascii_mode # 中英输入状态
states: [ 中文, 英文 ]
- name: ascii_punct # 中英标点,可以在中文输入状态输入英文符号
states: [ 中标, 英标 ]
- name: full_shape #全角、半角字符输出
states: [ 半角, 全角 ]
- name: emoji #候选出现emoji滤镜会显示在相应的候选后面万象侧重于tips提示避免候选被占用因此默认为reset: 0归属opencc emoji滤镜
states: [表情关, 表情开]
- name: chinese_english #候选进入翻译模式滤镜会显示在相应的候选后面万象侧重于tips提示避免候选被占用归属opencc 翻译滤镜
states: [ 翻译关, 翻译开 ]
- options: [ raw_input, tone_display, full_pinyin ] #开启后在输入编码的位置实时转换为带声调全拼或者不带声调全拼不开启则采用系统配置原始编码影响的是preedit_format,归属super_preedit.lua
states: [ 原编码, 有声调, 无声调 ]
# reset: 2 #对于开关组从0开始数第几个就reset几可设为默认
- options: [ s2s, s2t, s2hk, s2tw ] # 简繁转换开关组,可以在一个空选项和多个实际“- simplifier@s2hk”引入的项目之前切换这是一个开关组你可以将其中任意一个s2s等设置为toggle快捷键多次按下将轮询
states: [ 简体, 通繁, 港繁, 臺繁 ]
- name: tone_hint #开启后在候选的注释里面实时显示全拼声调不开启则采用系统配置影响的是comment_format归属super_comment.lua
states: [ 读音关, 读音开 ]
- name: super_tips #开启后在输入编码后面的提示区显示实时的提示数据受tips数据库影响表情、翻译、车牌、符号等对应关系数据并可实现句号上屏不开启则默认影响的是segment.prompt参数归属super_tips.lua
states: [ 提示关, 提示开 ]
reset: 1
- name: charset_filter #字符集过滤默认开启8105通规显示即小字集可通过开关实时开启全字集快捷键配套ctrl+g,归属super_filter.lua
states: [ 大字集, 小字集 ]
reset: 0
- name: char_priority #多体现在编码重合但候选有单字或者多字的情况`引导的辅码查词时是否单字优先全拼常见类似于特定编码情况下、反查状态下的调序能力。归属super_lookup.lua
states: [词组先, 单字先]
# 输入引擎
engine:
processors:
- lua_processor@*super_processor #KP小键盘、字母选词、符号快打、超强分词、重复限制、退格限制、声调回退、以词定字
- lua_processor@*partial_commit #通过ctrl+1~0局部提交10个字以内的句子的前几个字一般为正确的前几个使用时要遵循合理的分词结构能促进后续编码打出正确的词汇
- lua_processor@*super_tips #超级提示模块:表情、简码、翻译、化学式、等等靠你想象
- lua_processor@*super_sequence*P #手动排序,高亮候选 ctrl+j左移动 ctrl+k 右移动 ctrl+l 移除位移 ctrl+p 置顶
- ascii_composer #处理英文模式及中英文切换
- recognizer #与 matcher 搭配,处理符合特定规则的输入码,如网址、反查等 tags
- key_binder #在特定条件下将按键绑定到其他按键,如重定义逗号、句号为候选翻页、开关快捷键等
- lua_processor@*key_binder #绑定按键扩展能力,支持正则扩展将按键生效情景更加细化
- speller #拼写处理器,接受字符按键,编辑输入
- punctuator #符号处理器,将单个字符按键直接映射为标点符号或文字
- selector #选字处理器,处理数字选字键〔可以换成别的哦〕、上、下候选定位、换页
- navigator #处理输入栏内的光标移动
- express_editor #编辑器,处理空格、回车上屏、回退键
segmentors:
- ascii_segmentor #标识英文段落〔譬如在英文模式下〕字母直接上屛
- matcher #配合 recognizer 标识符合特定规则的段落,如网址、反查等,加上特定 tag
- abc_segmentor #标识常规的文字段落,加上 abc 这个 tag
- affix_segmentor@wanxiang_reverse #反查 tag
- affix_segmentor@add_user_dict #自造词tag
- punct_segmentor #标识符号段落〔键入标点符号用〕加上 punct 这个 tag
- fallback_segmentor #标识其他未标识段落必须放在最后帮助tag模式切换后回退重新处理
translators:
- punct_translator #配合 punct_segmentor 转换标点符号
- script_translator #脚本翻译器,用于拼音、粤拼等基于音节表的输入方案
- lua_translator@*version_display #输入'/wx',显示万象项目网址和当前版本号
- lua_translator@*set_schema #输入'/zrm',快速切换为自然码双拼, /flypy→小鹤双拼 /mspy→微软双拼 /zrm→自然码 /sogou→搜狗双拼 /abc→智能ABC /ziguang→紫光双拼 /pyjj→拼音加加 /gbpy→国标双拼 /lxsq→乱序17 /pinyin→全拼
- lua_translator@*shijian #农历、日期、节气、节日、时间、周、问候模板等等,触发清单看下文
- lua_translator@*unicode #通过输入大写U引导并输入Unicode编码获得汉字输出
- lua_translator@*number_translator #数字、金额大写通过输入大写R1234获得候选输出
- lua_translator@*super_calculator #超级计算器Lua内查看高级用法
- lua_translator@*input_statistics #一个输入统计的脚本,以日、周、月、年等维度的统计
- table_translator@custom_phrase #自定义短语 custom_phrase.txt用于置顶自定义编码候选词
- table_translator@chengyu #简码成语词汇表导入
- table_translator@wanxiang_english #英文词汇表导入
- table_translator@wanxiang_mixedcode #混合编码词汇表导入
- reverse_lookup_translator@wanxiang_reverse #挂接部件组字和笔画反查
- script_translator@add_user_dict #按需自造词
- script_translator@user_dict_set #使用自造词
filters:
- lua_filter@*auto_phrase #comment前无感造词关闭调频的时候将汉字写入次翻译器当没有英文候选的时候追加\上屏可完成英文造词
- lua_filter@*super_lookup #comment前字词输入中反查辅助筛选
- lua_filter@*super_filter #comment前,相关功能见Lua文件
- lua_filter@*super_comment_preedit #OpenCC前超级注释模块、超级preedit支持错词提示、辅助码显示部件组字读音注释有声调、无声调全拼编码的转换支持个性化配置和关闭相应的功能详情搜索super_comment_preedit进行详细配置
- lua_filter@*super_replacer #OpenCC替代器更灵活的处理方式更自由的自定义方式
- lua_filter@*super_english #comment前,负责英文方案及中英混输中英文单词格式化,语句流,自动加空格等策略
- lua_filter@*super_sequence*F #手动排序,对高亮候选 ctrl+j左移动 ctrl+k 右移动 ctrl+0 移除位移
- uniquifier # 去重
grammar:
language: wanxiang-lts-zh-hans
collocation_max_length: 7
collocation_min_length: 2
collocation_penalty: -10
non_collocation_penalty: -20
weak_collocation_penalty: -35
rear_penalty: -12
super_comment: # 超级注释模块,子项配置 true 开启false 关闭
candidate_length: 2 # 候选词辅助码提醒的生效长度0为关闭 但同时清空其它,应当使用上面开关来处理
corrector_type: "comment" # 随意更换左右括号,比如"comment" 不加括号为无括号comment占位不能动
chaifen: "chaifen" # 随意更换左右括号,比如"chaifen" 不加括号为无括号chaifen占位不能动
super_replacer:
db_name: lua/replacer
delimiter: "|"
comment_format: "%s"
chain: true #true表示流水线作业上一个option产出交给下一个处理典型的s2t>t2hk=s2hkfalse就是并行直接用text转换
types:
# 场景1输入 '哈哈' -> 变成 '1.哈哈 2.😄'
- option: emoji # 开关名称与上面开关名称保持一致
mode: append # 新增候选append 替换原候选replace 替换注释comment
comment_mode: none # 注释模式: "append"(原候选注释继承), "text"(原候选文本放在注释), "none"(空,默认)
tags: [abc] # 生效的tag
prefix: "_em_" # 前缀用于区分同一个数据库的不同用途数据
files:
- lua/data/emoji.txt
# 场景2输入 'hello' -> 显示 'hello 〔你好 | 哈喽〕'
- option: chinese_english
mode: append # <--- 添加注释模式
comment_mode: none
tags: [abc]
prefix: "_en_"
files:
- lua/data/english_chinese.txt
- lua/data/chinese_english.txt
# 场景3用于常驻的直接替换 option: true
- option: true
mode: append # <--- 新增候选模式
comment_mode: none
tags: [abc]
prefix: "_ot_"
files:
- lua/data/others.txt
# 场景4用于简繁转换的直接替换
- option: [ s2t, s2hk, s2tw ] #后面依赖这条流水线有一个开关为true这条流水线就能工作
mode: replace # <--- 替换原候选模式
comment_mode: append
sentence: true # <--- 句子级别替换
tags: [abc]
prefix: "_s2t_"
files:
- lua/data/STCharacters.txt
- lua/data/STPhrases.txt
- option: s2hk
mode: replace # <--- 替换原候选模式
comment_mode: append
sentence: true # <--- 句子级别替换
tags: [abc]
prefix: "_s2hk_"
files:
- lua/data/HKVariants.txt
- lua/data/HKVariantsRevPhrases.txt
- option: s2tw
mode: replace # <--- 替换原候选模式
comment_mode: append
sentence: true # <--- 句子级别替换
tags: [abc]
prefix: "_s2tw_"
files:
- lua/data/TWVariants.txt
- lua/data/TWVariantsRevPhrases.txt
# 字符集过滤lua
# a,通用规范汉字表
# b,GB2312,
# g,GBK,
# T,Big5,(台港澳常用)
# j,简体,OpenCC (t2s)
# f,通用繁体,OpenCC (s2t)
# h,香港繁体, OpenCC (s2hk)
# t,台湾繁体, OpenCC (s2tw)
# u,基本区,U+4E00 - U+9FFF
# A-I,扩展 A-I 区,U+3400 及各扩展区 (支持到 Ext-I)
# c,兼容区汉字
# 你可以通过黑白名单微调你自己每个开关下面的字符集过滤清单主数据库位于lua/charset.reverse.bin不可编辑
# 你可以按上面提到的规则代号在base处填写上基础集还可以在每一个开关的开白名单设置微调数据就像默认添加的字符集过滤在8105基础上新增了一些
# 你可以定义多个开关多个开启状态的开关求并集比如charset_filter开着s2hk也开着那么就会显示这两个集合的所有汉字
# 优雅的地方在于s2hk开着charset_filter关着 我们照样能使用 港繁能用到的所有字,是真正的本体,无关字会被过滤,而当都开着则是享受简体转换成繁体的后的结果
# 这个设计真正的兼容了简繁转换与字符集过滤的矛盾还能满足用户多种自定义需求你可以在开关增加类别并在charset下面新增option类去选择按照字区去过滤等多种组合方式
charset:
- option: charset_filter
base: a #可以填入多个类别如aj
addlist:
- "诶濛硷氽尛躝〇冇吔咗囧屌鲶芶咲畑垅𰻝𰻞"
blacklist: []
- option: s2t
base: f
addlist: []
blacklist: []
- option: s2hk
base: h
addlist: []
blacklist: []
- option: s2tw
base: t
addlist: []
blacklist: []
# Tips 配置项
tips:
# 禁用的 tips 类型,初始化 tips 数据库的时候会直接忽略相关规则,修改部署后生效
# 可选项为:偏旁,符号,化学式,时间,符号,组字,翻译,表情,货币,车牌
disabled_types: []
# 给 kp_number_processor 用的小键盘模式能自动读取recognizer下面正则与之功能对齐
kp_number_mode: auto
#小键盘数字处理逻辑
# "compose" : 小键盘数字始终不上屏参与编码
# "auto" : 输入中 push空闲时 commit默认
#成语简码前置位置,只能设置在第一页,大于当前页数量则默认在最后一个
idiom_preposition: 3
#shijian:仅仅作为提示使用编码已经写死引导键可以在key_binder下修改前缀
#时间osj 或者 /sj
#日期orq 或者 /rq
#农历onl 或者 /nl
#星期oxq 或者 /xq
#今年第几周oww 或者 /ww
#节气ojq 或者 /jq
#日期+时间odt 或者 /dt
#时间戳ott 或者 /tt
#大写N日期N20250315 或者N0312不带年
#节日ojr 或者 /jr
#问候模板:/day 或者 oday
# 通用日期时间格式化函数(供 /rq、/sj、/dt、N0101、N20150101 场景复用)
# 支持转义:
# \X —— 转义单个字符 X按字面量输出如 \Y \m \H 等)
# [[...]] —— 区块整体按字面量输出
#
# 约定占位符:
# 【日期】
# Y 四位年份 0000-9999 例2025
# y 两位年份 00-99 例25
# m 月(前导零) 01-12 例02
# n 月(不带前导零) 1-12 例2
# d 日(前导零) 01-31 例09
# j 日(不带前导零) 1-31 例9
#
# 【时间】
# H 24小时前导零 00-23 例08
# G 24小时不带零 0-23 例8
# I 12小时前导零 01-12 例08
# l 12小时不带零 1-12 例8 (注意是小写 L
# M 分钟(前导零) 00-59 例05
# S 秒(前导零) 00-59 例09
# p am/pm小写 am / pm
# P AM/PM大写 AM / PM
# 【时区】
# O 带冒号格式 +08:00、-04:30、+05:45
# o 不带冒号格式 +0800、-0430、+0545
date_formats:
- "Y年m月d日"
- "Y-m-d"
- "Y/m/d"
- "Y.m.d"
- "Ymd"
- "Y年n月j日"
- "y年n月j日"
- "n月j日"
time_formats:
- "H:M"
- "H点M分"
- "H:M:S"
- "H时M分S秒"
- "下午I:M"
- "I:M P"
datetime_formats:
- "Y-m-d H:M:S"
- "Y-m-dTH:M:S O"
- "YmdHMS"
- "Y年m月d日 H点M分"
- "y/m/d I:M p"
#常规状态下数字转换成相应的字符由超级preedit接管
tone_preedit:
"7": "¹"
"8": "²"
"9": "³"
"0": "⁴"
# a/、单字母组合,触发预设编码自动上屏快符,支持将值设为"repeat" 以支持对应按键重复上屏功能custom>schema>lua最终合并键值
# 现在就支持26字母快符结合成对符号输入这边的压力小一些
quick_symbol_text:
trigger: "^([a-z])/$"
symkey:
q: "repeat"
w: ""
e: ""
r: ""
t: "~"
y: "·"
u: "『"
i: "』"
o: "〖"
p: "〗"
a: ""
s: "……"
d: "、"
f: "“"
g: "”"
h: ""
j: ""
k: "【"
l: "】"
z: "。”"
x: "?”"
c: "!”"
v: "——"
b: "%"
n: "《"
m: "》"
#通过在有候选的情况下,通过末尾检测到形如\a来触发为第一候选进行成对符号包裹例如nihao\c 候选[你好]
#trigger只能设置为单符号因为按下一次锁定第一候选按下映射开始包裹符号pro用户不能设置为/
#两个字符可以不用|默认前后分割,需要明确区分前后的使用|分割,可以有一侧为空,不可以使用多个||
paired_symbols:
trigger: "\\" #(注意反斜杠这是转义写法\\使用时\单反斜杠即可)
symkey:
# ===== 基本括号与引号 =====
a: "[]" # 方括号
b: "【】" # 黑方头括号
c: "" # 双大括号 / 装饰括号
d: "" # 方头括号
e: "⟮⟯" # 小圆括号 / 装饰括号
f: "⟦⟧" # 双方括号 / 数学集群括号
g: "「」" # 直角引号
# h: 预留用于 Markdown 一级标题
i: "『』" # 双直角引号
j: "<>" # 尖括号
k: "《》" # 书名号(双)
l: "〈〉" # 书名号(单)
m: "" # 法文单书名号
n: "«»" # 法文双书名号
o: "⦅⦆" # 白圆括号
p: "⦇⦈" # 白方括号
q: "()" # 圆括号
r: "〖〗" # 花括号扩展 / 装饰括号
s: "" # 全角方括号
t: "⟨⟩" # 数学角括号
u: "〈〉" # 数学尖括号
v: "❰❱" # 装饰角括号
w: "" # 全角圆括号
x: "" # 全角花括号
y: "⟪⟫" # 双角括号
z: "{}" # 花括号
# ===== 扩展括号族 / 引号 =====
dy: "''" # 英文单引号
sy: "\"\"" # 英文双引号
zs: "“”" # 中文弯双引号
zd: "" # 中文弯单引号
fy: "``" # 反引号
# ===== 双字母括号族 =====
aa: "〚〛" # 双中括号
bb: "〘〙" # 双中括号(小)
cc: "〚〛" # 双中括号(重复,可用于 Lua 匹配)
dd: "" # 小圆括号装饰
ee: "❪❫" # 小圆括号装饰
ff: "❬❭" # 小尖括号装饰
gg: "⦉⦊" # 双弯方括号
ii: "⦍⦎" # 双弯方括号
jj: "⦏⦐" # 双弯方括号
kk: "⦑⦒" # 双弯方括号
ll: "" # 小尖括号装饰
mm: "⌈⌉" # 上取整 / 数学符号
nn: "⌊⌋" # 下取整 / 数学符号
oo: "⦗⦘" # 双方括号装饰(补齐)
pp: "⦙⦚" # 双方括号装饰(补齐)
qq: "⟬⟭" # 小双角括号
rr: "" # 花括号装饰
ss: "⌜⌝" # 数学上角符号
tt: "⌞⌟" # 数学下角符号
uu: "⸢⸣" # 装饰方括号
vv: "⸤⸥" # 装饰方括号
ww: "﹁﹂" # 中文书名号 / 注释引号
xx: "﹃﹄" # 中文书名号 / 注释引号
yy: "⌠⌡" # 数学 / 程序符号
zz: "⟅⟆" # 数学 / 装饰括号
# ===== Markdown / 标记 =====
md: "**|**" # Markdown 粗体
jc: "**|**" # 加粗
it: "__|__" # 斜体
st: "~~|~~" # 删除线
eq: "==|==" # 高亮
ln: "`|`" # 行内代码
cb: "```|```" # 代码块
qt: "> |" # 引用
ul: "- |" # 无序列表项
ol: "1. |" # 有序列表项
lk: "[|](url)" # 链接
im: "![|](img)" # 图片
h: "# |" # 一级标题
hh: "## |" # 二级标题
hhh: "### |" # 三级标题
hhhh: "#### |" # 四级标题
sp: "\\|" # 反斜杠转义
br: "| " # 换行
cm: "<!--|-->" # 注释
# ===== 运算与标记符 =====
pl: "++"
mi: "--"
sl: "//"
bs: "\\\\"
at: "@@"
dl: "$$"
pc: "%%"
an: "&&"
cr: "^^"
cl: "::"
sc: ";;"
ex: "!!"
qu: "??"
sb: "sb"
# Lua 配置:计算器触发关键字
calculator:
trigger: "V"
# 主翻译器,拼音
translator:
dictionary: wanxiang # 挂载主词库
# packs: user #导入根目录下名称为user.dict.yaml的自定义固定词典
#prism: wanxiang # 多方案共用一个词库时,为避免冲突,需要用 prism 指定一个名字。
enable_completion: true # 启用候选词补全
# user_dict: zrm.userdb # 用户词典的文件名称
# db_class: tabledb #开启后就不会产生wanxiang.userdb这样的文件夹会直接输出文本wanxiang.txt同时无法使用同步能力可设 tabledb文本或 userdb二进制
enable_user_dict: true # 是否开启自动调频,即开启用户词典
# enable_sentence: false #是否开启自动造句
# enable_correction: false #是否开启自动纠错
# encode_commit_history: true # 预留历史上屏自动编码成词
core_word_length: 4 # >0 启用,按段学词 + 相邻段拼接
max_word_length: 7 # >0 启用,过长短语不记整词,只加元素权重
contextual_suggestions: false #模型用来开启词组权重预测,效果一般关闭
max_homophones: 5
max_homographs: 5
initial_quality: 3 #初始质量拼音的权重应该比英文大
spelling_hints: 30 #将注释以词典code字符串形式完全暴露通过super_comment.lua完全接管灵活配置。
always_show_comments: true # Rime 默认在 preedit 等于 comment 时取消显示 comment这里强制一直显示供super_comment_preedit.lua做判断用。
comment_format: {comment} #将注释以词典字符串形式完全暴露通过super_preedit.lua完全接管灵活配置。
#disable_user_dict_for_patterns: #如果你开启调频需要一并考虑这个配置是否需要基本的6码3字不调频你可以自定义目前的逻辑是依然记录用户词但满足规则的不输出不被使用
# - "^[a-z]{1,6}"
# 自定义短语
custom_phrase:
dictionary: ""
user_dict: custom_phrase #需要手动创建 custom_phrase.txt 文件
db_class: stabledb #可设 tabledb文本或 userdb二进制
enable_completion: false #补全提示
enable_sentence: false #禁止造句
initial_quality: 99 #custom_phrase 的权重应该比 pinyin 和 wanxiang_en 大
# 简码词库导入位于dicts得chengyu.txt文件词库
chengyu:
dictionary: ""
user_dict: dicts/chengyu
db_class: stabledb
enable_sentence: false
enable_completion: false
initial_quality: 1.3
# 中文、英文、数字、符号等混合词汇
wanxiang_english:
dictionary: wanxiang_english
user_dict: en
enable_completion: true
enable_sentence: true
initial_quality: 2.1
comment_format: #这里很重要如果残留带声调字母,剩余编码提示计算出错引发程序崩溃
- xform/^~.+$//
#英文自动加空格除关闭外共有3种模式可供选择
#off: 关闭; before: 总是前加; after: 总是后加;
#smart: 智能模式连续输入英文时第二个单词前开始加空格,非输入状态的回车与空格都能打断加空格状态
#支持设置延时销毁加空格状态,单位秒,0不超时大于0为超时时间极大的保证了连续输入的体验。
english_spacing: smart
spacing_timeout: 5
wanxiang_mixedcode:
dictionary: wanxiang_mixedcode
db_class: stabledb
enable_completion: true
enable_sentence: false
initial_quality: 2
comment_format: #这里很重要如果残留带声调字母,剩余编码提示计算出错引发程序崩溃
- xform/.*//
# 部件拆字反查
wanxiang_reverse:
tag: wanxiang_reverse
dictionary: wanxiang_reverse
prefix: "`" # 反查前缀(反查时前缀会消失),与 recognizer/patterns/wanxiang_reverse 匹配
tips: "〔反查:拆分|笔画〕"
wanxiang_lookup: #设置归属于super_lookup.lua
tags: [ abc ] # 检索当前tag的候选
key: "`" # 输入中反查引导符,要添加到 speller/alphabet
lookup: [ wanxiang_reverse ] #反查滤镜数据库,万象都合并为一个了
data_source: [db] #对于pro版本能从注释中加载词库辅助码详情见Pro版本base这里无需修改。
enable_tone: true #启用声调反查
# 处理符合特定规则的输入码,如网址、反查
recognizer:
import_preset: default # 从 default.yaml 继承通用的
patterns: # 再增加方案专有的:
punct: "^/([0-9]|10|[A-Za-z]+)$" # 响应 symbols.yaml 的 symbols
wanxiang_reverse: "^`[A-Za-z]*$" # 响应部件拆字与笔画的反查,与 wanxiang_reverse/prefix 匹配
#add_user_dict: "^ac[A-Za-z/`']*$" #引导式造词
unicode: "^U[a-f0-9]+" # U 作为触发前缀,响应 lua_translator@unicode输出 Unicode 字符
number: "^R[0-9]+[.]?[0-9]*" # R 作为触发前缀, 响应 lua_translator@number_translator数字金额大写
sjc: "^[/o]rc\\d+[-+=op]?$"
yr1: "^N0[1-9]?0?[1-9]?"
yr2: "^N1[02]?0?[1-9]?"
yr3: "^N0[1-9]?[1-2]?[1-9]?"
yr4: "^N1[02]?[1-2]?[1-9]?"
yr5: "^N0[1-9]?3?[01]?"
yr6: "^N1[02]?3?[01]?"
nyr1: "^N19?[0-9]?[0-9]?[0-1]?[0-9]?[0-9]?[0-9]?"
nyr2: "^N20?[0-9]?[0-9]?[0-1]?[0-9]?[0-9]?[0-9]?"
calculator: "^V.*$" # V 作为触发前缀,计算器功能引导
#add_user_dict: "^ac[A-Za-z/`']*$" #自造词引导方式
email: "^[A-Za-z][-_.0-9A-Za-z]*@.*$" # email @ 之后不上屏
url: "^(www[.]|https?:|ftp[.:]|mailto:|file:).*$" # URL
# 标点符号
# punctuator 下面有三个子项:
# 设置为一个映射,就自动上屏;设置为多个映射,如 '/' : [ '/', ÷ ] 则进行复选。
# full_shape: 全角没改,使用预设值
# half_shape: 标点符号全部直接上屏,和 macOS 自带输入法的区别是
# '|' 是半角的,
# '~' 是半角的,
# '`'(反引号)没有改成 '·'(间隔号)。
# symbols Rime 的预设配置是以 '/' 前缀开头输出一系列字符,自定义的修改 symbols.yaml
punctuator:
digit_separators: ",." #数字分隔符,系统逻辑是在中文状态下输入数字后继续输入句号按下两次即输入半角状态
__include: wanxiang_symbols:/symbol_table # 从 wanxiang_symbols.yaml 导入所有符号配置
# 从 default 继承快捷键
key_binder:
import_preset: default # 从 default.yaml 继承通用的
sequence: # Lua 配置:手动排序的快捷键 super_sequence.lua不要用方向键各种冲突一定要避免冲突
up: "Control+j" # 上移
down: "Control+k" # 下移
reset: "Control+l" # 重置
pin: "Control+p" # 置顶
# Lua 配置: shijian.lua 的引导符,涉及:日期、时间、节日、节气、生日、问候模板等功能
shijian_keys: ["/", "o"]
# Lua 配置: 超级tips上屏按键
tips_key: "comma" #修改时候去default找
# Lua 配置: 以词定字(上屏当前词句的第一个或最后一个字),和中括号翻页有冲突
select_first_character: "bracketleft" # 左中括号 [
select_last_character: "bracketright" # 右中括号 ]
bindings: # 也可以再增加方案专有的
# 通过按下/发送/+1节约一个按键不冲突的时候可以开启
#- { match: "[a-z]{1,4}", accept: "/", send_sequence: "/1" }
# 翻页 , .
# - { when: paging, accept: comma, send: Page_Up }
# - { when: has_menu, accept: period, send: Page_Down }
# 翻页 [ ]
# - { when: paging, accept: bracketleft, send: Page_Up }
# - { when: has_menu, accept: bracketright, send: Page_Down }
# 翻页 - =
- { when: has_menu, accept: minus, send: Page_Up }
- { when: has_menu, accept: equal, send: Page_Down }
# Option/Alt + ←/→ 切换光标至下/上一个拼音
- { when: always, toggle: ascii_punct, accept: Control+Shift+3 } # 切换中英标点
- { when: always, toggle: ascii_punct, accept: Control+Shift+numbersign } # 切换中英标点
- { when: always, toggle: s2t, accept: Control+Shift+4 } # 切换简繁
- { when: always, toggle: s2t, accept: Control+Shift+dollar } # 切换简繁
- { when: composing, accept: Alt+Left, send: Shift+Left }
- { when: composing, accept: Alt+Right, send: Shift+Right }
- { when: composing, accept: Control+w, send: Control+BackSpace }
#分号用于次选,微软、搜狗双拼不可启用
#- { when: has_menu, accept: semicolon, send: 2 }
#使用Control+e进入翻译模式
- { when: has_menu, accept: "Control+e", toggle: chinese_english}
#使用快捷键Control+a开启和关闭辅助码显示
- { when: has_menu, accept: "Control+a", toggle: tone_hint }
#通过快捷键Control+s使得输入码显示音调
- { when: has_menu, accept: "Control+s", toggle: tone_display }
#通过快捷键Control+t开启超级tips
- { when: has_menu, accept: "Control+t", toggle: super_tips }
#通过快捷键Control+g开启字符集过滤
- { when: has_menu, accept: "Control+g", toggle: charset_filter }
- { when: composing, accept: "Control+g", toggle: charset_filter }
#通过快捷键Shift+space开启输入模式切换
#- { when: always, accept: Shift+space, select: wanxiang } #直接跳转指定方案
#- { when: always, accept: Shift+space, select: wanxiang_pro } #直接跳转指定方案
- { when: always, accept: Shift+space, select: .next } #下一个方案
# 使用 tab 在不同音节之间跳转
- { when: has_menu, accept: "Tab", send: "Control+Right" }
- { when: composing, accept: "Tab", send: "Control+Right" }
#当tab第一个字补码正确后可以使用Ctrl+tab进行上屏并依次补码
- { when: composing, accept: "Control+Tab", send_sequence: '{Home}{Shift+Right}{1}{Shift+Right}' }
#当输入编码后发现没有词,则通过双击``进入造词模式而且不需要删除编码,这个功能与``直接引导相呼应相配合
#- { match: "^.*`$", accept: "`", send_sequence: '{BackSpace}{Home}{`}{`}{End}' }基础版暂时取消这个功能,
#斜杠被占用引导符号,因此输入本身设置为双击
- { match: "^/$", accept: "/", send_sequence: '{space}' }
editor:
bindings:
space: confirm # 空格键:上屏候选项
Return: commit_raw_input # 回车键:上屏原始输入
Control+Return: commit_script_text # Ctrl+回车键:上屏变换后输入(经过 preedit转换的
Control+Shift+Return: commit_comment # Ctrl+Shift+回车键:上屏 comment
BackSpace: revert # 退格键:向前删除(撤消上次输入)
Delete: delete # Delete 键:向后删除
Control+BackSpace: back_syllable # Ctrl+退格键:删除一个音节
Control+Delete: delete_candidate # Ctrl+Delete键删除或降权候选项
Escape: cancel # Esc 键:取消输入
# 拼写设定
speller:
# table_translator翻译器支持自动上屏。例如 “zmhu”可以自动上屏“怎么回事”
# auto_select: true
# auto_select_pattern: ^[a-z]+/|^[a-df-zA-DF-Z]\w{3}|^e\w{4}
# 如果不想让什么标点直接上屏,可以加在 alphabet或者编辑标点符号为两个及以上的映射alphabet就是将字符纳入输入编码的范畴
alphabet: zyxwvutsrqponmlkjihgfedcbaZYXWVUTSRQPONMLKJIHGFEDCBA1234567890`;/\
# initials 定义仅作为始码的按键,排除 ` 让单个的 ` 可以直接上屏
initials: zyxwvutsrqponmlkjihgfedcbaZYXWVUTSRQPONMLKJIHGFEDCBA/
delimiter: " '" # 系统配置,第一位<空格>是拼音之间的分隔符;第二位<'>表示可以手动输入单引号来分割拼音。
visual_delimiter: " " # super_preedit.lua配置是否让分隔符号跟着一起转换例如nǐ'hǎo 在实际使用中表现出视觉拥挤我们可以让delimiter平时是'转换为拼音的时候使用空格nǐ hǎo更符合实际。
tone_isolate: true # super_preedit.lua配置是否将数字声调从转换后拼音中隔离出来true=隔离, false 直接参与转换例如nǐ3
algebra:
__patch:
#- 模糊音 #模糊音选择性开启
- wanxiang_algebra:/base/全拼 #拼音转双拼码
# 自定义词典
user_dict_set:
dictionary: wanxiang
initial_quality: 0
enable_completion: false
enable_sentence: false
spelling_hints: 50
contextual_suggestions: false #模型预测,假设模型里面有的四个字的词汇 现在智能 而首选组合 现在只能 当你输入 现在 上屏后下一次输入zhi neng就会输出智能前提是没有权重更高的了很明显这与你的预期“现在只能”不符。很明显实际上又要预测又要连续句子放一起是很难优雅的。
max_homophones: 5
max_homographs: 5
comment_format:
enable_user_dict: false
user_dict: zc
# 自定义词典加词(``引导)
add_user_dict:
tag: add_user_dict
dictionary: wanxiang
initial_quality: -1
user_dict: zc
enable_completion: true # 提前显示尚未输入完整码的字〔仅 table_translator 有效〕
enable_user_dict: false
enable_auto_phrase: true # lua造词功能在custom开启相关功能位于auto_phrase.lua开启后模型能造的句子不造词现有的词不造词只造词库没有的选词可造词
spelling_hints: 50
comment_format:
prefix: "``"
tips: "〔开始造词〕"