前言

上一篇文章介绍了 Windows 下的包管理器,本文继续介绍输入法。

事实上 Windows 的输入法生态比 Linux/Mac 丰富很多,不过很多国产输入法存在窃取隐私、植入广告、乱安装流氓软件等问题,现在有开源的 RIME 输入法可以选择,何必受这气呢

而且 RIME 是跨平台的,无论在 Linux 还是 Android 上都可以使用,可以实现比较统一的输入体验。

关于RIME

Rime 全名是「中州韵输入法引擎」,Rime 不是一种输入法。是从各种常见键盘输入法中提炼出来的抽象的输入算法框架,由 佛振 大佬开发。

Rime 通过各种输入方案来实现对几乎所有中文的支持,包括但不限于【拼音】、【注音】、【双拼】、【五笔】、【仓颉】,并且可以简单的进行【简繁】的切换。

Rime 由于本质只是一个框架,本身是不知道如何输入的。

如果我们想要使用 Rime,就得定义一些关于如何输入的设置来告诉 Rime,这些设置就是输入方案。

因为我不想折腾配置什么的,使用的是开箱即用的方案,所以本文只简单介绍一下 RIME 的安装和使用,如果想深入了解可以查看官网的文档和参考资料,都写得很详细。

安装

官网: https://rime.im/

可以在官网直接安装

也可以使用 winget 安装

winget install --id=Rime.Weasel

输入方案

本文推荐这两个输入方案,都是开箱即用的。

我用的是第二个「雾凇拼音」

Plum - RIME 配置管理器

RIME 配置管理器,这个工具的名字叫「東風破 plum」

注意:由于 Windows 上缺少很多 unix 的工具链,强行使用的话需要执行折腾做一些配置,所以不太推荐在 Windows 上使用这个工具,如果不想折腾的,可以直接跳过这一节,下一节有一键安装脚本。

東風破 /plum/: Rime configuration manager and input schema repository - https://github.com/rime/plum

在 Windows 上直接下载: https://github.com/rime/plum-windows-bootstrap/archive/master.zip

解压后,运行 rime-install-bootstrap.bat 文件

然后就会自动下载需要的文件,然后运行 rime-install.bat 就可以了

详情参考: https://github.com/rime/plum?tab=readme-ov-file#windows

Rime-Ice 输入法安装脚本

也就是上面说的「雾凇拼音」输入方案,这个脚本不只是可以用来安装,也可以方便修改配置。

项目地址: https://github.com/Mark24Code/rime-auto-deploy

我使用的是这个,在 Windows 上比较方便,因为很多工具链在 Windows 上是没有的,直接用 plum 可能会麻烦一些。

Windows 版本的说明文档: https://github.com/Mark24Code/rime-auto-deploy/blob/main/WINDOWS_README.md

需要安装 Ruby ,这时候包管理器的作用就体现了

scoop install ruby

然后按照文档和命令行上面的提示来。

安装完 Ruby 之后就可以执行一键部署脚本了

ruby .\installer.rb

同样是根据提示来,第一次安装按照文档说的选择 Auto Mode 自动模式即可。

修改配置

Windows 的 RIME 配置目录在 $HOME\AppData\Roaming\Rime 下,里面配置文件一大堆,要修改都不知道改哪个。

这个配置脚本提供了自定义配置的功能,只要修改 rime-auto-deploy\custom 目录下对应的文件,然后重新执行脚本,选择 Handle Mode 即可。

里面就这几个文件

 custom
├─ weasel.custom.yaml
├─ squirrel.custom.yaml
├─ rime_ice.custom.yaml
└─ default.custom.yaml

常见问题

如何删除自造词

  1. 打错字后,立刻删掉是不会录入库的。 Rime 是在有新输入时才把之前的录入
  2. 选中已造词,使用 Shift + Delete 即可删除
  3. mbp 因为移除了 Delete 键,使用 Shift + Fn + Backspaces 键删除

如何关闭模糊拼音

这个脚本部署的输入方案默认开启了模糊拼音,或许对于 h/fn/l 分不清的用户很友好,但我用的是真的难受啊!!

关闭的方式也比较简单,编辑 custom/rime_ice.custom.yaml 文件中模糊拼音定义部分,然后重新执行脚本更新配置就行了。

打开这个文件看到模糊拼音的部分,把声母下面这几行注释就好了

patch:
# 拼写设定
speller:
algebra:
### 模糊音
# 声母
- derive/^([zcs])h/$1/ # z c s → zh ch sh
- derive/^([zcs])([^h])/$1h$2/ # zh ch sh → z c s
- derive/^l/n/ # n → l
- derive/^n/l/ # l → n
- derive/^f/h/ # …………
- derive/^h/f/ # …………

重新执行 ruby installer.rb ,进入 Handle mode 模式,选择 copy custom config ,搞定。

然后按照管理点击 RIME「重新部署」按钮即可。

参考资料

小结

下一篇继续介绍美化/折腾/小工具等内容

