rime中州韵 symbols.custom.yaml 配置

发布时间:2023年12月28日

今天我们所做的配置,将实现扩展符号的输入效果,如下👇:
20231228190945

基础扩展符号的配置

要实现输入法能够输入扩展的符号,我们需要在输入方案中引入扩展符号集。

如果你使用的输入方案是 wubi_pinyin.schema.yaml, 那么你需要在 用户文件夹 中修改 wubi_pinyin.custom.yaml 文档以加入符号集。

如果你使用的输入方案是 luna_pinyin.schema.yaml, 那么你需要在 用户文件夹 中修改 luna_pinyin.custom.yaml 文档以加入符号集。

你应该明白,我的意思是你应该在你所使用的输入方案对应的 用户文件夹 下的 custom.yaml 文档内做修改。

什么? 用户文件夹 下没有对应的 custom.yaml?没关系,没有就创建他,如下👇:

# 请先确认你在 **用户文件夹** 内哦
touch wubi_pinyin.custom.yaml

假如你已经找到并打开了对应输入方案的 custom.yaml 文档,请你在文档内的添加如下👇的修改/添加(注意节点位置):

# encoding:utf-8
patch:
  punctuator:  # 设置标点符号集
    import_preset: symbols

完成上述修改/添加后,请保存你的 custom.yaml 文档,然后 重新部署 你的 Rime 输入法。
20231227184850

然后,你将可以通过 / 符号做为前缀来使用扩展符号了,如下👇
20231228153432

默认符号的遗憾

如上👆,我们可以看到在符号 /sb (上标)的输入候选框内,上标 ? 对应的索引号是 1, 上标 1 对应的索引号是 2,而上标 ? 对应的索引号是 0。也就是说,上标的号码与索引的号码是错位的。

不知道其它人的使用体验如何,就我个人而言,更希望上标 ? 对应的索引号是 0,而上标 1 对应的索引号是 1,其它上标 2 ~ 上标 ? 对应的索引号依次对应数字 29,如此在进行上标号输入时,就可以快速的进行选字了。

有人问,如果编号超过了 9 怎么办?确实,例如在甲子纪年中,60年一甲子,第 1 年是 甲子 年,第 9 年是 壬申,这都可以和索引序号对齐,这都好理解。那第 10 年的 癸酉 年怎么和索引序号对应呢?

关于这个问题,我的解决方案是使用翻页次数来标示十位上的数值。这怎么理解呢?下面举个例子就明白了。例如我们表示第 10 年的 癸酉 年。我们可以把 10 里十位上的 1 看成需要翻页一次,而 10 里个位上的 0 表示候选项的索引序号,如此以来,则候先项 癸酉 的位置应该位于第二页(翻一次页)的索引序号 0 的位置。

照此逻辑,在干支纪年序列中,第 23 个年份的干支选项应该位于翻两次页后的索引序号为 3 的位置。这个位置应该是 丙戌

自定义符号选项

有了上面的符号与候选项之间的映射关系,我们很容易就有了需求,就是我们需要重新定义符号集,以使这些符号的出现位置与索引序号之间建立对应的关系。

symbols.custom.yaml 文档

我们要定制符号集,我们需要在 用户文件夹 下的 symbols.custom.yaml 文档内操作。如果你的 用户文件夹 下没有 symbols.custom.yaml 文档,请创建它。

# 请确认你已经在 **用户文件夹** 内
touch symbols.custom.yaml

patch节点

显然,我们在 symbols.custom.yaml 文档内所做的定制内容,应该位于 patch 节点内。

/zt 状态

👇以下所定义的符号用于表示一组状态,可以通过 /zt 来进行输入:

patch:
  punctuator/symbols/+:
    "/zt": ["?", "?", "?", "?"]

/tj 推荐指数

👇以下所定义的符号用于表示一组推荐指数,可以通过 /tj 来进行输入:

patch:
  punctuator/symbols/+:
    "/tj": ["★☆☆☆☆", "★★☆☆☆", "★★★☆☆", "★★★★☆", "★★★★★", "None6", "None7", "None8", "None9", "☆☆☆☆☆"]

/jd 进度条

👇以下所定义的符号用于表示一组进度条,可以通过 /jd 来进行输入:

patch:
  punctuator/symbols/+:
    "/jd": ["▉▁▁▁▁", "▉▉▁▁▁", "▉▉▉▁▁", "▉▉▉▉▁", "▉▉▉▉▉", "None6", "None7", "None8", "None9", "▁▁▁▁▁"]

