Nimf 2025.12.10 发布

大家好,Nimf 2025.12.10 版本现已发布。

变更日志

核心与 API (Core & API):

  • 重构 nimf_ic_set_callbacks,使用 CimCallbacks 结构体代替可变参数,以提高类型安全性和代码清晰度。
  • NIM_BEEP 重命名为 NIM_NOTIFY,以便处理诸如 CIM_NOTIFICATION_COMPOSE_CANCELLED 之类的通用通知。
  • 守护进程 (Daemon):启动时将 stdin、stdout 和 stderr 重定向到 /dev/null。这防止了在标准文件描述符可能已关闭的环境(如 Weston 9.0)中发生崩溃。

模块与语言引擎 (Modules & Linguas):

  • 语言引擎(全部):重构候选词表 (candidate table) 的内存分配。从交错数组(指针数组)更改为单个连续内存块,以简化内存管理并防止泄漏。
  • Qt5:通过在上下文中持久化保存 QByteArray 数据,修复了 cb_get_surround 中的悬空指针问题。同时添加了一个简单的编辑器用于测试。
  • Gtk4:使用 graphene 库实现了 set_cursor_pos,以正确地将客户端组件坐标转换为屏幕坐标。

已知问题

  • 存在一个 Bug:当从 X 窗口切换到虚拟控制台时,输入会卡顿或 nimf-forward 发生冻结。
  • 在控制台中运行 nimf-forwardnimf-cons 时,存在输入卡顿的 Bug。

上述 Bug 似乎需要很长时间才能修复。

您可以从 Nimf 页面 下载最新版本。

谢谢。