问题描述
由于要考虑兼容「小狼毫助手」的单行读写,早期版本是以「单行格式」为读写目标:
patch:
app_options/chrome.exe: {ascii_mode: true}
app_options/cmd.exe: {ascii_mode: true}
app_options/conhost.exe: {ascii_mode: true}
但是后来发现 weasel.custom.yaml
会被机器覆写,考虑最低成本的解决方案,我们现在修改一下 weasel.custom.yaml
的结构:
patch:
__include: "hot_keys:/patch"
"style/color_scheme": "amber-2"
指定 hot_keys.yaml
下的 patch
节点为外部引用,看一下结果:
- hot_keys.yaml
patch:
app_options/chrome.exe: {ascii_mode: false}
app_options/cmd.exe: {ascii_mode: false}
app_options/conhost.exe: {ascii_mode: false}
app_options/test1.exe: {ascii_mode: true}
app_options/test2.exe: {ascii_mode: true}
app_options/test3.exe: {ascii_mode: true}
部署结果:
- /build/weasel.yaml
__build_info:
rime_version: 1.8.5
timestamps:
hot_keys: 1679776238
hot_keys.custom: 0
weasel: 1679684987
weasel.custom: 1679775931
app_options:
chrome.exe:
ascii_mode: false
cmd.exe:
ascii_mode: false
conhost.exe:
ascii_mode: false
test1.exe:
ascii_mode: true
test2.exe:
ascii_mode: true
test3.exe:
ascii_mode: true
完全符合预期,即使从小狼毫自带的设置入口中,以「改配色」的方式重新覆写,也不会再改变上述结构,测试完全通过。
下面,就是修改 rimetool
的源代码,把读写的目标,改为 hot_keys.yaml
即可,其余事务逻辑不发生改变。
源码修改
rimetool
中,仅需修改读写对像为 hot_keys.yaml
即可。
目前,rimetool
的源码已经修改完毕,小狼毫的编译打包文件也已更新。Linux
与 MacOS
上也将更新。