【笔记】工具 - 输入法 - rime 小狼毫(weasel)

rime 优点:简洁😄、自定义🔩、本地🌐、全平台💯️

下面记录操作笔记📖、相关链接🔗

下载

官网下载:https://rime.im/download/

项目构成

https://github.com/rime

在这里插入图片描述

官方文档:https://github.com/rime/home/wiki/Introduction#項目構成

  • librime - 输入法引擎
  • ibus-rime - Linux发行版
  • weasel(小狼毫) - windows发行版
  • squirrel(鼠鬓管) - mac发行版
  • plum(东风破) - 配置管理器及输入法方案仓库
  • essay(八股文) - 预设词典及语言模型

概念

方案(schema)

官方文档:https://github.com/rime/home/wiki/RimeWithSchemata#方案定義

在这里插入图片描述在这里插入图片描述

不同方案代表不同的输入习惯,如:拼音、五笔、注音、…

同时不同方案会读取多个不同(或相同)的词典
(“方案”“词典”一对多)

用戶文件夾(UserData)

官方文档:https://github.com/rime/home/wiki/UserData#內容

在这里插入图片描述在这里插入图片描述
输入法运行时保存的数据,如:用户词典、安装信息、选项状态等。

各文件具体含义参考官方文档

程序文件 - 共享文件夾(SharedData)

官方文档:https://github.com/rime/home/wiki/SharedData

不建议修改“程序目录文件”,而应该将自定义配置写在“用户目录”

在访问权限控制严格的系统中,共享文件夹是只读的,因为修改可能会导致更新失败或数据丢失

在这里插入图片描述在这里插入图片描述

“程序文件夹”下 /data 目录有各种 .yaml 文件,这是对 Rime 进行自定义的文件。

Rime 輸入法在查找一項資源的時候,會優先訪問 用戶文件夾 中的文件。 用戶文件不存在時,再到共享文件夾中尋找。

内容:https://github.com/rime/home/wiki/SharedData#內容

  • 常规设置 weasel.yaml
    修改控制托盘图标、候选词横竖排列、界面配色等等功能时编辑 weasel.custom.yaml 文件
  • 默认设置 default.yaml
    修改控制快捷键、按键上屏等等时编辑 default.custom.yaml 文件
  • 字符设置 symbols.yaml

(以上全局设置,亦即不论使用何种输入方案,均起作用。 )

*.schema.yaml 则是对不同方案的配置

基础使用

下面记录几个常用功能。

详细参考官方文档:https://github.com/rime/home/wiki/UserGuide

# 切换方案选单(如:繁/简)

官方文档:https://github.com/rime/home/wiki/UserGuide#使用方案選單

