home
home copied to clipboard
并击输入的转义字符正则表达式失效
/ \ * 这三个符号无法在chord_composer中被匹配
可能沒有正確轉義。
\ *
在正則表達式裏有特殊含義,\
在YAML字符串裏也用作轉義字符。
/
在RIME的補丁裏有特殊含義,是否成爲問題要看用在哪裏。
可能沒有正確轉義。
\ *
在正則表達式裏有特殊含義,\
在YAML字符串裏也用作轉義字符。/
在RIME的補丁裏有特殊含義,是否成爲問題要看用在哪裏。
chord_composer:
alphabet: '`gvfc4rt653edGVFCRTEDhnjm9iu780olHNJMIUOLp-[;=2ws1qaPWSQAyYbBxXzZkK,.:]'' /*\'
最近重新试了一下,这三个符号情况如下:
*
无论是shift+8还是小键盘的 *
都无法参与编码,会直接上屏
\
可以通过 -xform/\\/someword/
使用,转义正常
和问号同一个键的 /
可以参与编码,但是无法使用类似 -xform/\//someword/
的语句替换
小键盘的 /
无法参与编码,会直接上屏
chord_composer/alphabet
定義的是用於並擊的按鍵。用在並擊中,*
實爲並擊{Shift_L}
和8
兩個按鍵。除非鍵盤上有一個專門的*
鍵,才需要在alphabet
裏面定義。
拼寫運算不支持對字段分隔符轉義。可以換一個不在當前表達式裏出現的字段分隔符,比如用 |
,或者空格。
小鍵盤的按鍵與主鍵盤區對應字符按鍵的鍵值不同,需要在 chord_composer/alphabet
裏另行指明。但小鍵盤的按鍵是否能用於並擊,我也沒有經驗。
chord_composer/alphabet
定義的是用於並擊的按鍵。用在並擊中,*
實爲並擊{Shift_L}
和8
兩個按鍵。除非鍵盤上有一個專門的*
鍵,才需要在alphabet
裏面定義。拼寫運算不支持對字段分隔符轉義。可以換一個不在當前表達式裏出現的字段分隔符,比如用
|
,或者空格。小鍵盤的按鍵與主鍵盤區對應字符按鍵的鍵值不同,需要在
chord_composer/alphabet
裏另行指明。但小鍵盤的按鍵是否能用於並擊,我也沒有經驗。
原来如此 目前我在设计一个包含小键盘的并击输入法(通过改造键盘,已经在物理上重新调整了小键盘区),应该怎么指明小键盘上按键的键值呢?
我想用
\
做开头,可是遇到了困难
在 YAML 的双引号字符串中,\
有特殊含义,"\\"
表示一个 \
字符。
在正则表达式中, \
有特殊含义,匹配一个 \
的表达式应写作 \\
。
因此,用 YAML 双引号字符串写正则表达式时,匹配一个 \
的表达式是 "\\\\"
。
在 YAML 的单引号字符串中,\
没有特殊含义,因此写作 '\\'
。
收到, 还得是老哥你,。 我这下午折腾了俩小时, 愣是没办法。