Integrate native Rime and stabilize input, output, and rendering
- Add optional modifier-only Super binding whose tap is cancelled by other input, focus changes, grabs, locks, and session teardown. - Ship the native ferese-rime user service, Rime defaults, installer inventory, package dependencies, session environment, and docs. - Vendor Smithay 8a27023 with the SHM texture-cache format fix and add GPU regressions for format changes and resize snapshots. - Release reused CRTC owners before staging output modes, then restore changed outputs before former owners when a transaction fails. - Wait for resize-capture GPU completion, expand filtered surface damage, and preserve IME popup origin under fractional scaling. - Mark weekends like holidays in both calendar layouts.
This commit is contained in:
1 parent
a2be421974
commit
993bc0f88f
391 files changed
+130908
-76
No files matched your search
@@ -37,6 +37,25 @@ librime 仍是 C++ 引擎,通过一个由安装头文件检查 ABI 的小型 C
|
||||
|
||||
## 构建与启动
|
||||
|
||||
### 本机日常会话安装
|
||||
|
||||
安装清单现包含 `ferese-rime`,Arch 包声明 `librime` 和 `rime-luna-pinyin`
|
||||
依赖。公共方案与词库仍由系统包维护于 `/usr/share/rime-data`,不复制个人词库。
|
||||
直接 DRM 会话默认启用原生输入法,并仅在 Ferese 会话内覆盖继承的 IBus Qt 环境。
|
||||
GTK 不强制指定输入模块,由实际的原生 Wayland/X11 后端自行选择;
|
||||
会话激活环境清空旧的 `GTK_IM_MODULE`,避免 XWayland 应用加载 GTK3 Wayland 模块时崩溃。
|
||||
这些变量也导入该会话的 D-Bus/systemd 激活环境。嵌套预览保留原有的显式输入法启动方式。
|
||||
|
||||
会话在 `$XDG_DATA_HOME/ferese/rime`(默认 `~/.local/share/ferese/rime`)建立独立用户目录,
|
||||
仅在 `default.custom.yaml` 不存在时安装默认简体拼音和每页九个候选的配置。
|
||||
不读取、迁移或覆盖 IBus/Fcitx 的个人词库,也保留该目录内已有的用户定制。
|
||||
Rime 由会话固定版本的 systemd 用户临时服务运行,异常后重启并启用十秒输入循环 watchdog;
|
||||
服务名称由合成器控制套接字稳定生成,Shell 硬崩溃恢复时仅替换该会话的旧输入法实例。
|
||||
会话结束时停止,输入法失败保留桌面。可用 `journalctl --user -u 'ferese-rime-session@*'`
|
||||
查看日志。`FERESE_ENABLE_INPUT_METHOD=0` 可在登录前显式停用此集成。
|
||||
|
||||
以下预览与硬件验证记录早于此安装集成,不能代替新安装会话的验收。
|
||||
|
||||
需要仓库的构建依赖,以及 `librime`、`xkbcommon` 和 Wayland 开发文件。
|
||||
验证环境使用系统 librime 1.17.0、GTK4 4.24.1、RTX 4090、NVIDIA 615.78.08。
|
||||
Rust 工具链由仓库固定为 1.95.0。
|
||||
|
||||
Reference in new issue
Block a user