切换快捷键:F4Ctrl+`

https://github.com/rime/home/wiki/UserGuide#部分輸入方案的用法

# 用户词典管理

官方文档:https://github.com/rime/home/wiki/UserGuide#用戶詞典管理

在这里插入图片描述

词典和输入方案是一对多的关系

概念:“词典”,“词典快照”、“文本码表”

官方文档:https://github.com/rime/home/wiki/RimeWithSchemata#碼表與詞典

  • “文本码表”
    记录用户的输入习惯(常用输入字)
  • “词典” 是“文本码表”的参考书
    当某次输入的代码不存在于“文本码表”,会从”字典“中查找
  • “词典快照” 是“文本码表”进一步整理后的仓库

“词典快照”和“文本码表”均可为用户提供词典信息,但他们格式不一样,且信息量不一样(“快照”信息量比“码表”多,“码表”比“快照”好阅读和编辑)。

用户词典管理可以分别对”词典快照“和”文本码表“进行导入/导出操作。
为了不损失输入效果,尽量使用“快照”方式转移(导入/导出)数据

例子:

词典快照(编码、文章、c=使用频次、d=、t=)

# Rime user dictionary
#@/db_name	luna_pinyin.userdb
#@/db_type	userdb
#@/rime_version	1.5.3
#@/tick	303
#@/user_id	97631081-f126-4c62-b0b0-660be01aa7ba
a 	啊	c=1 d=1 t=36
an zhuang 	安裝	c=1 d=1 t=144
ba gu wen 	八股文	c=1 d=1 t=166
ban 	版	c=0 d=0.1 t=152

文本码表(文字、編碼、使用頻次)

# Rime user dictionary export
#@/db_name	luna_pinyin.userdb
#@/db_type	userdb
#@/rime_version	1.5.3
#@/tick	309
#@/user_id	97631081-f126-4c62-b0b0-660be01aa7ba
啊	a	1
安裝	an zhuang	1
八股文	ba gu wen	1
版	ban	0
添加词典

对于扩充候选词库的方法,推荐的做法是将码表导入到固态”词典“,而非”文本码表“
(方便管理、维护和复用)

引入“固态词典”步骤:(案例:https://github.com/rime-aca/dictionaries下面创建的文件内容均可在这找到

  1. 打开“用户文档”目录(下面创建的文件均保存在这个目录

  2. 创建“方案(自定义)配置” luna_pinyin_simp.custom.yaml (假设使用方案:“朙月拼音-简体”)

    其他方案名:{id}.custom.yml

    輸入方案id
    朙月拼音luna_pinyin
    朙月拼音·简化字luna_pinyin_simp
    朙月拼音·臺灣正體luna_pinyin_tw
    朙月拼音·語句流luna_pinyin_fluency

    其中的

    "translator/dictionary": luna_pinyin.extended
    

    指定引用了 luna_pinyin.extended.dict.yaml 码表文件(该文件下面创建)

  3. 创建码表 luna_pinyin.extended.dict.yaml

    其中

    import_tables:
     - luna_pinyin
     - luna_pinyin.hanyu
     - luna_pinyin.poetry
     - luna_pinyin.cn_en
    

    指定引用了(从案例中找到文件内容,并创建在用户目录

    • luna_pinyin.dict.yml(这个文件不用创建,已在“程序文件目录”)
    • luna_pinyin.hanyu.dict.yml(汉语字典)
    • luna_pinyin.poetry.dict.yml(诗歌)
    • luna_pinyin.cn_en.dict.yml(包含西文的词条,如:傻B)
  4. “重新部署”
    在这里插入图片描述

驗證:切換到拼音或其他適用方案,輸入「一介書生」(驗證擴充詞庫之基本詞庫)、「一丈紅」(驗證擴充詞庫之漢語大詞典詞彙)、「疑是地上霜」(驗證擴充詞庫之詩詞詞庫)、輸入「哆啦A夢(duo la a meng)」(驗證擴充詞庫之西文詞庫,此子詞庫爲朙月拼音系列方案專有,雙拼方案不推薦使用)。

# 同步用户资料

文档:https://github.com/rime/home/wiki/UserGuide#同步用戶資料

在这里插入图片描述

默认的,词典快照备份在 sync\uuid
e.g.
C:\Users\lawsssscat\AppData\Roaming\Rime\sync\97631081-f126-4c62-b0b0-660be01aa7ba

更改目录(如更改为:D:\Dropbox\RimeSync),在用户目录installation.yaml 下添加

sync_dir: 'D:\Dropbox\RimeSync'

同步内容:

  1. 各文件夹词典快照(合并到用户词典)
  2. 用户文件夹中非自动生成的YAML文件和txt文件

在这里插入图片描述

定义方案(Schema)

用户目录,<方案标识>.schema.ymal

# 以下代碼片段節選自 luna_pinyin.schema.yaml

schema:
  schema_id: luna_pinyin
  name: 朙月拼音
  version: "0.9"
  author:
    - 佛振 <chen.sst@gmail.com>
  description: |
    Rime 預設的拼音輸入方案。

# 輸入法引擎(engine)

官方文档:https://github.com/rime/home/wiki/RimeWithSchemata#輸入法引擎與功能組件

引擎工作流程:
加载输入方案 => 预备功能组件 => 处理按键消息、处理按键消息、处理按键消息…

event
ok
加载输入方案
预备功能组件
监听按键消息
处理按键消息
# luna_pinyin.schema.yaml
# 选项解释: https://github.com/LEOYoon-Tsaw/Rime_collections/blob/master/Rime_description.md
# ...

engine:                    # 輸入引擎設定,即掛接組件的「處方」
  processors:              # 一、這批組件處理各類按鍵消息
    - ascii_composer       # ※ 處理西文模式及中西文切換
    - recognizer           # ※ 與 matcher 搭配,處理符合特定規則的輸入碼,如網址、反查等
    - key_binder           # ※ 在特定條件下將按鍵綁定到其他按鍵,如重定義逗號、句號爲候選翻頁鍵
    - speller              # ※ 拼寫處理器,接受字符按鍵,編輯輸入碼
    - punctuator           # ※ 句讀處理器,將單個字符按鍵直接映射爲文字符號
    - selector             # ※ 選字處理器,處理數字選字鍵、上、下候選定位、換頁鍵
    - navigator            # ※ 處理輸入欄內的光標移動鍵
    - express_editor       # ※ 編輯器,處理空格、回車上屏、回退鍵等
  segmentors:              # 二、這批組件識別不同內容類型,將輸入碼分段
    - ascii_segmentor      # ※ 標識西文段落
    - matcher              # ※ 標識符合特定規則的段落,如網址、反查等
    - abc_segmentor        # ※ 標識常規的文字段落
    - punct_segmentor      # ※ 標識句讀段落
    - fallback_segmentor   # ※ 標識其他未標識段落
  translators:             # 三、這批組件翻譯特定類型的編碼段爲一組候選文字
    - echo_translator      # ※ 沒有其他候選字時,回顯輸入碼
    - punct_translator     # ※ 轉換標點符號
    - script_translator    # ※ 腳本翻譯器,用於拼音等基於音節表的輸入方案
    - reverse_lookup_translator  # ※ 反查翻譯器,用另一種編碼方案查碼
  filters:                 # 四、這批組件過濾翻譯的結果
    - simplifier           # ※ 繁簡轉換
    - uniquifier           # ※ 過濾重複的候選字,有可能來自繁簡轉換
Processors

https://github.com/rime/home/wiki/RimeWithSchemata#理解-processors

按鍵消息依次送往列表中的 processor,由他給出對按鍵的處理意見:

  1. 或曰「收」、即由 Rime 響應該按鍵;
  2. 或曰「拒」、回禀操作系統 Rime 不做響應、請對按鍵做默認處理;
  3. 或曰這個按鍵我不認得、請下一個 processor 繼續看。

優先級依照 processors 列表順序排定,接收按鍵者會針對按鍵消息做處理。

不认识
不认识
按键消息
processor_1
processor_2
处理_1
处理_2
...
rime不做处理,交还系统处理
Segmentors

分段器

將用戶連續輸入的文字、數字、符號等不同內容按照需要,識別不同格式的輸入碼,將輸入碼分成若干段,打上“标签”分而治之。

例子:‘2012nianyue\’
abc
nian
yue
nianyue
number
2012
punct
\
matcher
...
Translators

配置:https://github.com/LEOYoon-Tsaw/Rime_collections/blob/master/Rime_description.md#三translator

完成由編碼到文字的翻譯

  1. 翻译对象是划分好的代码段
  2. 某个translator往往只对特定的“标签
  3. 翻译可能有多条结果,每条结果作为“候选项”展示给用户
  4. 代码可以由多个translator分别翻译、翻译结果按一定规则合并成“候选项”
  5. 候选词未必是整个代码段。用拼音敲一个词组时,词组后面继续列出候选词
inputtagtranslations
2012number[ “2012” ], [ “二〇一二” ]
nianyueabc[“年月”, “念曰”, “nianyue”,…], [“nianyue”]
nianabc[ “年”, “念”, “唸”,… ], [ “nian” ]
yueabc[ “月”, “越”, “约”,… ], [ “yue” ]
\punct[ “、”, “” ]
Filters

过滤器

每從結果集選出一條字詞、會經過一組 filters 過濾。多個 filter 串行工作,最終產出的結果進入候選序列。

filter 可以:

  1. 改裝正在處理的候選項,修改某些屬性值:簡化字、火星文、菊花文…
  2. 消除當前候選項,比如檢測到重複(由不同 translator 產生)的候選條目
  3. 插入新的候選項,比如根據已有條目插入關聯的結果
  4. 修改已有的候選序列

# 修改方案配置

官方文档:https://github.com/LEOYoon-Tsaw/Rime_collections/blob/master/Rime_description.md

用户目录上添加 luna_pinyin_simp.custom.yaml 文件(以”朙月拼音-简体“为例)

设置候选数

文档: https://github.com/rime/home/wiki/CustomizationGuide#一例定製每頁候選數

# luna_pinyin_simp.custom.yaml
patch:
  "menu/page_size": 9

若在 default.custom.yaml 中修改,则全局生效。(如果方案内未设置候选数量)

定制标点符号

官方文档:https://github.com/rime/home/wiki/CustomizationGuide#一例定製標點符號

方案文档

# luna_pinyin.schema.yaml
punctuator:
  import_preset: default
  full_shape:
    "/" : "、"
  half_shape:
    "/" : "、"
  • import_preset:default 为继承 default.yaml 文件中的 punctuator
  • full/half 为全角/半角

自定义文档

# luna_pinyin.custom.yaml
patch:
  punctuator/full_shape:
    "/" : "、"
  punctuator/half_shape:
    "/" : "、"
定制繁/简转换

官方文档:https://github.com/rime/home/wiki/CustomizationGuide#一例定製簡化字輸出

# luna_pinyin.schema.yaml
# ...

switches:
  - name: ascii_mode
    reset: 0
    states: [ 中文, 西文 ]
  - name: full_shape
    states: [ 半角, 全角 ]
  - name: simplification    # 轉換開關
    states: [ 漢字, 汉字 ]

engine:
  filters:
    - simplifier  # 必要組件一
    - uniquifier  # 必要組件二
  • Rime 中的過濾器組件 simplifier,完成對候選詞的繁簡轉換。
  • uniquifier 的作用是在 simplifier 執行轉換之後,將文字相同的候選項合併。
默認英文輸出

https://github.com/rime/home/wiki/CustomizationGuide#一例默認英文輸出

# luna_pinyin.custom.yaml

patch:
  "switches/@0/reset": 1  #表示將 switcher 列表中的第一個元素(即 ascii_mode 開關)的初始值重設爲狀態1(即「英文」)。
定制方案选单/快捷键

https://github.com/rime/home/wiki/CustomizationGuide#一例定製方案選單

# default.custom.yaml

patch:
  schema_list:  # 對於列表類型,現在無有辦法指定如何添加、消除或單一修改某項,於是要在定製檔中將整個列表替換!
    - schema: luna_pinyin
    - schema: cangjie5
    - schema: luna_pinyin_fluency
    - schema: luna_pinyin_simp
    - schema: my_coolest_ever_schema  # 這樣就啓用了未曾有過的高級輸入方案!其實這麼好的方案應該排在最前面哈。

https://github.com/rime/home/wiki/CustomizationGuide#一例定製喚出方案選單的快捷鍵

# default.custom.yaml

patch:
  "switcher/hotkeys":  # 這個列表裏每項定義一個快捷鍵,使哪個都中
    - "Control+s"      # 添加 Ctrl+s
    - "Control+grave"  # 你看寫法並不是 Ctrl+` 而是與 IBus 一致的表示法
    - F4
