Comments (8)
不顯示拼音比較簡單,就刪除這裏列出的轉寫規則:
改成同時顯示按鍵和拼音需要一些技巧。類似做法有:
https://github.com/rime/rime-cangjie/blob/d0f6f521ec049166ada29085434126be175f6439/cangjie5.schema.yaml#L68
簡單地說就是在拼寫運算規則裏先複寫輸入碼,然後轉換其中一份,另一份保持原樣。
from rime-double-pinyin.
@lotem 感谢🙏🏻,使用下面的配置,现在能同时显示拼音和按键了:
translator:
dictionary: luna_pinyin
preedit_format:
- 'xform/^([a-z ]*)$/$1\t (\U$1\E)/' # 显示大写按键,不能使用\L替换\U,否则会被下面的正则给改掉
- "xform/([bpmfdtnljqx])n/$1iao/"
- "xform/(\\w)g/$1eng/"
- "xform/(\\w)q/$1iu/"
- "xform/(\\w)w/$1ei/"
- "xform/([dtnlgkhjqxyvuirzcs])r/$1uan/"
- "xform/(\\w)t/$1ve/"
- "xform/(\\w)y/$1un/"
- "xform/([dtnlgkhvuirzcs])o/$1uo/"
- "xform/(\\w)p/$1ie/"
- "xform/([jqx])s/$1iong/"
- "xform/(\\w)s/$1ong/"
- "xform/(\\w)d/$1ai/"
- "xform/(\\w)f/$1en/"
- "xform/(\\w)h/$1ang/"
- "xform/(\\w)j/$1an/"
- "xform/([gkhvuirzcs])k/$1uai/"
- "xform/(\\w)k/$1ing/"
- "xform/([jqxnl])l/$1iang/"
- "xform/(\\w)l/$1uang/"
- "xform/(\\w)z/$1ou/"
- "xform/([gkhvuirzcs])x/$1ua/"
- "xform/(\\w)x/$1ia/"
- "xform/(\\w)c/$1ao/"
- "xform/([dtgkhvuirzcs])v/$1ui/"
- "xform/(\\w)b/$1in/"
- "xform/(\\w)m/$1ian/"
- "xform/([aoe])\\1(\\w)/$1$2/"
- "xform/(^|[ '])v/$1zh/"
- "xform/(^|[ '])i/$1ch/"
- "xform/(^|[ '])u/$1sh/"
- "xform/([jqxy])v/$1u/"
- "xform/([nl])v/$1ü/"
- 'xform/(\([A-Z ]*\))$/\L$1\E/' # 把大写转换成小写
prism: double_pinyin_flypy
如果需要显示大写的按键,把prism: double_pinyin_flypy
的上一行删掉即可。
from rime-double-pinyin.
明白了,修改配置如下,实现双拼在前,拼音在后,使用|
分隔。
translator:
dictionary: luna_pinyin
preedit_format:
- 'xform/^(.*)$/\U$1\E\t | $1/'
- "xform/([bpmfdtnljqx])n/$1iao/"
- "xform/(\\w)g/$1eng/"
- "xform/(\\w)q/$1iu/"
- "xform/(\\w)w/$1ei/"
- "xform/([dtnlgkhjqxyvuirzcs])r/$1uan/"
- "xform/(\\w)t/$1ve/"
- "xform/(\\w)y/$1un/"
- "xform/([dtnlgkhvuirzcs])o/$1uo/"
- "xform/(\\w)p/$1ie/"
- "xform/([jqx])s/$1iong/"
- "xform/(\\w)s/$1ong/"
- "xform/(\\w)d/$1ai/"
- "xform/(\\w)f/$1en/"
- "xform/(\\w)h/$1ang/"
- "xform/(\\w)j/$1an/"
- "xform/([gkhvuirzcs])k/$1uai/"
- "xform/(\\w)k/$1ing/"
- "xform/([jqxnl])l/$1iang/"
- "xform/(\\w)l/$1uang/"
- "xform/(\\w)z/$1ou/"
- "xform/([gkhvuirzcs])x/$1ua/"
- "xform/(\\w)x/$1ia/"
- "xform/(\\w)c/$1ao/"
- "xform/([dtgkhvuirzcs])v/$1ui/"
- "xform/(\\w)b/$1in/"
- "xform/(\\w)m/$1ian/"
- "xform/([aoe])\\1(\\w)/$1$2/"
- "xform/(^|[ '])v/$1zh/"
- "xform/(^|[ '])i/$1ch/"
- "xform/(^|[ '])u/$1sh/"
- "xform/([jqxy])v/$1u/"
- "xform/([nl])v/$1ü/"
- 'xform/([^|]*)/\L$1\E/'
prism: double_pinyin_flypy
from rime-double-pinyin.
有。
from rime-double-pinyin.
发现一个小问题,上面的配置文件在输入是合法的双拼的时候能正常工作,但是当输入不是合法的双拼时就不显示按键了。
例如依次按下host
四个键,ho
是合法的双拼,对应拼音huo
,而st
不是合法的双拼,此时整体就 只会显示 huost
。好像在输入不是合法双拼的时候,preedit_format
下面的规则就没有全部执行?
from rime-double-pinyin.
會全部執行。注意這些規則不是對全部輸入碼的轉換,是對當前中文候選所對應的輸入碼區間的變換。非中文輸入的部分原樣顯示。
輸出格式中的\t
表示插入點/光標位置,允許在光標之後添加提示。僅當插入點位於整個輸入串末尾時纔會顯示光標之後的部分。
從直觀角度,最好把格式改成輸入碼在前,拼音標註在光標位置(\t
)後面。
from rime-double-pinyin.
明白了,修改配置如下,实现双拼在前,拼音在后,使用
|
分隔。
如果這樣改,我反而覺得雙拼輸入碼在後面比較好,和不構成拼音的輸入碼連在一起。
看錯了,代碼裏仍然用了 \t
分隔兩部分。可以。
from rime-double-pinyin.
被困扰很久,终于解决了。
能不能集成在默认配置里,非常有用。
from rime-double-pinyin.
Related Issues (12)
- 是否能增加类似搜狗超级简拼的功能? HOT 12
- 有没有办法让双拼支持/X符号功能? HOT 1
- 如何使用双拼的辅助码呢 HOT 1
- 将双拼桥接字母有大写字母转换成小型大写字母以方便用户中英混输 HOT 2
- 小鶴雙拼方案之中英並行
- 如何使输入字母保持原样? HOT 1
- 不支持形码吗? HOT 5
- 在双拼模式下无法输出简化字? HOT 6
- 如何让最后一个声母使用简拼 HOT 1
- 小鹤双拼中第一个输入u与 k无法立即显示候选词汇
- 智能ABC双拼方案,输入ba,候选词却是zhe的相关候选词 HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rime-double-pinyin.