2024年,提升Windows开发和使用体验的实践经验 - RIME输入法的更多相关文章

  1. 如何结合整洁架构和MVP模式提升前端开发体验(二) - 代码实现篇

    上一篇文章介绍了整体架构,接下来说说怎么按照上图的分层结构实现下面的增删改查的功能. 代码结构 vue userManage └── List ├── api.ts ├── EditModal │ ├ ...

  2. 如何结合整洁架构和MVP模式提升前端开发体验(三) - 项目工程化配置、规范篇

    工程化配置 还是开发体验的问题,跟开发体验有关的项目配置无非就是使用 eslint.prettier.stylelint 统一代码风格. formatting and lint eslint.pret ...

  3. 8月11日嵌入式Linux开发免费项目体验邀您参与

    嵌入式Linux开发免费项目体验开课啦~~我们特意邀请到粤嵌金牌讲师和技术专家,为大家带来精彩有趣的嵌入式公开课,涉及到嵌入式学习.研发的方方面面.课堂中我们能体验到的不仅仅是最新资讯.技术体验,还有 ...

  4. atitit.提升软件开发的生产力关健点-------大型开发工具最关健

    atitit.提升软件开发的生产力关健点-------大型开发工具最关健 1. 可以创作出更好的工具遍历自己 1 2. 大型工具包括哪些方面 2 2.1. ide 2 2.2. dsl 2 2.3.  ...

  5. 我的windows开发环境设定与日常使用指南

    目录 开发相关的软件包安装.设定 Visual Studio 默认设定 鼠标右键添加"在此处打开cmd"选项 git gvim notepad++ VSCode-Insider C ...

  6. 【老孟Flutter】6种极大提升Flutter开发效率的工具包

    老孟导读:本文介绍6种极大提升Flutter开发效率的工具包. [1] 强大的日志软件包 在开发 Flutter 的过程中打印日志是常用的调试方式之一,但 Flutter 内置的日志打印非常简单,下面 ...

  7. Windows开发常用快捷键

    毕业后一直在从事Windows开发工作,掌握些常用的Windows快捷键可以大大的提升工作效率,同时还能秀一波操作.本文记录在工作中常用的Windows快捷键,以及VS常用快捷键.掌握了这些键盘操作, ...

  8. fir.im Weekly - 17 个提升 iOS 开发效率的必备工具

    本期 fir.im Weekly 精选了一些iOS 开发工具和动画源码分享,希望每个开发者能专注效率.实用.灵感.  iOS开发工具--如何优化ipa包大小 @iOS程序犭袁 推荐了关于"如 ...

  9. atitit.提升软件开发的效率and 质量的那些强大概念and方法总结

    atitit.提升软件开发的效率and 质量的那些强大概念and方法总结 1. 主流编程中三个最糟糕的问题 1 1.1. 从理解问题后到实现的时间很长 1 1.2. 理解和维护代码  2 1.3. 学 ...

  10. Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓 O725

    Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓  O725 1. DSL主要分为三类:外部DSL.内部DSL,以及语言工作台. 1 2. DSL ...

随机推荐

  1. python3之lambda表达式

    技术背景 lambda表达式本身是一个非常基础的python函数语法,其基本功能跟使用def所定义的python函数是一样的,只是lambda表达式基本在一行以内就完整的表达了整个函数的运算逻辑.这里 ...

  2. [转帖]redis缓存命中率介绍

    缓存命中率的介绍 命中:可以直接通过缓存获取到需要的数据. 不命中:无法直接通过缓存获取到想要的数据,需要再次查询数据库或者执行其它的操作.原因可能是由于缓存中根本不存在,或者缓存已经过期. 通常来讲 ...

  3. [转帖]我们为什么放弃 MongoDB 和 MySQL,选择 TiDB

    https://zhuanlan.zhihu.com/p/164706527 写在前面的话 技术选型是由技术方向和业务场景 trade-off 决定的,脱离业务场景来说技术选型是没有任何意义的,所以本 ...

  4. [转帖]计算机体系结构-重排序缓存ROB

    https://zhuanlan.zhihu.com/p/501631371 在现代处理器中,重排序缓存(Reorder Buffer,即ROB)是一个至关重要的概念,一个标准的乱序执行处理器在其多个 ...

  5. frp 的简单使用

    在出差现场. 开着VPN 就没法用出差现场的网络, 想了想 好像 只能用 frp 来搞一下比较好 借了下同事的vps 进行相应的处理 进行简单的内容穿透工作. 1. 下载相关的文件. wget htt ...

  6. csv用Excel打开出现乱码

    CSV用Excel打开出现乱码 今天出现一个问题 使用wps打开不会出现乱码.但使用 excel 打开的时候会出现乱码. 其实在我们把文件流转成文件的时候需要在bolb 对象前加上unicode标识, ...

  7. 基于go-restful实现的PoW算力池模型

    最开始知道区块链是在17年初,当时因为项目压力不大,开始研究比特币源码.对于比特币中提到的Proof of Work,当时只是一眼带过,并没有详细查看过相关的代码.在最近的项目中,考虑到性能的要求,需 ...

  8. 获取Unity和UGUUI内置组件的属性名

    需求来源 在阅读UGUI的源码时,发现Unity对于私有字段才加了[[SerializeField]]标签,而public的没有,且在Editor扩展中,也是查找带序列化标签的私有字段进行修改,那么在 ...

  9. 手撕Vue-Router-实现router-view

    前言 在上一篇 [手撕Vue-Router-实现router-link] 中,我们实现了 router-link 组件,这一篇我们来实现 router-view 组件. 实现思路 router-vie ...

  10. C++ 基于Boost.Asio实现端口映射器

    Boost.Asio 是一个功能强大的 C++ 库,用于异步编程和网络编程,它提供了跨平台的异步 I/O 操作.在这篇文章中,我们将深入分析一个使用 Boost.Asio 实现的简单端口映射服务器,该 ...