定制字体

https://github.com/rime/home/wiki/CustomizationGuide#一例定製小狼毫字體字號

# weasel.custom.yaml

patch:
  "style/font_face": "明兰"  # 字體名稱,從記事本等處的系統字體對話框裏能看到
  "style/font_point": 14     # 字號,只認數字的,不認「五號」、「小五」這樣的

相关问题:

  1. 显示彩色 emoji
    🔗https://tieba.baidu.com/p/3618519840
    🔗https://github.com/rime/rime-emoji/issues/5
    下载字体(选择支持彩色emoji的字体,如:“Segoe UI Emoji”)、安装、rime中设置字体
    在这里插入图片描述
    2022/08/27 win 无解,因为需要DirectWrite
定制配色

文档:https://github.com/rime/home/wiki/CustomizationGuide#一例定製小狼毫配色方案
工具:https://bennyyip.github.io/Rime-See-Me/

在这里插入图片描述

# weasel.custom.yaml

patch:
  "style/color_scheme": starcraft    # 這項用於選中下面定義的新方案
  "preset_color_schemes/starcraft":  # 在配色方案列表裏加入標識爲 starcraft 的新方案
    name: 星際我爭霸/StarCraft
    author: Contralisk <contralisk@gmail.com>, original artwork by Blizzard Entertainment
    text_color: 0xccaa88             # 編碼行文字顏色,24位色值,用十六進制書寫方便些,順序是藍綠紅0xBBGGRR
    candidate_text_color: 0x30bb55   # 候選項文字顏色,當與文字顏色不同時指定
    back_color: 0x000000             # 底色
    border_color: 0x1010a0           # 邊框顏色,與底色相同則爲無邊框的效果
    hilited_text_color: 0xfecb96     # 高亮文字,即與當前高亮候選對應的那部份輸入碼
    hilited_back_color: 0x000000     # 設定高亮文字的底色,可起到凸顯高亮部份的作用
    hilited_candidate_text_color: 0x60ffa8  # 高亮候選項的文字顏色,要醒目!
    hilited_candidate_back_color: 0x000000  # 高亮候選項的底色,若與背景色不同就會顯出光棒
