Nimf 2025.12.10 Released

Hello. Nimf 2025.12.10 is released.

Changes

Core & API:

  • Refactor nimf_ic_set_callbacks to use CimCallbacks structure instead of variable arguments for better type safety and clarity.
  • Rename NIM_BEEP to NIM_NOTIFY to handle generic notifications such as CIM_NOTIFICATION_COMPOSE_CANCELLED.
  • Daemon: Redirect stdin, stdout, and stderr to /dev/null on startup. This prevents crashes in environments (like Weston 9.0) where standard descriptors might be closed.

Modules & Linguas:

  • Linguas (All): Refactor candidate table memory allocation. Change from jagged arrays (array of pointers) to a single contiguous memory block to simplify memory management and prevent leaks.
  • Qt5: Fix a dangling pointer issue in cb_get_surround by persisting the QByteArray data in the context. Add a simple editor for testing.
  • Gtk4: Implement set_cursor_pos using graphene to correctly translate client widget coordinates to screen coordinates.

Known bugs

  • There is a bug where input freezes or nimf-forward freezes when switching from an X window to a virtual console.
  • When running nimf-forward or nimf-cons in the console, there is a bug where input freezes.

The above bug seems to take a very long time to fix.

You can download it from the Nimf page.

Thank you.