传奇手游风暴活动专区

  • 首页
  • 跨服动态
  • 行会战报
  • 装备图鉴
  • 2026-02-27 16:48:59

    我的rime:打造多端同步的本地输入法

    身边的人总是提到,为什么我上一秒提到的东西,马上就出现在了相关搜索中呢?一个很大的可能性就是你的输入法暴露了。有研究指出1,目前市面上许多输入法都存在安全隐私漏洞。输入法作为我们平时用到最多的系统级应用,我不想自己的隐私被其泄露。所以,我寻找到了一款纯本地的全平台输入法——rime输入法2。它的优势就是简洁、无广告、不联网,不过对应的缺点就是没有云输入,一些比较新的词不好打出来,还有就是配置比较麻烦。

    然而,我们可以通过使用别人预先设计好的配置来缓解这个问题。我选择了雾凇拼音3这个开源的方案来实现,它的优势就是自己维护了一套常用的词库,同时配置好了一些默认的输入的方案,我就在它的方案上进行优化,打造一套属于自己的输入体验。

    由于我现在输入的方式是小鹤双拼,所以我的方案也全部是基于双拼打造的,全拼的话可以参考雾凇拼音的文档来配置。(在这强烈安利双拼的输入方式,学习成本不高但收益很高,能很大程度的改善你输入的体验👍)

    基本配置rime输入法通过.yaml文件来管理配置,并支持以patch的形式对其进行修改。所以,我们只需要编写*.custom.yaml文件就可以在别人的框架上构建自己的输入法了。由于配置文件在全端都是通用的,这里就先介绍共同的配置,每个平台独立的配置在后面再介绍。

    rime的配置入口是default.yaml,所以我们先从它开始修改。创建default.custom.yaml,并填入下面的内容:

    1

    2

    3

    4

    5

    6

    7

    patch:

    schema_list:

    - schema: double_pinyin_flypy

    - schema: rime_ice

    menu/page_size: 7

    ascii_composer/switch_key/Shift_L: commit_code

    ascii_composer/switch_key/Shift_R: clear

    我们首先选择了需要用到的两个方案double_pinyin_flypy和rime_ice,分别是小鹤双拼和全拼,这里加入全拼是避免别人使用我电脑时不会使用所预留的。menu/page_size指定了候选词的个数,最后两个则是指定了左右Shift键的功能。

    由于我们使用的是双拼,还需要修改“部件拆字”功能中的设置4。创建radical_pinyin.custom.yaml,填入下面的内容:

    1

    2

    3

    4

    patch:

    # 修改为小鹤双拼的拼写派生规则,因为不在同一个文件了,前面要加上文件名

    speller/algebra:

    __include: radical_pinyin.schema.yaml:/algebra_flypy

    同样,“拼写派生"功能也需要修改。创建melt_eng.custom.yaml文件,填入下面的内容:

    1

    2

    3

    4

    patch:

    # 修改为小鹤双拼的拼写派生规则,因为不在同一个文件了,前面要加上文件名

    speller/algebra:

    __include: melt_eng.schema.yaml:/algebra_flypy

    这样就配置完成了,还是很简单的。

    同步的话,我同样使用的是跨平台的软件rclone,如果要使用它,需要先配置好远端。

    通过执行rclone config并按照指示添加即可。之后,我分别介绍每个平台的具体配置和同步设置。

    详细配置Winwin下的客户端叫小狼毫,下载安装好后就可以进行配置了。配置目录为%APPDATA%\Rime,我直接将里面的文件清空,然后使用git将雾凇拼音的仓库整个克隆进来。接着将上面“基本配置”中提到的三个文件创建好。由于默认的皮肤我不是很喜欢,所以我找了一个微软拼音的皮肤来使用。

    创建weasel.custom.yaml并填入下面的内容:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    patch:

    preset_color_schemes:

    microsoft_sim:

    name: 仿微软输入法

    author: plutotree

    back_color: 0xF4F4F4

    border_color: 0xDCDCDC

    text_color: 0x000000

    hilited_text_color: 0xF4F4F4

    hilited_back_color: 0xFFD8A6

    hilited_candidate_text_color: 0x000000

    hilited_candidate_back_color: 0xFFD8A6

    candidate_text_color: 0x000000

    comment_text_color: 0x888888

    style:

    color_scheme: microsoft_sim

    label_format: "%s"

    font_face: "微软雅黑"

    font_point: 12

    horizontal: true

    inline_preedit: true

    layout:

    min_width: 140

    min_height: 0

    border_width: 1

    border_height: 1

    margin_x: 9

    margin_y: 9

    spacing: 9

    candidate_spacing: 20

    hilite_spacing: 7

    hilite_padding: 8

    round_corner: 0

    接下来需要配置installation.yaml,我们主要修改里面的installation_id,这是同步文件夹中的名称,默认是一串UUID,但是这不方便我们同步,建议将其修改成便于操作的名称。

    这样我们就配置好了rime输入法,接下来只需要将配置目录下的sync文件夹同步就好了。

    同步的工具rclone在之前已经设置好了,我这里编写了一个cmd脚本来自动执行备份任务。使用时记得修改本地和远端的地址:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    @echo off

    set rime_path="D:\Program Files (x86)\Rime\weasel-0.16.1\WeaselDeployer.exe"

    set remote_path=a1:\rime_sync

    set local_path=C:\Users\luobo\AppData\Roaming\Rime

    set sync_path=%local_path%\sync

    set device_name=lab-Win

    echo 更新输入法词库

    cd /d %local_path%

    git pull

    %rime_path% /deploy

    echo 同步输入法词库中...

    %rime_path% /sync

    rclone sync %sync_path%\%device_name% %remote_path%\%device_name% -P

    echo 下载远端词库

    rclone sync %remote_path% %sync_path% -P --exclude %device_name%/**

    Android安卓端的应用是fcitx5-android5,下载软件本体和rime插件后就可以进行配置了。安卓端的配置文件位于/sdcard/Android/data/org.fcitx.fcitx5.android/files/data/rime,我们直接将电脑端的配置文件复制进去就可以了,需要注意的是,installation.yaml里面的installation_id要改成不同的值。

    同步的话,rclone并没有官方的安卓客户端。不过,我们可以使用termux——一款运行于Android 系统的开源终端模拟器6,并在里面安装rclone来使用。

    下载并安装好后,首先进行换源:

    1

    2

    sed -i 's@^\(deb.*stable main\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/apt/termux-main stable main@' $PREFIX/etc/apt/sources.list

    apt update && apt upgrade

    之后安装rclone

    1

    apt install rclone

    ⚠由于安卓的安全性设置,普通应用是无权访问别的应用目录下的文件。所以,我们需要给予root权限(或者使用别的有权限的应用,我没有试过)

    我这里同样是通过脚本来实现自动同步:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    #!/bin/sh

    export PATH="/data/data/com.termux/files/usr/bin:$PATH"

    CONFIG_PATH="/data/data/com.termux/files/home/.config/rclone/rclone.conf"

    RIME_PATH="/sdcard/Android/data/org.fcitx.fcitx5.android/files/data/rime/sync"

    REMOTE_PATH="a1:/rime_sync"

    LOCAL_FOLDER="K50U-Android"

    echo "download..."

    rclone sync $REMOTE_PATH $RIME_PATH -P --exclude $LOCAL_FOLDER/** --config $CONFIG_PATH

    echo "upload..."

    rclone sync $RIME_PATH/$LOCAL_FOLDER $REMOTE_PATH/$LOCAL_FOLDER -P --config $CONFIG_PATH

    这里由于我们是使用root身份来执行的,所以需要额外设置PATH并手动指定配置文件的路径

    体验日常使用rime输入法已经有大半年了,测试下来与云输入法基本没有什么区别,一些比较新的词打一遍也能被词库学习到。配合上多端同步,使用还是非常方便的。此外,雾凇拼音还内置了一些便捷功能,例如:

    symbols:全拼 v 开头、双拼大写 V 开头部件拆字的反查:uU 开头,反查时前缀会消失影响打英文所以设定为两个字母,或可改成一个非字母符号。部件拆字的辅码:` 触发。Unicode:大写 U 开头,如 U62fc 得到「拼」。数字、金额大写:大写 R 开头,如 R1234 得到「一千二百三十四、壹仟贰佰叁拾肆元整」。农历指定日期:大写 N 开头,如 N20240210 得到「二〇二四年正月初一」。如果是比较在乎个人隐私的用户,我是比较推荐使用这样一款不联网的本地输入法的。

    参考文献敲敲打打:一系列云端输入法漏洞使网络攻击者得以监看个人用户的输入内容(摘要) - The Citizen Lab ↩︎

    RIME | 中州韻輸入法引擎 ↩︎

    iDvel/rime-ice: Rime 配置:雾凇拼音 | 长期维护的简体词库 ↩︎

    常见问题 · iDvel/rime-ice ↩︎

    fcitx5-android/fcitx5-android ↩︎

    Termux | The main termux site and help pages. ↩︎

    為何母親節要送康乃馨?
    【PP助手】iPhone版PP助手 8.5.6下载
    跨服动态

    友情链接:

    ©Copyright © 2022 传奇手游风暴活动专区 All Rights Reserved.