模糊音

https://github.com/rime/home/wiki/CustomizationGuide#模糊音

# luna_pinyin.custom.yaml
#
# 【朙月拼音】模糊音定製模板
#   佛振配製 :-)
#
# 位置:
# ~/.config/ibus/rime  (Linux)
# ~/Library/Rime  (Mac OS)
# %APPDATA%\Rime  (Windows)
#
# 於重新部署後生效
#

patch:
  'speller/algebra':
    - erase/^xx$/                      # 第一行保留

    # 模糊音定義
    # 需要哪組就刪去行首的 # 號,單雙向任選
    #- derive/^([zcs])h/$1/             # zh, ch, sh => z, c, s
    #- derive/^([zcs])([^h])/$1h$2/     # z, c, s => zh, ch, sh

    #- derive/^n/l/                     # n => l
    #- derive/^l/n/                     # l => n

    # 這兩組一般是單向的
    #- derive/^r/l/                     # r => l

    #- derive/^ren/yin/                 # ren => yin, reng => ying
    #- derive/^r/y/                     # r => y

    # 下面 hu <=> f 這組寫法複雜一些,分情況討論
    #- derive/^hu$/fu/                  # hu => fu
    #- derive/^hong$/feng/              # hong => feng
    #- derive/^hu([in])$/fe$1/          # hui => fei, hun => fen
    #- derive/^hu([ao])/f$1/            # hua => fa, ...

    #- derive/^fu$/hu/                  # fu => hu
    #- derive/^feng$/hong/              # feng => hong
    #- derive/^fe([in])$/hu$1/          # fei => hui, fen => hun
    #- derive/^f([ao])/hu$1/            # fa => hua, ...

    # 韻母部份
    #- derive/^([bpmf])eng$/$1ong/      # meng = mong, ...
    #- derive/([ei])n$/$1ng/            # en => eng, in => ing
    #- derive/([ei])ng$/$1n/            # eng => en, ing => in

    # 樣例足夠了,其他請自己總結……

    # 反模糊音?
    # 誰說方言沒有普通話精確、有模糊音,就能有反模糊音。
    # 示例爲分尖團的中原官話:
    #- derive/^ji$/zii/   # 在設計者安排下鳩佔鵲巢,尖音i只好雙寫了
    #- derive/^qi$/cii/
    #- derive/^xi$/sii/
    #- derive/^ji/zi/
    #- derive/^qi/ci/
    #- derive/^xi/si/
    #- derive/^ju/zv/
    #- derive/^qu/cv/
    #- derive/^xu/sv/
    # 韻母部份,只能從大面上覆蓋
    #- derive/^([bpm])o$/$1eh/          # bo => beh, ...
    #- derive/(^|[dtnlgkhzcs]h?)e$/$1eh/  # ge => geh, se => sheh, ...
    #- derive/^([gkh])uo$/$1ue/         # guo => gue, ...
    #- derive/^([gkh])e$/$1uo/          # he => huo, ...
    #- derive/([uv])e$/$1o/             # jue => juo, lve => lvo, ...
    #- derive/^fei$/fi/                 # fei => fi
    #- derive/^wei$/vi/                 # wei => vi
    #- derive/^([nl])ei$/$1ui/          # nei => nui, lei => lui
    #- derive/^([nlzcs])un$/$1vn/       # lun => lvn, zun => zvn, ... 
    #- derive/^([nlzcs])ong$/$1iong/    # long => liong, song => siong, ...
    # 這個辦法雖從拼寫上做出了區分,然而受詞典制約,候選字仍是混的。
    # 只有真正的方音輸入方案纔能做到!但「反模糊音」這個玩法快速而有效!

    # 模糊音定義先於簡拼定義,方可令簡拼支持以上模糊音
    - abbrev/^([a-z]).+$/$1/           # 簡拼(首字母)
    - abbrev/^([zcs]h).+$/$1/          # 簡拼(zh, ch, sh)

    # 以下是一組容錯拼寫,《漢語拼音》方案以前者爲正
    - derive/^([nl])ve$/$1ue/          # nve = nue, lve = lue
    - derive/^([jqxy])u/$1v/           # ju = jv,
    - derive/un$/uen/                  # gun = guen,
    - derive/ui$/uei/                  # gui = guei,
    - derive/iu$/iou/                  # jiu = jiou,

    # 自動糾正一些常見的按鍵錯誤
    - derive/([aeiou])ng$/$1gn/        # dagn => dang 
    - derive/([dtngkhrzcs])o(u|ng)$/$1o/  # zho => zhong|zhou
    - derive/ong$/on/                  # zhonguo => zhong guo
    - derive/ao$/oa/                   # hoa => hao
    - derive/([iu])a(o|ng?)$/a$1$2/    # tain => tian

  # 分尖團後 v => ü 的改寫條件也要相應地擴充:
  #'translator/preedit_format':
  #  - "xform/([nljqxyzcs])v/$1ü/"