/dc 对错

👇以下所定义的符号用于表示一组对错符号,可以通过 /dc 来进行输入:

patch:
  punctuator/symbols/+:
    "/dc": ["?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?"]

/lm 罗马数字

👇以下所定义的符号用于表示一组罗马数字,可以通过 /lm 来进行输入:

patch:
  punctuator/symbols/+:
    "/lm": ["ⅰ", "ⅱ", "ⅲ", "ⅳ", "ⅴ", "ⅵ", "ⅶ", "ⅷ", "ⅸ", "None", "?", "?", "?", "?", "?", "?", "17", "18", "19", "ⅹ"]

/lmd 罗马数字大写

👇以下所定义的符号用于表示一组罗马数字的大写符号,可以通过 /lmd 来进行输入:

patch:
  punctuator/symbols/+:
    "/lmd": ["Ⅰ", "Ⅱ", "Ⅲ", "Ⅳ", "Ⅴ", "Ⅵ", "Ⅶ", "Ⅷ", "Ⅸ", "None", "Ⅺ", "Ⅻ", "?", "?", "?", "?", "17", "18", "19", "Ⅹ"]

/szd 数字(带)点

👇以下所定义的符号用于表示一组还有点号的数字,可以通过 /szd 来进行输入:

patch:
  punctuator/symbols/+:
    "/szd": ["⒈", "⒉", "⒊", "⒋", "⒌", "⒍", "⒎", "⒏", "⒐", "None", "⒒", "⒓", "⒔", "⒕", "⒖", "⒗", "⒘", "⒙", "⒚", "⒑", "None11", "None12", "None13", "None14", "None15", "None16", "None17", "None18", "None19", "⒛"]

/szk 数字(带)括号

👇以下所定义的符号用于表示一组还有括号的数字,可以通过 /szk 来进行输入:

patch:
  punctuator/symbols/+:
    "/szk": ["⑴", "⑵", "⑶", "⑷", "⑸", "⑹", "⑺", "⑻", "⑼", "None", "⑾", "⑿", "⒀", "⒁", "⒂", "⒃", "⒄", "⒅", "⒆", "⑽", "None21", "None22", "None23", "None24", "None25", "None26", "None27", "None28", "None29", "⒇"]

/szm 数字(苏州码字)

👇以下所定义的符号用于表示一组苏州码字,可以通过 /szm 来进行输入:

patch:
  punctuator/symbols/+:
    "/szm": ["〡", "〢", "〣", "〤", "〥", "〦", "〧", "〨", "〩", "None", "None11", "None12", "None13", "None14", "None15", "None16", "None17", "None18", "None19", "?", "None21", "None22", "None23", "None24", "None25", "None26", "None27", "None28", "None29", "?", "None31", "None32", "None33", "None34", "None35", "None36", "None37", "None38", "None39", "?"]

/szq 数字(带)圈

👇以下所定义的符号用于表示一组带圈的数字,可以通过 /szq 来进行输入:

patch:
  punctuator/symbols/+:
    "/szq": ["①", "②", "③", "④", "⑤", "⑥", "⑦", "⑧", "⑨", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "⑩", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "None51", "None52", "None53", "None54", "None55", "None56", "None57", "None58", "None59", "?"]

/szz 数字(中文)

👇以下所定义的符号用于表示一组中文数字,可以通过 /szz 来进行输入:

patch:
  punctuator/symbols/+:
    "/szz": ["壹", "貳", "叄", "肆", "伍", "陆", "柒", "捌", "玖", "零", "佰", "仟", "None13", "None14", "None15", "None16", "None17", "None18", "None19", "拾"]

/hzq 汉字(带)圈

👇以下所定义的符号用于表示一组带圈的汉字,可以通过 /hzq 来进行输入:

patch:
  punctuator/symbols/+:
    "/hzq": ["一", "二", "三", "四", "五", "六", "七", "八", "九", "月", "火", "水", "木", "金", "土", "日", "株", "有", "社", "十", "名", "特", "财", "祝", "劳", "秘", "男", "女", "适", "优", "?", "注", "项", "休", "写", "㊣", "?", "?", "?", "?", "?", "医", "宗", "学", "监", "企", "资", "协", "夜", "?", "?", "?", "?"]

/hzk 汉字(带)括号

👇以下所定义的符号用于表示一组带括号的汉字,可以通过 /hzk 来进行输入:

