mirror of
https://github.com/d0zingcat/rime_wanxiang.git
synced 2026-05-13 15:10:03 +00:00
chore: 修改说明
This commit is contained in:
14
README.md
14
README.md
@@ -215,7 +215,7 @@ wanxiang.custom.yaml是对wanxiang.schema.yaml的补丁以此类推
|
||||
schema,default,weasel,squirrel
|
||||
```
|
||||
|
||||
注意不要删除和变更每一个custom的表头。
|
||||
注意不要删除和变更每一个custom的表头。**关于如何patch,参见方案文件中custom目录携带的patch方法论**
|
||||
|
||||
更详细参照:[🚀 Rime 万象拼音输入方案 新手安装配置指南](https://docs.qq.com/doc/DQ0FqSXBmYVpWVFpy?rtkey=)
|
||||
|
||||
@@ -341,12 +341,19 @@ wanxiang_lookup:
|
||||
#shijian:仅仅作为提示使用,编码已经写死,引导键可以在key_binder下修改前缀
|
||||
#时间:osj 或者 /sj
|
||||
#日期:orq 或者 /rq
|
||||
#日期差:orc 或者 /rc
|
||||
#之所以单独列出是为了保证rq能直接数字上屏,这个功能需要输入数字,所以/rc这一步不能上屏,
|
||||
#但我们把逻辑后置用来代表结束就能在结束时也使用数字上屏,使用方法:
|
||||
#/rc26p,/rc26+,/rc26p= 随意一个都是加上这个差值,得到未来日期;
|
||||
#/rc26-,/rc26o 随意一个都是减去这个差值,得到过去日期
|
||||
#以此实现了主键盘不用刻意按下shift,-=两个按键直接按,手机上也有op兼容可用,小键盘-+直接用
|
||||
#农历:onl 或者 /nl
|
||||
#星期:oxq 或者 /xq
|
||||
#今年第几周:oww 或者 /ww
|
||||
#节气:ojq 或者 /jq
|
||||
#日期+时间:odt 或者 /dt
|
||||
#时间戳:ott 或者 /tt
|
||||
#/utc查询热门城市UTC时间
|
||||
#大写N日期:N20250315 或者N0312不带年
|
||||
#节日:ojr 或者 /jr
|
||||
#问候模板:/day 或者 oday
|
||||
@@ -425,6 +432,9 @@ datetime_formats:
|
||||
|
||||
**自动上屏:** 例如:三位、四位简码唯一时,自动上屏如`jjkw岌岌可危` `zmhu怎么回事` 。默认未开启,方案文件中`speller:`字段下取消注释这两句开启 `# auto_select: true # auto_select_pattern: ^[a-z]+/|^[a-df-zA-DF-Z]\w{3}|^e\w{4}`
|
||||
|
||||
**数字后自动半角:** 当中文状态输入数字的时候后面立即输入,。将自动转换为数字分割符,例如科学记数法1000,000 小数点 3.1415,如果你加入冒号:还可以优雅的输入时间12:30,当然你还可以双击输入的符号恢复全角符号的输出。但若你完全没有场景使用该功能,则可以通过patch,将其修改为commit
|
||||
```punctuator/digit_separators: ",." > punctuator/digit_separators: commit```
|
||||
|
||||
**错音错字提示:** 例如:输入`gei yu给予`,获得`jǐ yǔ`提示,此功能与全拼、双拼类型无关全部支持;
|
||||
|
||||
<img src="https://storage.deepin.org/thread/202509260127525844_错音给予.jpg" height="80"> <img src="https://storage.deepin.org/thread/202509260127524705_错音崩溃.jpg" height="80">
|
||||
@@ -469,7 +479,7 @@ datetime_formats:
|
||||
|
||||
**中文无感造词Lua(仅PRO):** 在关闭调频的情况下,通过逐步选字选词的方式上屏将为你记录整段,且不会产生小碎片,所造词汇与db用户词是一回事,遵循用户词管理的相关逻辑,其中直接上屏不造词。相比按需造词更加不打断输入。
|
||||
|
||||
**英文造词Lua:** 例如当输入scx的时候没有任何候选,此时可以追加\,```scx\```可以触发创建候选,但是有的时候我们想要任意编码进行英文造词,但是又有汉字在前面怎么办,本着一次不行就来两次的原则```nihao\\```末尾输入两个就可以了。然后空格上屏他就记录到了en.userdb,导出和同步与用户词逻辑一致。
|
||||
**英文造词Lua:** 例如当输入scx的时候没有任何候选,此时可以追加\,```scx\```可以触发创建候选,但是有的时候我们想要任意编码进行英文造词,但是又有汉字在前面怎么办,本着一次不行就来两次的原则```nihao\\```末尾输入两个就可以了。当然你也可以统一理解为按两下来触发强制英文候选。然后空格上屏他就记录到了en.userdb,导出和同步与用户词逻辑一致。
|
||||
|
||||
**用户词删除:** 使用Ctrl+del是rime系统删除用户词,就可以将用户词标记为c<=0,这在rime系统中就表现为不使用,假性删除。
|
||||
|
||||
|
||||
@@ -1,12 +1,77 @@
|
||||
|
||||
# Rime YAML Custom Patch 语法指南
|
||||
patch是对方案文件前端配置文件做出补丁修改的最高权重配置文件
|
||||
权重排序为 custom.yaml > schema.yaml > default.yaml
|
||||
我们修改方案功能要找准目标,例如修改wanxiang.schema.yaml则需要创建或者修改wanxiang.custom.yaml,dict.yaml是不能被patch的
|
||||
|
||||
知道了以上信息我们还要了解custom的工作逻辑,在编译的时候,文件将先处理本文件内的引用如:引用__include: 补丁__patch: 跟随__append:
|
||||
因此当schema中如果涉及到__include等这些方法,那么你看到的则不是最终形态,最终形态可以在build文件夹中看到他递归整理后的样子,而我们custom patch就是对这个最终形态进行修改,所以我们不能patch一个__include段落就是这个缘故。
|
||||
同样在custom文件中我们为了简化也可以使用__include这样的命令,比如我们预设文件中引用了关系到双拼类型的转写文件,同样是先将这个文件对应的段落拿进来,再用这个段落替换schema原本的段落从而完成修改。
|
||||
```
|
||||
patch:
|
||||
speller/algebra:
|
||||
__patch:
|
||||
- wanxiang_algebra:/pro/自然码
|
||||
- wanxiang_algebra:/pro/直接辅助
|
||||
```
|
||||
知道了这些我们说一个极为重要的点:**一个custom文件顶层必须只有一个patch:**
|
||||
|
||||
在YAML语法中同一个段落内的内容必须按层级进行两个空格的缩进,依次4个、6个缩进下去,因此写在patch:下面的内容也不例外,那么能不能顶层再写东西了?答案是可以
|
||||
但不能插入到patch内容的中间,这将会截断整个patch段落,你可以将这些内容放在文件的最后,不干扰patch段落,就像万象携带的模糊音等段落。
|
||||
|
||||
1、引用__include
|
||||
```
|
||||
schema:
|
||||
__include: xxx
|
||||
```
|
||||
将顶层段落xxx下面的内容放在schema下面
|
||||
|
||||
```
|
||||
schema:
|
||||
__include: xxx
|
||||
```
|
||||
将顶层段落xxx下面的内容放在与schema同级的位置,注意看缩进的位置
|
||||
|
||||
```
|
||||
schema:
|
||||
__include: wanxiang_algebra:/xxx
|
||||
```
|
||||
将wanxiang_algebra.yaml文件中,顶层段落xxx下面的内容放在与schema下面
|
||||
|
||||
2、补丁__patch: 跟随__append:
|
||||
|
||||
在单个段落下功能用法等同于__include,几乎没什么区别,但他可以叠加使用,如:
|
||||
```
|
||||
patch:
|
||||
speller/algebra:
|
||||
__include: wanxiang_algebra:/mixed/通用派生规则
|
||||
__patch: wanxiang_algebra:/mixed/全拼
|
||||
```
|
||||
在使用了__include的下面我们可以继续使用__patch来让另一个段落继续跟过来,如果是两个__include摞起来是没用的
|
||||
但这也并非__patch自己完全的功劳,因为在转写段落跟随在一起的情况下我们还会在原段落加入跟随__append命令,形如:
|
||||
```
|
||||
patch:
|
||||
speller/algebra:
|
||||
__include: wanxiang_algebra:/mixed/通用派生规则
|
||||
__patch: wanxiang_algebra:/mixed/全拼
|
||||
#另一个文件中
|
||||
mixed:
|
||||
全拼:
|
||||
__append:
|
||||
- xxx
|
||||
- yyy
|
||||
```
|
||||
patch可单用于段落整合,也可用于表与表之间的内容拼接,拼接时叠加__append:跟随命令使得两个表段落拼接到一起共同作为上层段落的值
|
||||
|
||||
知道了以上几个命令我们大概率能完成本文件内“最终态”的认识,在这个基础上我们开始了对schema打补丁的操作。
|
||||
|
||||
在打补丁前我们可以将段落的上层认为是本层的key键,本层及其下面所有认为是上层的值value,在这个概念的加持下,我们学习一些patch语法如下:
|
||||
## 语法表格
|
||||
|
||||
| 操作类型 | 语法 | 说明 |
|
||||
| -------------- | ------------------------- | ---------------------------- |
|
||||
| **新增** | `key/+:` | 在某个列表中追加值,自动加在末尾 |
|
||||
| **删除** | `key/-:`(不可用) | 从列表中移除值(不可用) |
|
||||
| **删除** | `key/-:`(错误示例不可用) | 从列表中移除值(错误示例不可用) |
|
||||
| **全局替换** | `key: new_value` | 替换整个键的值 |
|
||||
| **部分替换** | `key/index/subkey: value` | 修改列表中的特定项,不影响其他项 |
|
||||
| **特定行替换** | engine/filters/@12 | 替换列表中第13行的值 |
|
||||
@@ -35,6 +100,8 @@ patch:
|
||||
|
||||
# Rime YAML Patch 机制解析
|
||||
|
||||
我们看到可以基于层级使用/依次代表下一层的路径,也可以:换行空两格代表,但是在patch中这个事情确整出了差别,如下:
|
||||
|
||||
## 为什么 `menu/page_size: 10` 和 `menu: { page_size: 10 }` 结果不同?
|
||||
|
||||
在 **Rime YAML Patch 机制** 下,`menu/page_size: 10` 和 `menu: { page_size: 10 }` **看似等价**,但 **行为是不同的**,主要原因在于 **Patch 机制的覆盖策略**。
|
||||
|
||||
@@ -268,4 +268,4 @@ patch:
|
||||
- xlit/qwertyuiopasdfghjklzxcvbnm/QWWRRYUIIPASSFFHJJLZXXVBBM
|
||||
14jian:
|
||||
__append:
|
||||
- xlit/qwertyuiopasdfghjklzxcvbnm/QQEETTUUOOAADDGGJJLZZCCBBM
|
||||
- xlit/qwertyuiopasdfghjklzxcvbnm/QQEETTUUOOAADDGGJJLZZCCBBM
|
||||
@@ -2,7 +2,7 @@ patch:
|
||||
speller/algebra:
|
||||
__patch:
|
||||
#- 模糊音 # 这里启用后,本文件末尾可配置具体条目
|
||||
- wanxiang_algebra:/pro/自然码 # 可选输入方案名称:自然码, 自然龙, 小鹤双拼, 搜狗双拼, 微软双拼, 智能ABC, 紫光双拼, 国标双拼,龙三
|
||||
- wanxiang_algebra:/pro/自然码 # 可选输入方案名称:自然码, 自然龙, 小鹤双拼, 搜狗双拼, 微软双拼, 智能ABC, 紫光双拼, 国标双拼
|
||||
- wanxiang_algebra:/pro/直接辅助 #辅助码升级为:直接辅助和间接辅助两种类型,都是句中任意,不同点在于直接辅助是nire=你 而间接则需要/引导 ni/re=你 ,在这个基础上直接辅助支持拼音后任意位置数字声调参与,间接辅助声调在/引导前参与
|
||||
#- 自然码提权 #本文件末尾,有自然码和小鹤的可以用
|
||||
##########################以上格式受指令初始化控制,最好保持格式不变,如果发生变更请不要使用指令修改相关数据#####################################
|
||||
|
||||
Reference in New Issue
Block a user