Environment
- Rio:
0.5.24
- OS: NixOS 26.05
- Compositor: Cosmic 1.5 (native Wayland, not XWayland)
- IME: fcitx5 5.1.x + libpinyin (also tested ibus-libpinyin)
- Session:
XDG_SESSION_TYPE=wayland
- Env vars:
GTK_IM_MODULE=fcitx5
QT_IM_MODULE=fcitx5
SDL_IM_MODULE=fcitx5
GLFW_IM_MODULE=ibus
Expected behavior
Preedit string (e.g. nihao — the composing letters before commit) should be rendered inline in the terminal grid at the cursor position, same as the final character slot. Candidate popup should appear separately (already works).
This is how Kitty / Ghostty / WezTerm behave on the same Cosmic session + fcitx5.
Actual behavior
- ✅ Candidate popup appears and follows cursor position
- ❌ No preedit text is drawn in the grid cells at cursor during composition
- ✅ On commit (Space / number selection), final Chinese character is inserted correctly
The cursor visually does not show what is being typed until commit. For CJK inline editing (shell, vim, comments) this makes input effectively blind.
Environment
0.5.24XDG_SESSION_TYPE=waylandExpected behavior
Preedit string (e.g.
nihao— the composing letters before commit) should be rendered inline in the terminal grid at the cursor position, same as the final character slot. Candidate popup should appear separately (already works).This is how Kitty / Ghostty / WezTerm behave on the same Cosmic session + fcitx5.
Actual behavior
The cursor visually does not show what is being typed until commit. For CJK inline editing (shell, vim, comments) this makes input effectively blind.