-
Notifications
You must be signed in to change notification settings - Fork 0
/
zrm.custom.yaml
274 lines (234 loc) · 7.26 KB
/
zrm.custom.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
patch:
"engine/processors/@before 2":
chord_composer # 实现并击按键处理
#lua_processor@*chord_composer_processor # 实现并击按键处理
chord_composer:
finish_chord_on_first_key_release: true #有一键被释放时立刻触发合成
#finish_trigger_release_num: 2 #可以设置任意数量键释放后才触发合成,而不仅仅是一键,优先级高于前者first_key_release的配置
#alphabet: qazwsxedcrfvtgbyhnujmik,ol.p;/ `
alphabet: qazwsxedcrfvtgb12345yhnujmik,ol.p;/67890 `
algebra:
#
##
# 预处理
# 符号和数字映射为大写字母,分离其转义干扰
- xlit|;,./|ACXZ|
#
# 声明空格所用的按键和其易于表达的变换编码
- xlit| |一| # 主空格
#- xlit|-|二| # 左手次空格
#- xlit|[|三| # 左手三空格
#- xlit|`|四| # 左手四空格
#- xlit|=|壹| # 右手空格
#- xlit|]|贰| # 右手次空格
#- xlit|'|叁| # 右手三空格
#- xlit|\|肆| # 右手四空格
# 这里启用了多个空格,理论上如果你还有空格可以再加,做空格的键不一样也可以直接改
# 增加空格需要在前面的字母表那里(允许接受并击的按键列表)添加
#
# 处理单手击的表示(添加下划线,表示另一手未击) #允许存在单手配左右空格,允许单手数字区表示
- xform/^([qwertasdfgzxcvb12345]+)([一二三四五壹贰叁肆伍]*)$/$1_$2/
# xx => xx_
- xform/^([yuiophjklAnmCXZ67890]+)([一二三四五壹贰叁肆伍]*)$/_$1$2/
# yy => _yy
- xform/^([qwertasdfgzxcvb12345]+)([yuiophjklAnmCXZ67890]+)([一二三四五壹贰叁肆伍]*)$/$1$2$3/
#
# 将编码包装(用一对尖括号包裹起来)
- xform/([qwertasdfgzxcvb12345]+)/<$1>/
# 左手编码包装
- xform/([yuiophjklAnmCXZ67890]+)/<$1>/
# 右手编码包装
- xform/([一二三四五壹贰叁肆伍]+)/<$1>/
# 空格区编码包装
#
##
# 主处理区(顺序可以随便排)
# 字母部分指法映射(齐列&标准) #被注释掉的部分是冲突的,其它的应该是一样的
# 没有经过仔细的校对,有问题的话可能得麻烦自己增改一下
- xform=(<zv>|<mZ>)=Q=
- xform=(<wv>|<no>)=W=
- xform=(<ev>|<ni>)=E=
- xform=(<et>|<yi>)=R=
- xform=(<qt>|<yp>)=T=
- xform=(<wt>|<yo>)=Y=
- xform=(<af>|<jA>)=U=
- xform=(<xv>|<mX>)=I=
- xform=(<aw>|<oA>)=O=
- xform=(<qf>|<jp>)=P=
- xform=(<wer>|<uio>)=/=
- xform=(<qwe>|<iop>)=\=
- xform=(<rt>|<yu>)=[=
- xform=(<ert>|<yui>)=]=
#
- xform=(<av>|<nA>)=A=
- xform=(<sv>|<nl>)=S=
- xform=(<dv>|<nk>)=D=
- xform=(<sg>|<hl>)=F=
- xform=(<dg>|<hk>)=G=
- xform=(<ar>|<uA>)=H=
- xform=(<xf>|<jX>)=J=
- xform=(<xc>|<CX>)=K=
- xform=(<sr>|<ul>)=L=
- xform=(<dc>|<mk>)=~=
- xform=(<fv>|<nj>)=|=
- xform=(<fg>|<hj>)=(=
- xform=(<dfg>|<hjk>)=)=
#
- xform=(<zf>|<jZ>)=Z=
- xform=(<xd>|<kX>)=X=
- xform=(<xb>|<nX>)=C=
- xform=(<zs>|<lZ>)=V=
- xform=(<qw>|<op>)=B=
- xform=(<se>|<il>)=N=
- xform=(<wd>|<ko>)=M=
- xform=(<at>|<yA>)=<=
- xform=(<ag>|<hA>)=>=
- xform=(<zx>|<XZ>)=@=
- xform=(<vb>|<nm>)=$=
#
- xform=(<q>|<p>)=q=
- xform=(<w>|<o>)=w=
- xform=(<e>|<i>)=e=
- xform=(<r>|<u>)=r=
- xform=(<t>|<y>)=t=
- xform=(<ef>|<ji>)=y=
- xform=(<er>|<ui>)=u=
- xform=(<we>|<io>)=i=
- xform=(<wr>|<uo>)=o=
- xform=(<qr>|<up>)=p=
- xform=(<qe>|<ip>)=%=
- xform=(<wg>|<ho>)=-=
# - xform=(<qg>|<hp>)={equal}=
- xform/(<qg>|<hp>)/=/
#
- xform=(<a>|<A>)=a=
- xform=(<s>|<l>)=s=
- xform=(<d>|<k>)=d=
- xform=(<f>|<j>)=f=
- xform=(<g>|<h>)=g=
- xform=(<wf>|<jo>)=h=
- xform=(<df>|<jk>)=j=
- xform=(<sd>|<kl>)=k=
- xform=(<sf>|<jl>)=l=
- xform=(<as>|<lA>)=:=
- xform=(<ad>|<kA>)=;=
- xform=(<asd>|<klA>)='=
- xform=(<rf>|<uj>)=_=
- xform=(<rg>|<hu>)={braceleft}=
- xform=(<eg>|<hi>)=}=
#
- xform=(<z>|<Z>)=z=
- xform=(<x>|<X>)=x=
- xform=(<c>|<C>)=c=
- xform=(<v>|<m>)=v=
- xform=(<b>|<n>)=b=
- xform=(<sc>|<ml>)=n=
- xform=(<cv>|<mC>)=m=
- xform=(<sdf>|<jkl>)=,=
- xform=(<wef>|<jio>)=.=
- xform=(<sef>|<jil>)=!=
- xform=(<zb>|<nZ>)=?=
- xform=(<zc>|<CZ>)=#=
- xform=(<zxc>|<CXZ>)=*=
- xform=(<xcv>|<mCX>)=&=
- xform=(<cvb>|<nmC>)=+=
# 数字部分指法映射
- xform=(<1>)=1=
- xform=(<2>)=2=
- xform=(<3>)=3=
- xform=(<4>)=4=
- xform=(<5>)=5=
- xform=(<35>)=6=
- xform=(<34>)=7=
- xform=(<23>)=8=
- xform=(<24>)=9=
- xform=(<14>)=0=
- xform=(<12>)=^=
- xform=(<13>)=`=
#
- xform=(<6>)=5=
- xform=(<7>)=4=
- xform=(<8>)=3=
- xform=(<9>)=2=
- xform=(<0>)=1=
- xform=(<68>)=6=
- xform=(<78>)=7=
- xform=(<89>)=8=
- xform=(<79>)=9=
- xform=(<70>)=0=
- xform=(<90>)=^=
- xform=(<80>)=`=
#- xform/^UU$/<1>/
# 空格组合区
################################
################## 单空格 ############
- xform|(.)_<一>|<"1>$1_|
- xform|_(.)<一>|<"1>_$1|
- xform|(..)<一>|<"1>$1|
- xform|^<一>|<1>|
##### 使用多空格请先把这段单空格配置注释掉 #########################################
########## 多空格 ############
#- xform|(.)_<一>|<"1>$1_|
#- xform|_(.)<一>|<"2>_$1|
#- xform|(..)<一>|$1<1>|
#- xform|^<一>|<1>|
#- xform|(.)_<壹>|<"2>$1_|
#- xform|_(.)<壹>|<"1>_$1|
#- xform|(..)<壹>|$1<1>|
#- xform|^<壹>|<2>|
#- xform|(.)_<一壹>|<"3>$1_|
#- xform|_(.)<一壹>|<"3>_$1|
#- xform|(..)<一壹>|$1<2>|
#- xform|^<一壹>|<3>|
# 符号标并
#- xform|(.)_<二>|$1_。|
#- xform|_(.)<二>|_$1。|
#- xform|(..)<二>|$1。|
#- xform|^<二>|<4>|
#- xform|(.)_<贰>|$1_,|
#- xform|_(.)<贰>|_$1,|
#- xform|(..)<贰>|$1,|
#- xform|^<贰>|<3>|
#- xform|(..)<二贰>|$1<5>|
#- xform|^<二贰>|<5>|
###################################
#
- xform/<1>/ /
#- xform/<2>/-/
#- xform/<3>/`/
#- xform/<4>/=/
#- xform/<5>/'/
#- xform/<6>/\/
- xform/<"1>/"/
#- xform/<"2>/""/
#- xform/<"3>/"""/
#
#
##
# 后处理
#- xform/_(`|~|\*|&|@|'|!)/$1_/
#- xform/^([0-9])([0-9])$/$1__$2/
- xform/^.*<.+>.*$//
# 屏蔽未定义的指法
- xform=,="""",=
- xform=。="""".=
- xform=!=""""!=
- xform=?=""""?=
# 符号转义的后处理
#
#
##
prompt_format:
# 码元显示效果修正
- xform/"""",$/,/
- xform/""""\.$/。/
- xform/""""!$/!/
- xform/""""\?$/?/
# - xform/(.+)/$1/
#output_format:
# - xform/(.+)/$1/
__patch:
# Rx: 语言模型 {
- patch/+:
__include: grammar:/huayu
# }