// readme

RimeVision

Rime 输入法可视化配置工具,无需手动编辑 YAML,通过直观的图形界面管理所有配置。

项目组成

本仓库包含两个独立的配置工具:

项目目录平台技术栈状态
RimeVisionRimeVision/macOSSwift + SwiftUI稳定版
WeaselVisionweasel_vision/macOS + WindowsRust + Tauri 2.0 + Vue 3MVP(未真机测试)

关于 WeaselVision: 跨平台版本已完成开发并通过多轮代码审查,逻辑上支持 macOS(鼠须管)和 Windows(小狼毫)。但由于作者身边没有 Windows 设备,尚未在 Windows 上进行真机测试。macOS 端功能与 RimeVision 一致。


RimeVision(macOS 版)

功能特性

  • 主题编辑器 — 可视化编辑配色方案,实时预览候选窗口效果
  • 方案管理 — 查看、配置输入法方案及其依赖关系
  • 语言模型 — 扫描、导入、挂载/卸载 .gram 语言模型文件
  • 快捷键编辑 — 直观配置全局按键绑定
  • 通用设置 — 候选词数、标点符号等全局选项
  • 配置安全 — 结构化读写 YAML,自动备份,防止配置损坏
  • 一键部署 — 将配置部署到 Rime 输入法引擎

系统要求

安装

Releases 下载最新的 DMG 文件,打开后将 RimeVision.app 拖入”应用程序”文件夹。

首次启动时,macOS 可能提示”无法验证开发者”,请前往系统设置 → 隐私与安全性点击”仍要打开”。

从源码构建

git clone https://github.com/franvz9/Rime_vision.git
cd Rime_vision/RimeVision
swift run RimeVision

运行测试:

swift run RimeVisionTestRunner

##…

The Undervalued Score +

How much a project earns versus how much attention it actually gets. Above 50 means the work is outrunning its audience. Recomputed nightly from commit velocity, contributor effort, issue resolution, fork utility, release cadence, and project maturity — divided by a logarithmic reach factor.

score  = signal / reach

signal = 0.25·commit_velocity   // commits in last 90 days (cap 30)
       + 0.20·contributor_work  // unique authors × velocity (cap 100)
       + 0.20·issue_resolution  // closed ÷ total issues
       + 0.20·fork_ratio        // forks ÷ stars (proxy for real usage)
       + 0.10·release_cadence   // releases in 90 days (cap 3)
       + age_bonus              // +0 to +0.30 after 6 months
       + homepage_bonus         // +0.05 if homepage is set

reach  = log₁₀(stars + watchers + 10)
The Health Score +

Is the project alive and maintained right now? A 0–100 pulse recomputed nightly from commit recency, rhythm, how fast issues close, and how quickly PRs get merged.

health = 0.35·recency       // days since last commit (90d decay)
       + 0.25·cadence       // commit rhythm consistency
       + 0.20·issue_health  // closed ÷ total issues
       + 0.20·pr_health     // merged ÷ total PRs
Health bands +

The colour and label on every card come straight from the health score.

Healthy   80 – 100   active, responsive, regular releases
Stable    60 – 79    maintained, steady, no alarms
Quiet     40 – 59    slowing down — watch this one
At Risk    0 – 39    going dark · candidate for rescue
// Tags — what each label means +

Tags are independent behavioral signals computed nightly. A project can hold multiple at once. They drive the home page sections.

solo_builder      one person holds > 80% of commits (last 180d)
needs_contributors has open "help wanted" or "good first issue" labels
hidden_gem        < 100 stars · active in last 3 months · documented
legacy_hero       repo > 5 years old · committed this year
fork_magnet       forks/stars > 0.5 · used as template or dependency
release_machine   5+ releases in the last 90 days
under_pressure    > 10 open issues · ≤ 2 contributors · health ≥ 60
community_watch   watchers > stars · devs tracking before the public
community_hub     GitHub Discussions enabled · > 20 discussions
funded            maintainer has active funding channel
Why rank against stars at all? +

Stars are an outcome, not effort. A project with 8 stars and daily commits is doing more interesting work than one coasting on 8k. We measure the building, then divide by the attention already received — so the genuinely undervalued rise to the top.

// stars   = lagging indicator
// commits = leading indicator
// we rank by the leading one