# emoji

https://github.com/rime/rime-emoji

# 反查

文档 - 贴吧 - https://tieba.baidu.com/p/5764130922

todo

显示拼音

reverse_lookup

# DIY集合

https://github.com/rime/home/wiki/CustomizationGuide#diy-處方集

# 整合 lua 脚本

  • lua_processor - 🔗
    使用lua自定義按鍵,後接 @+lua函數名
    lua函數名 即用戶文件夾內 rime.lua 中函數名,參數爲 (key, env)
  • lua_segmentor - 🔗
    使用lua自定義切分,後接@+lua函數名
  • lua_translator - 🔗
    使用lua自定義輸入,例如動態輸入當前日期、時間,後接@+lua函數名
    lua函數名 即用戶文件夾內 rime.lua 中函數名,參數爲 (input, seg, env)

    可以 env.engine.context:get_option("option_name") 方式綁定到 “switch開關”/“key_binder快捷鍵”

  • lua_filter - 🔗
    使用lua自定義過濾,例如過濾字符集、調整排序,後接 @+lua函數名
    lua函數名 即用戶文件夾內 rime.lua 中函數名,參數爲 (input, env)

    可以 env.engine.context:get_option("option_name") 方式綁定到 “switch開關”/“key_binder快捷鍵”

例子

