rime-ice/double_pinyin_flypy.schema.yaml

281 lines
10 KiB
YAML
Raw Normal View History

2022-11-26 21:42:11 +01:00
# Rime schema
# encoding: utf-8
2022-12-02 07:14:59 +01:00
# 复制自 rime_ice.schema.yaml ,适配了双拼。
2022-11-29 04:15:58 +01:00
# 双拼键位映射复制自 https://github.com/rime/rime-double-pinyin
# 双拼之间主要就是 speller/algebra 和 translator/preedit_format 这里有区别。
#
2022-12-02 07:14:59 +01:00
# 全拼的自定义文本和双拼有些冲突,改成了 custom_phrase_double ,需要创建 custom_phrase_double.txt 文件。
2023-01-03 05:46:18 +01:00
#
2023-05-09 15:19:59 +02:00
# 默认启用的中英混输词库是全拼的,需要在 melt_eng.dict.yaml 中修改为对应的双拼的。
2023-06-15 17:16:01 +02:00
# 还需要在英文方案 melt_eng.schema.yaml 将数字的拼写规则 __include: algebra_rime_ice 改为对应的双拼。
2022-11-26 21:42:11 +01:00
# 方案说明
schema:
2022-11-29 04:15:58 +01:00
schema_id: double_pinyin_flypy
name: 小鹤双拼
2022-11-26 21:42:11 +01:00
version: "1"
author:
- Dvel
description: |
2022-11-29 04:15:58 +01:00
雾凇拼音 - 小鹤双拼
2022-11-26 21:42:11 +01:00
https://github.com/iDvel/rime-ice
dependencies:
2022-11-29 04:15:58 +01:00
- melt_eng # 英文输入,作为次翻译器挂载到拼音方案
- liangfen # 两分拼字,作为反查挂载到拼音方案
2022-11-26 21:42:11 +01:00
2023-02-02 12:30:46 +01:00
# 开关
# 鼠须管 0.16 后,用快捷键切换时的提示文字由 states 定义
# states: 方案选单显示的名称。可以注释掉,仍可以通过快捷键切换。
# reset: 默认状态。 注释掉后,切换窗口时不会重置到默认状态。
2022-11-26 21:42:11 +01:00
switches:
- name: ascii_mode
states: [ 中, ]
2022-11-26 21:42:11 +01:00
reset: 0
- name: ascii_punct # 中英标点
states: [ ¥, $ ]
2022-11-26 21:42:11 +01:00
reset: 0
- name: traditionalization
2023-02-02 12:30:46 +01:00
states: [ 简, 繁 ]
2022-11-26 21:42:11 +01:00
reset: 0
- name: emoji
states: [ 💀, 😄 ]
reset: 1
- name: full_shape
states: [ 半角, 全角 ]
reset: 0
2022-11-26 21:42:11 +01:00
2023-02-08 19:06:20 +01:00
# 输入引擎
2022-11-26 21:42:11 +01:00
engine:
processors:
- lua_processor@select_character # 以词定字
2022-11-26 21:42:11 +01:00
- ascii_composer
- recognizer
- key_binder
- speller
- punctuator
- selector
- navigator
- express_editor
segmentors:
- ascii_segmentor
- matcher
- abc_segmentor
- punct_segmentor
- fallback_segmentor
translators:
- punct_translator
- script_translator
- lua_translator@date_translator # 时间、日期、星期
- table_translator@custom_phrase # 自定义短语 custom_phrase_double.txt
2022-11-29 04:15:58 +01:00
- table_translator@melt_eng # 英文输入
- reverse_lookup_translator@liangfen # 反查,两分拼字
- lua_translator@unicode # Unicode
- lua_translator@number_translator # 数字、金额大写
2022-11-26 21:42:11 +01:00
filters:
2023-08-06 12:37:28 +02:00
- lua_filter@corrector # 错音错字提示
- simplifier@emoji # Emoji
- simplifier@traditionalize # 简繁切换
- lua_filter@autocap_filter # 英文自动大写
2023-05-16 16:21:36 +02:00
- lua_filter@reduce_english_filter # 降低部分英语单词在候选项的位置
- uniquifier # 去重
2022-11-26 21:42:11 +01:00
# Lua 配置: 日期、时间、星期、ISO 8601、时间戳的触发关键字
date_translator:
date: date # 日期: 2022-11-29
time: time # 时间: 18:13
week: week # 星期: 星期二
datetime: datetime # ISO 8601 2022-11-29T18:13:11+08:00
timestamp: timestamp # 时间戳: 1669716794
# Lua 配置: 降低部分英语单词在候选项的位置。
2023-04-05 18:04:21 +02:00
# 详细介绍 https://dvel.me/posts/make-rime-en-better/#短单词置顶的问题
# 正常情况: 输入 rug 得到 「1.rug 2.如果 …… 」
# 降低之后: 输入 rug 得到 「1.如果 2.rug …… 」
# 几种模式:
# all 降低所有 3~4 位长度、前 2~3 位是完整拼音、最后一位是声母的单词
# none 不降低任何单词,相当于没有启用这个 Lua
2023-12-08 15:40:51 +01:00
# custom 自定义,只降低 words 里的
# (匹配的是编码,不是单词)
2023-04-05 18:04:21 +02:00
reduce_english_filter:
mode: custom # all | none | custom
idx: 2 # 降低到第 idx 个位置
# 自定义的单词列表,示例列表没有降低部分常用单词,如 and cat mail Mac but bad shit ……
words: [aid, ann,
bail, bait, bam, band, bans, bat, bay, bend, bent, benz, bib, bid, bien, biz, boc, bop, bos, bud, buf,
cab, cad, cain, cam, cans, cap, cas, cef, chad, chan, chap, chef, cher, chew, chic, chin, chip, chit, coup, cum, cunt, cur,
dab, dag, dal, dam, dent, dew, dial, diet, dim, din, dip, dis, dit, doug, dub, dug, dunn,
fab, fax, fob, fog, foul, fur,
gag, gail, gain, gal, gam, gaol, ged, gel, ger, guam, gus, gut,
hail, ham, hank, hans, hat, hay, heil, heir, hem, hep, hud, hum, hung, hunk, hut,
jim, jug,
kat,
lab, lad, lag, laid, lam, laos, lap, lat, lax, lay, led, leg, lex, liam, lib, lid, lied, lien, lies, linn, lip, lit, liz, lob, lug, lund, lung, lux,
mag, maid, mann, mar, mat, med, mel, mend, mens, ment, mil, mins, mint, mob, moc, mod, mop, mos, mot, mud, mug, mum, nail,
nap, nat, nay, neil, nib, nip, noun, nous, nun, nut,
pac, paid, pail, pain, pair, pak, pal, pam, pans, pant, pap, par, pat, paw, pax, pens, pic, pier, pies, pins, pint, pit, pix, pod, pop, pos, pot, pour, pow, pub,
rand, rant, rent, rep, res, ret, rex, rib, rid, rig, rim, rub, rug, rum, runs,
sac, sail, sal, sam, sans, sap, saw, sax, sew, sham, shaw, shin, sig, sin, sip, sis, suit, sung, suns, sup, sur, sus,
tad, tail, taj, tar, tax, tec, ted, tel, ter, tex, tic, tied, tier, ties, tim, tin, tit, tour, tout, tum,
2023-11-24 13:08:27 +01:00
wag, wand, womens, wap, wax, weir, won,
yan, yen]
2023-04-05 18:04:21 +02:00
2023-04-06 14:38:38 +02:00
# 主翻译器,拼音
2022-11-26 21:42:11 +01:00
translator:
2023-07-19 01:32:43 +02:00
dictionary: rime_ice # 挂载词库 rime_ice.dict.yaml
prism: double_pinyin_flypy # 多方案共用一个词库时,为避免冲突,需要用 prism 指定一个名字。
2023-08-06 12:37:28 +02:00
spelling_hints: 8 # corrector.lua :为了让错音错字提示的 Lua 同时适配全拼双拼,将拼音显示在 comment 中
always_show_comments: true # corrector.lua Rime 默认在 preedit 等于 comment 时取消显示 comment这里强制一直显示供 corrector.lua 做判断用。
2023-07-19 01:32:43 +02:00
initial_quality: 1.2 # 拼音的权重应该比英文大
preedit_format: # preedit_format 影响到输入框的显示和“Shift+回车”上屏的字符
2022-11-29 04:15:58 +01:00
- xform/([bpmfdtnljqx])n/$1iao/
2022-11-26 21:42:11 +01:00
- xform/(\w)g/$1eng/
- xform/(\w)q/$1iu/
2022-11-29 04:15:58 +01:00
- xform/(\w)w/$1ei/
2022-11-26 21:42:11 +01:00
- xform/([dtnlgkhjqxyvuirzcs])r/$1uan/
- xform/(\w)t/$1ve/
2022-11-29 04:15:58 +01:00
- xform/(\w)y/$1un/
2022-11-26 21:42:11 +01:00
- xform/([dtnlgkhvuirzcs])o/$1uo/
2022-11-29 04:15:58 +01:00
- xform/(\w)p/$1ie/
2022-11-26 21:42:11 +01:00
- xform/([jqx])s/$1iong/
- xform/(\w)s/$1ong/
2022-11-29 04:15:58 +01:00
- xform/(\w)d/$1ai/
2022-11-26 21:42:11 +01:00
- xform/(\w)f/$1en/
- xform/(\w)h/$1ang/
- xform/(\w)j/$1an/
2022-11-29 04:15:58 +01:00
- 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/
2022-11-26 21:42:11 +01:00
- xform/([dtgkhvuirzcs])v/$1ui/
2022-11-29 04:15:58 +01:00
- xform/(\w)b/$1in/
2022-11-26 21:42:11 +01:00
- 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ü/
2023-04-06 14:38:38 +02:00
# 次翻译器,英文
2022-11-26 21:42:11 +01:00
melt_eng:
dictionary: melt_eng # 挂载词库 melt_eng.dict.yaml
enable_sentence: false # 禁止造句
enable_user_dict: false # 禁用用户词典
initial_quality: 1.1 # 初始权重
2023-02-27 10:18:06 +01:00
comment_format: # 自定义提示码
- xform/.*// # 清空提示码
2022-11-26 21:42:11 +01:00
# 反查:两分(拼字)
liangfen:
dictionary: liangfen # 挂载两分词典 liangfen.dict.yaml
prefix: "L" # 以 L 开头来反查
enable_completion: true # 补全提示
# tips: 〔两分〕 # 反查时显示的文字,建议注释掉,否则很多 L 开头的英文单词也会显示这个
# 自定义短语
custom_phrase:
dictionary: ""
user_dict: custom_phrase_double # 需要手动创建 custom_phrase_double.txt 文件
db_class: stabledb
enable_completion: false # 补全提示
enable_sentence: false # 禁止造句
initial_quality: 99 # custom_phrase 的权重应该比 pinyin 和 melt_eng 大
# Emoji
emoji:
opencc_config: emoji.json
option_name: emoji
# 简繁切换
traditionalize:
option_name: traditionalization
opencc_config: s2t.json # s2t.json | s2hk.json | s2tw.json | s2twp.json
tips: none # 转换提示: all 都显示 | char 仅单字显示 | none 不显示。
excluded_types: [ reverse_lookup ] # 不转换反查(两分拼字)的内容
2022-11-26 21:42:11 +01:00
# 标点符号
# punctuator 下面有三个子项:
# full_shape 全角标点映射
# half_shape 半角标点映射
# symbols Rime 的预设配置是以 '/' 前缀开头输出一系列字符,自定义的 symbols_caps_v.yaml 修改成了 'V' 开头。
2022-11-26 21:42:11 +01:00
punctuator:
full_shape:
__include: default:/punctuator/full_shape # 从 default.yaml 导入配置
half_shape:
__include: default:/punctuator/half_shape # 从 default.yaml 导入配置
symbols:
__include: symbols_caps_v:/symbols # 从 symbols_caps_v.yaml 导入配置
2022-11-26 21:42:11 +01:00
# 处理符合特定规则的输入码,如网址、反查
recognizer:
import_preset: default # 从 default.yaml 继承通用的
patterns: # 再增加方案专有的:
punct: "^V([0-9]|10|[A-Za-z]+)$" # 响应 symbols_caps_v.yaml 的 symbols
reverse_lookup: "^L[a-z]+$" # 响应两分拼字的反查
unicode: "^U[a-f0-9]+" # 响应 Unicode
number: "^R[0-9]+[.]?[0-9]*" # 响应 number_translator
2022-11-26 21:42:11 +01:00
# 从 default 继承快捷键
key_binder:
import_preset: default # 从 default.yaml 继承通用的
# bindings: # 也可以再增加方案专有的
2022-11-26 21:42:11 +01:00
# 拼写设定
speller:
# 如果不想让什么标点直接上屏,可以加在 alphabet或者编辑标点符号为两个及以上的映射
alphabet: zyxwvutsrqponmlkjihgfedcbaZYXWVUTSRQPONMLKJIHGFEDCBA
delimiter: " '" # 第一位<空格>是拼音之间的分隔符;第二位<'>表示可以手动输入单引号来分割拼音。
2022-11-26 21:42:11 +01:00
algebra:
- erase/^xx$/
- derive/^([jqxy])u$/$1v/
- derive/^([aoe])([ioun])$/$1$1$2/
- xform/^([aoe])(ng)?$/$1$1$2/
- xform/iu$/Ⓠ/
- xform/(.)ei$/$1Ⓦ/
- xform/uan$/Ⓡ/
- xform/[uv]e$/Ⓣ/
- xform/un$/Ⓨ/
- xform/^sh/Ⓤ/
- xform/^ch/Ⓘ/
- xform/^zh/Ⓥ/
- xform/uo$/Ⓞ/
- xform/ie$/Ⓟ/
- xform/(.)i?ong$/$1Ⓢ/
- xform/ing$|uai$/Ⓚ/
- xform/(.)ai$/$1Ⓓ/
- xform/(.)en$/$1Ⓕ/
- xform/(.)eng$/$1Ⓖ/
- xform/[iu]ang$/Ⓛ/
- xform/(.)ang$/$1Ⓗ/
- xform/ian$/Ⓜ/
- xform/(.)an$/$1Ⓙ/
- xform/(.)ou$/$1Ⓩ/
- xform/[iu]a$/Ⓧ/
- xform/iao$/Ⓝ/
- xform/(.)ao$/$1Ⓒ/
- xform/ui$/Ⓥ/
- xform/in$/Ⓑ/
- xlit/ⓆⓌⓇⓉⓎⓊⒾⓄⓅⓈⒹⒻⒼⒽⒿⓀⓁⓏⓍⒸⓋⒷⓃⓂ/qwrtyuiopsdfghjklzxcvbnm/
# - abbrev/^(.).+$/$1/ # 首字母简拼,开启后会导致 3 个字母时 kj'x 变成 k'jx 的问题