patch:
  punctuator/symbols/+:
    "/hzk": ["㈠", "㈡", "㈢", "㈣", "㈤", "㈥", "㈦", "㈧", "㈨", "月", "火", "水", "木", "金", "土", "日", "㈱", "有", "社", "㈩", "名", "特", "财", "祝", "劳", "代", "呼", "学", "监", "企", "资", "协", "祭", "休", "自", "至"]

/fs 分数符号

👇以下所定义的符号用于表示一组分数符号,可以通过 /fs 来进行输入:

patch:
  punctuator/symbols/+:
    "/fs": ["?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "None21", "None22", "?", "None24", "?", "None26", "None27", "None28", "None29", "None20", "None31", "None32", "None33", "?", "?", "None36", "None37", "?", "None39", "None30", "None41", "None42", "None43", "None44", "?", "None46", "None47", "None48", "None49", "None40", "None51", "None52", "None53", "None54", "None55", "?", "None57", "?", "None59", "None50", "None61", "None62", "None63", "None64", "None65", "None66", "None67", "None68", "None69", "None60", "None71", "None72", "None73", "None74", "None75", "None76", "None77", "?", "None79", "None70"]

/gz 干支

👇以下所定义的符号用于表示一组干支记数的序列,可以通过 /gz 来进行输入:

patch:
  punctuator/symbols/+:
    "/gz": ["甲子", "乙丑", "丙寅", "丁卯", "戊辰", "己巳", "庚午", "辛未", "壬申", "None", "甲戌", "乙亥", "丙子", "丁丑", "戊寅", "己卯", "庚辰", "辛巳", "壬午", "癸酉", "甲申", "乙酉", "丙戌", "丁亥", "戊子", "己丑", "庚寅", "辛卯", "壬辰", "癸未", "甲午", "乙未", "丙申", "丁酉", "戊戌", "己亥", "庚子", "辛丑", "壬寅", "癸巳", "甲辰", "乙巳", "丙午", "丁未", "戊申", "己酉", "庚戌", "辛亥", "壬子", "癸卯", "甲寅", "乙卯", "丙辰", "丁巳", "戊午", "己未", "庚申", "辛酉", "壬戌", "癸丑", "None61", "None62", "None63", "None64", "None65", "None66", "None67", "None68", "None69", "癸亥"]

/xzm 星座名

👇以下所定义的符号用于表示一组星座名,可以通过 /xzm 来进行输入:

patch:
  punctuator/symbols/+:
    "/xzm": ["白羊座", "金牛座", "双子座", "巨蟹座", "狮子座", "室女座", "天秤座", "天蝎座", "射手座", "摩羯座", "宝瓶座", "双鱼座"]

/sb 上标

👇以下所定义的符号用于表示一组上标符号,可以通过 /sb 来进行输入:

patch:
  punctuator/symbols/+:
    "/sb": ["1", "2", "3", "?", "?", "?", "?", "?", "?", "?", "???", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?"]

/xb 下标

👇以下所定义的符号用于表示一组下标符号,可以通过 /xb 来进行输入:

patch:
  punctuator/symbols/+:
    "/xb": ["?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?"]

/an 按钮

👇以下所定义的符号用于表示一组按钮符号,可以通过 /an 来进行输入:

patch:
  punctuator/symbols/+:
    "/an": ["🅰", "🆎", "🅱", "🆑", "🆒", "🆓", "?", "🆔", "?", "🆕", "🆖", "🅾", "🆗", "🅿", "🆘", "🆙", "🆚", "?", "🈯", "💹", "??", "??", "?", "🏧", "🚾", "?", "🅿?", "🈳", "🈂?", "🛂", "🛃", "🛄", "🛅", "🚹", "🚺", "🚼", "🚻", "🚮", "🎦", "📶", "🈁", "🔣", "??", "🔤", "🔡", "🔠", "🆖", "🆗", "🆙", "🆒", "🆕", "🆓", "0??", "1??", "2??", "3??", "4??", "5??", "6??", "7??", "8??", "9??", "🔟", "🔢", "#??", "*??", "??", "??", "?", "?", "?", "?", "?", "?", "?", "?", "?", "?", "??", "🔼", "🔽", "??", "??", "??", "??", "↗?", "↘?", "↙?", "↖?", "??", "??", "??", "??", "??", "??", "🔀", "🔁", "🔂", "🔄", "🔃"]

/jq 节气

👇以下所定义的符号用于表示一组节气,可以通过 /jq 来进行输入:

patch:
  punctuator/symbols/+:
    "/jq": ["立春", "雨水", "惊蛰", "春分", "清明", "谷雨", "立夏", "小满", "芒种", "夏至", "小暑", "大暑", "立秋", "处暑", "白露", "秋分", "寒露", "霜降", "立冬", "小雪", "大雪", "冬至", "小寒", "大寒"]

/bs 部首

👇以下所定义的符号用于表示一组部首符号,可以通过 /bs 来进行输入:

patch:
  punctuator/symbols/+:
    "/bs": ["丨", "亅", "丿", "乛", "一", "乙", "丶", "乚", "十", "厂", "匚", "刂", "卜", "冂", "亻", "八", "人", "入", "勹", "儿", "匕", "几", "亠", "冫", "丷", "冖", "讠", "凵", "卩", "阝", "刀", "力", "又", "厶", "廴", "干", "艹", "屮", "彳", "巛", "川", "辶", "寸", "大", "飞", "彑", "工", "弓", "廾", "广", "己", "彐", "巾", "口", "马", "门", "宀", "女", "犭", "山", "彡", "尸", "饣", "士", "扌", "氵", "纟", "巳", "土", "囗", "兀", "夕", "小", "忄", "幺", "弋", "尢", "夂", "子", "贝", "比", "灬", "长", "车", "歹", "斗", "厄", "方", "风", "父", "戈", "卝", "户", "火", "旡", "见", "斤", "耂", "毛", "木", "牛", "牜", "爿", "片", "攴", "攵", "气", "欠", "犬", "日", "氏", "礻", "手", "殳", "水", "瓦", "王", "韦", "文", "无", "毋", "心", "穴", "牙", "爻", "曰", "月", "爫", "支", "止", "爪", "车", "白", "癶", "甘", "瓜", "禾", "钅", "立", "龙", "矛", "皿", "母", "目", "疒", "鸟", "皮", "生", "石", "矢", "示", "罒", "田", "玄", "疋", "业", "衤", "用", "玉", "臣", "虫", "而", "耳", "缶", "艮", "虍", "臼", "老", "耒", "米", "糸", "齐", "肉", "色", "舌", "糹", "网", "西", "覀", "行", "血", "羊", "页", "衣", "羽", "聿", "至", "舟", "竹", "自", "辰", "赤", "辵", "豆", "谷", "龟", "角", "里", "卤", "麦", "身", "豕", "辛", "言", "邑", "酉", "鱼", "豸", "走", "足", "采", "齿", "非", "阜", "金", "隶", "黾", "青", "鱼", "雨", "隹", "釒", "革", "骨", "鬼", "韭", "面", "食(飠)", "首", "香", "音", "髟", "高", "鬲", "黄", "鹿", "麻", "鼎", "黑", "黍", "鼓", "鼠", "裏", "鼻", "龠"]

半角标点符号

👇以下,定义一半角标点符号的候选项,当我们输入对应的标点时,输入法会根据我们的定义给我们提供更丰富的候选项。

patch:
  punctuator/full_shape/+:
    # 全角标点暂不做处理
  punctuator/half_shape/+:
    "@": "@"
    "$": ["¥", "$"]
    "*": "*"
    "{": "{"
    "}": "}"
    "[": ["[", "【","「", "╚", "└", "『", "╔", "┌", "╠"]
    "]": ["]", "】", "」", "╝", "┘", "』", "╗", "┐", "╣"]
    "|": "|"
    "-": "-"
    _: ["_", "╩", "╦"]
    "\\": "、"
    "/": ["/"]
    "%": "%"
    "`": ["`", "```", "```python", "```bash", "```Python 3", "```C#", "```yaml"]
    "~": "~"
    "=": "="
    "^": "……"
    "#": ["#", "%23", "№", "╬"]

wubi_pinyin.custom.yaml文档

以上👆所配置的 wubi_pinyin.custom.yaml 文档内的内容,你也可以直接下载 wubi_pinyin.custom.yaml 使用。

symbols.custom.yaml文档

以上👆所配置的 symbols.custom.yaml 文档内的内容,你也可以直接下载 symbols.custom.yaml 使用。

小结

今天的分享,完成了 symbols.custom.yaml 的定制。根据你的需要,你可以调整和增加更丰富的符号集。

文章来源:https://blog.csdn.net/weixin_42148809/article/details/135276539
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。