# schame
  translators:
    - lua_translator@get_date
  filters:
    - lua_filter@single_char_first
# rime.lua
function get_date(input, seg, env)
  --- 以 show_date 爲開關名或 key_binder 中 toggle 的對象
  on = env.engine.context:get_option("show_date")
  if (on and input == "date") then
    --- Candidate(type, start, end, text, comment)
    yield(Candidate("date", seg.start, seg._end, os.date("%Y年%m月%d日"), " 日期"))
  end
end
---
function single_char_first(input, env)
  --- 以 single_char 爲開關名或 key_binder 中 toggle 的對象
  on = env.engine.context:get_option("single_char")
  local cache = {}
  for cand in input:iter() do
    if (not on or utf8.len(cand.text) == 1) then
      yield(cand)
    else
      table.insert(cache, cand)
    end
  end
  for i, cand in ipairs(cache) do
    yield(cand)
  end
end
例子:时间

RIME中州韵输入法lua配置获取当前时间(一)
RIME中州韵输入法lua配置获取当前时间(二)

# Rime plugin module

https://github.com/rime/librime/tree/master/sample

# 滤镜(opencc)

opencc 文档:https://byvoid.github.io/OpenCC/1.0.6/annotated.html

开发

Related Links

调试

官方文档:https://github.com/rime/home/wiki/RimeWithSchemata#關於調試

日志位置:

  • 【中州韻】 /tmp/rime.ibus.*
  • 【小狼毫】 %TEMP%\rime.weasel.*
  • 【鼠鬚管】 $TMPDIR/rime.squirrel.*
  • 各發行版的早期版本 用戶資料夾/rime.log

问答

扩展词库大小有限制吗?

https://github.com/rime/weasel/issues/620

打汉字输出拼音(含声调符号)

https://github.com/rime/weasel/issues/601

地球拼音

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

骆言

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值