https://github.com/nextzhou/trime-cli
Trime(同文输入法)主题校验、渲染与报告工具,支持 trime.yaml 与 Rime 配置预处理
https://github.com/nextzhou/trime-cli
cli ime jvm kotlin rime trime
Last synced: 2 months ago
JSON representation
Trime(同文输入法)主题校验、渲染与报告工具,支持 trime.yaml 与 Rime 配置预处理
- Host: GitHub
- URL: https://github.com/nextzhou/trime-cli
- Owner: nextzhou
- License: gpl-3.0
- Created: 2026-04-02T05:13:10.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2026-04-02T06:38:06.000Z (2 months ago)
- Last Synced: 2026-04-08T04:02:35.128Z (2 months ago)
- Topics: cli, ime, jvm, kotlin, rime, trime
- Language: Kotlin
- Size: 3.85 MB
- Stars: 5
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# trime-cli
`trime-cli` 是一个独立发布的命令行工具,用于在电脑上校验、渲染并生成 `*.trime.yaml` 的报告。
它的目标不是做一个“差不多能用”的第三方检查器,而是尽量贴近同文输入法(Trime)的实际行为:
- 复用同源的主题模型与解析逻辑
- 支持通过 `librime` 展开 `__include` / `__patch`
- 内置默认的 RIME prelude 与共享 YAML 资源
## 当前状态
- 实现语言:Kotlin / JVM
- 运行方式:fat JAR
- 官方验证平台:macOS、Ubuntu 24.04
- Windows:推荐通过 WSL2(建议 Ubuntu 24.04)使用,不承诺原生 Windows 支持
- 其他 Linux 发行版:最佳努力支持,可通过 `LIBRIME_PATH` 指定 `librime.so`
- 许可证:GPL-3.0-or-later
## 下载
- 最新 release:
- 直接下载 fat JAR:
## 快速开始
直接运行:
```bash
java -jar trime-cli-all.jar --help
```
安装 `librime`:
```bash
# macOS
brew install librime
# Ubuntu 24.04
sudo apt-get update
sudo apt-get install -y librime-dev fonts-noto-cjk
```
如果你在 Windows 上使用,建议直接在 WSL2 中安装 Ubuntu 24.04,再按 Linux 方式运行 `trime-cli`。这样和当前 CI、文档以及官方验证环境保持一致,问题也更容易复现和排查。
如果暂时不方便安装 `librime`,也可以使用 `--no-rime` 跳过 `__include` / `__patch` 预处理。
自行构建:
```bash
./gradlew shadowJar
```
产物:
```text
build/libs/trime-cli-all.jar
```
示例:
```bash
java -jar build/libs/trime-cli-all.jar validate demo.trime.yaml
java -jar build/libs/trime-cli-all.jar render demo.trime.yaml -o /tmp/keyboards
java -jar build/libs/trime-cli-all.jar report demo.trime.yaml -o report.html
```
## 报告效果
下面这张图是 `report` 命令生成的 `report.html` 首屏示意,使用的是仓库内置的默认共享主题 `vendor/rime/shared/trime.yaml`。

完整使用说明见 [docs/usage.md](./docs/usage.md)。
## 与 Trime 的关系
这个仓库是 `trime-cli` 的独立主仓库,但仍然保留了和 `osfans/trime` 的开发期对齐机制。
- 最终发布物不依赖 `upstream/trime`
- `upstream/trime` 仅作为开发期事实源,用于:
- 刷新默认资源
- 跑 vendored 资源的一致性检查
- CLI 源码本身以本仓为主,不再要求逐文件跟随上游同步
当前对齐信息见 [UPSTREAM.md](./UPSTREAM.md)。
## 维护者工作流
初始化 submodule:
```bash
git submodule update --init --recursive
```
刷新 vendored 资源:
```bash
./gradlew refreshUpstreamResources
```
检查与上游的同步情况:
```bash
./gradlew checkUpstreamSync
```