Skip to content

When swapfile is enabled, Fcitx5 often stutters during input #1495

@hhoao

Description

@hhoao

Summary

When swapfile is enabled, Fcitx5 often stutters during input, and after the stutter, it suddenly displays all the characters that have been entered.

Steps to Reproduce

  1. Enable swapfile, but I'm using zswap + swapfile. Of course, I've also encountered this issue when using swapfile alone before.
  2. Memory usage reaches the threshold that triggers swap memory usage.
  3. Using Chinese input.
2026-01-20.10-55-42.mp4

Expected Behavior

Smooth Input

Output of fcitx5-diagnose command

系统信息:

  1. uname -a:

    Linux hhoa-ROG-Zephyrus-G16-GU605MV-GU605MV 6.17.0-8-generic #8-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 21:44:46 UTC 2025 x86_64 GNU/Linux
    
  2. lsb_release -a:

    Distributor ID:	Ubuntu
    Description:	Ubuntu 25.10
    Release:	25.10
    Codename:	questing
    
  3. lsb_release -d:

    Description:	Ubuntu 25.10
    
  4. /etc/lsb-release:

    DISTRIB_ID=Ubuntu
    DISTRIB_RELEASE=25.10
    DISTRIB_CODENAME=questing
    DISTRIB_DESCRIPTION="Ubuntu 25.10"
    
  5. /etc/os-release:

    PRETTY_NAME="Ubuntu 25.10"
    NAME="Ubuntu"
    VERSION_ID="25.10"
    VERSION="25.10 (Questing Quokka)"
    VERSION_CODENAME=questing
    ID=ubuntu
    ID_LIKE=debian
    HOME_URL="https://www.ubuntu.com/"
    SUPPORT_URL="https://help.ubuntu.com/"
    BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
    PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
    UBUNTU_CODENAME=questing
    LOGO=ubuntu-logo
    
  6. 桌面环境:

    桌面环境为 gnome3

  7. XDG 会话类型:

    XDG_SESSION_TYPE='wayland'
    
  8. Bash 版本:

    BASH_VERSION='5.2.37(1)-release'
    

环境:

  1. DISPLAY:

    DISPLAY=':0'
    
    
    WAYLAND_DISPLAY='wayland-0'
    
  2. 键盘布局:

    1. setxkbmap:

      WARNING: Running setxkbmap against an Xwayland server
      xkb_keymap {
      	xkb_keycodes  { include "evdev+aliases(qwerty)"	};
      	xkb_types     { include "complete"	};
      	xkb_compat    { include "complete"	};
      	xkb_symbols   { include "pc+cn+inet(evdev)+ctrl(nocaps)"	};
      	xkb_geometry  { include "pc(pc105)"	};
      };
      
    2. xprop:

      _XKB_RULES_NAMES(STRING) = "evdev", "pc105", "cn", "", "ctrl:nocaps"
      
  3. Locale:

    1. 全部可用 locale:

      C
      C.utf8
      POSIX
      zh_CN.utf8
      zh_SG.utf8
      
    2. 当前 locale:

      LANG=zh_CN.UTF-8
      LANGUAGE=
      LC_CTYPE="zh_CN.UTF-8"
      LC_NUMERIC=C
      LC_TIME="zh_CN.UTF-8"
      LC_COLLATE="zh_CN.UTF-8"
      LC_MONETARY="zh_CN.UTF-8"
      LC_MESSAGES="zh_CN.UTF-8"
      LC_PAPER="zh_CN.UTF-8"
      LC_NAME="zh_CN.UTF-8"
      LC_ADDRESS="zh_CN.UTF-8"
      LC_TELEPHONE="zh_CN.UTF-8"
      LC_MEASUREMENT="zh_CN.UTF-8"
      LC_IDENTIFICATION="zh_CN.UTF-8"
      LC_ALL=
      
  4. 目录:

    1. 主目录:

      /home/hhoa
      
    2. ${XDG_CONFIG_HOME}:

      环境变量 XDG_CONFIG_HOME 没有设定。

      XDG_CONFIG_HOME 的当前值是 ~/.config (/home/hhoa/.config)。

    3. Fcitx5 设置目录:

      当前 fcitx5 设置目录是 ~/.config/fcitx5 (/home/hhoa/.config/fcitx5)。

  5. 当前用户:

    脚本作为 hhoa (1000) 运行。

Fcitx 状态:

  1. 可执行文件:

    /usr/bin/fcitx5 找到了 fcitx5。

  2. 版本:

    Fcitx 版本: 5.1.14

  3. 进程:

    找到了 1 个 fcitx5 进程:

       8257 fcitx5
    
  4. fcitx5-remote:

    fcitx5-remote 工作正常。

  5. DBus 界面:

    使用 dbus-send 来检查 dbus。

    DBus 名称 org.fcitx.Fcitx5 的所有者是 :1.97

    DBus 名称 org.fcitx.Fcitx5 的 PID 所有者是 8257

    来自 dbus 的调试信息:

       Group [wayland:] has 8 InputContext(s)
      IC [ff80bdb7ac7b4a6ab5a36e7b2ca11f48] program:org.gnome.Nautilus frontend:dbus cap:c001000020 focus:0
      IC [3fb3658fb45b42f2b17f87179c5374eb] program:org.gnome.Nautilus frontend:dbus cap:c001000020 focus:0
      IC [963941ba02f74425aff481b41c370b06] program:org.gnome.Nautilus frontend:dbus cap:4001021020 focus:0
      IC [519bbf374eb64b8c8fcc66a24d63b573] program:sublime_text frontend:dbus cap:e001000020 focus:0
      IC [d21c4cef207d464089b1d70b808069af] program:org.gnome.Nautilus frontend:dbus cap:4001021020 focus:0
      IC [47dab896d10545319ac72dc2ad115d0e] program:ptyxis frontend:dbus cap:c001000020 focus:1
      IC [7734f7533e524096a2f1c8bd9bb9bfa3] program: frontend:ibus cap:40 focus:0
      IC [1ae88b2d16c64389a433cf096896a902] program: frontend:ibus cap:40 focus:0
    Group [x11::0] has 33 InputContext(s)
      IC [8bb3ff92deca45f384c58d5f63ee0a4e] program:cursor frontend:dbus cap:6000000020 focus:0
      IC [c814da50d0b148dc898485a0fdb1ba64] program:com.alibabainc.dingtalk frontend:dbus cap:6000000020 focus:0
      IC [48e78e1a60c04b6abdade0330a435acb] program:com.alibabainc.dingtalk frontend:dbus cap:16000800060 focus:0
      IC [68e1e3a65bac4891b17d84e79b781960] program: frontend:xim cap:4000000000 focus:0
      IC [89aa55407e634b3bad2af76398fa3599] program:cursor frontend:dbus cap:6000000020 focus:0
      IC [03de18dd351340579d1ad90738d7fcb5] program: frontend:xim cap:4000000000 focus:0
      IC [ae0bb06326a649aebd97de212b430ec2] program:idea frontend:xim cap:4000000000 focus:0
      IC [ddf9a87679984e57a9d05fcc95438360] program:org.mozilla.Thunderbird frontend:dbus cap:6000000020 focus:0
      IC [3f92d32fdf3b44f99db125cc60616674] program:com.alibabainc.dingtalk frontend:dbus cap:16000800060 focus:0
      IC [80b9195f06d441cf91882d63f6bc3ae4] program:idea frontend:xim cap:4000000000 focus:0
      IC [1af4d04bd2bb4f5fa5e6144959c4a48e] program:com.alibabainc.dingtalk frontend:dbus cap:6000000020 focus:0
      IC [cc148fbd7a3540908d27788112b835d3] program:com.alibabainc.dingtalk frontend:dbus cap:16000800060 focus:0
      IC [3e542c848be84b77bfec5b38e56c06a6] program:obsidian frontend:dbus cap:6000000020 focus:0
      IC [d273032c311e43b6a8337581898937df] program:idea frontend:xim cap:4000000000 focus:0
      IC [ac2b93b8332c4f97b60c27d5b590e463] program:qq frontend:dbus cap:6000000020 focus:0
      IC [2b302282deaa41ff97675ab381a52670] program:cursor frontend:dbus cap:6000000020 focus:0
      IC [24d270ab8f374e548d689a5286b3efd2] program:typora frontend:dbus cap:6000000020 focus:0
      IC [3268491e5d914a9a9a47e07f90a9b371] program:org.mozilla.Thunderbird frontend:dbus cap:6000000020 focus:0
      IC [b206477e12084fd3b1f2ae94059b6fb4] program:com.alibabainc.dingtalk frontend:dbus cap:16000800060 focus:0
      IC [f3c0aad6aec948908d926d7c2e0a5d22] program:com.alibabainc.dingtalk frontend:dbus cap:6800800060 focus:0
      IC [6ea9733db0fc43a1a234b811bd195b8f] program:wpsoffice frontend:fcitx4 cap:800060 focus:0
      IC [9ca2e9c943ee465697d99bd37bdc8aa4] program:wechat frontend:dbus cap:800060 focus:0
      IC [fd10c3cb4fdd418faad342d52f9becff] program:et frontend:fcitx4 cap:800060 focus:0
      IC [e375cbec3d0e49c6868f12b5b42d7c8b] program:com.alibabainc.dingtalk frontend:dbus cap:6000000020 focus:0
      IC [1943c14b60f14a2882c2498f701393c1] program:com.alibabainc.dingtalk frontend:dbus cap:16000800060 focus:0
      IC [690af24e1aa54acfa309052c8e934a7e] program:cursor frontend:dbus cap:6000000020 focus:0
      IC [f1174e7b748b45bf882e53cc16a91826] program:com.alibabainc.dingtalk frontend:dbus cap:6000000020 focus:0
      IC [2b17d09e043c4c17a72c22a56af46856] program:com.alibabainc.dingtalk frontend:dbus cap:16000800060 focus:0
      IC [ed70ec678546404d8ed7d381831b50a7] program:com.alibabainc.dingtalk frontend:dbus cap:16000800060 focus:0
      IC [97b934adcf8f48b58096366712592740] program:wechat frontend:dbus cap:800060 focus:0
      IC [26d3e230d47844b39591f38238d24e61] program:com.alibabainc.dingtalk frontend:dbus cap:6000000020 focus:0
      IC [1bc0b274c08c466d8aa5f3efcae75935] program: frontend:xim cap:4000000000 focus:0
      IC [a0592779d001453084db0434c1fc77d8] program:com.alibabainc.dingtalk frontend:dbus cap:6000000020 focus:0
    Input Context without group
    

前端设置:

此脚本检查的环境变量仅能显示当前命令行的环境。仍有可能您的环境并没有应用于整个桌面。您可以通过使用命令对某个无法正常工作的进程使用命令 xargs -0 -L1 /proc/$PID/environ 检查此进程的实际的环境变量。

Xim:

  1. ${XMODIFIERS}:

    环境变量 XMODIFIERS 已经正确地设为了“@im=fcitx”。
    从环境变量中获取的 Xim 服务名称为 fcitx.

  2. 根窗口上的 XIM_SERVERS:

    Xim 服务的名称与环境变量中设置的相同。

Qt:

  1. qt4 - ${QT4_IM_MODULE}:

    环境变量 QT_IM_MODULE 已经正确地设为了“fcitx”。

    fcitx5-qt4-immodule-probing 未找到.

  2. qt5 - ${QT_IM_MODULE}:

    环境变量 QT_IM_MODULE 已经正确地设为了“fcitx”。

    使用 fcitx5-qt5-immodule-probing 来检查在当前环境下将被实际使用的输入法模块:

    QT_QPA_PLATFORM=wayland
    QT_IM_MODULE=fcitx
    IM_MODULE_CLASSNAME=fcitx::QFcitxPlatformInputContext
    
  3. qt6 - ${QT_IM_MODULE}:

    环境变量 QT_IM_MODULE 已经正确地设为了“fcitx”。

    使用 fcitx5-qt6-immodule-probing 来检查在当前环境下将被实际使用的输入法模块:

    QT_QPA_PLATFORM=wayland
    QT_IM_MODULES="wayland;ibus"
    IM_MODULE_CLASSNAME=QtWaylandClient::QWaylandInputContext
    
  4. Qt 输入法模块文件:

    找到了 fcitx5 qt6 模块:/lib/x86_64-linux-gnu/fcitx5/qt6/libfcitx-quickphrase-editor5.so
    找到了 fcitx5 的 qt5 输入法模块:/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitx5platforminputcontextplugin.so
    找到了 fcitx5 的 qt6 输入法模块:/lib/x86_64-linux-gnu/qt6/plugins/platforminputcontexts/libfcitx5platforminputcontextplugin.so

    下列错误也许并不准确,因为对路径所对应的 Qt 版本的猜测取决于发行版如何打包 Qt。如果您不使用任何对应版本的 Qt 程序,或者在 Wayland 下使用 Qt 的 text-input 支持,下列错误也不是严重问题。
    无法找到 Qt4 的 fcitx5 输入法模块。

Gtk:

  1. gtk - ${GTK_IM_MODULE}:

    环境变量 GTK_IM_MODULE 已经正确地设为了“fcitx”。

    使用 fcitx5-gtk2-immodule-probing 来检查在当前环境下将被实际使用的输入法模块:

    GTK_IM_MODULE=fcitx
    

    使用 fcitx5-gtk3-immodule-probing 来检查在当前环境下将被实际使用的输入法模块:

    GTK_IM_MODULE=fcitx
    

    使用 fcitx5-gtk4-immodule-probing 来检查在当前环境下将被实际使用的输入法模块:

    GTK_IM_MODULE=fcitx
    
  2. gtk-query-immodules:

    1. gtk 2:

      无法找到 gtk 2 的 gtk-query-immodules

      无法找到 gtk 2 的 fcitx5 输入法模块。

    2. gtk 3:

      无法找到 gtk 3 的 gtk-query-immodules

      无法找到 gtk 3 的 fcitx5 输入法模块。

  3. Gtk 输入法模块缓存:

    1. gtk 2:

      /lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules.cache 找到了 gtk 2.24.33 的输入法模块缓存。
      版本行:

      # Created by /usr/lib/x86_64-linux-gnu/libgtk2.0-0t64/gtk-query-immodules-2.0 from gtk+-2.24.33
      

      已找到 gtk 2.24.33 的 fcitx5 输入法模块。

      "/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-fcitx5.so" 
      "fcitx" "Fcitx5 (Flexible Input Method Framework5)" "fcitx5" "/usr/locale" "ja:ko:zh:*" 
      "fcitx5" "Fcitx5 (Flexible Input Method Framework5)" "fcitx5" "/usr/locale" "ja:ko:zh:*" 
      
    2. gtk 3:

      /lib/i386-linux-gnu/gtk-3.0/3.0.0/immodules.cache 找到了 gtk 3.24.50 的输入法模块缓存。
      版本行:

      # Created by /usr/lib/i386-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0 from gtk+-3.24.50
      

      无法输入法模块缓存 /lib/i386-linux-gnu/gtk-3.0/3.0.0/immodules.cache 中找到 fcitx5

      /lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules.cache 找到了 gtk 3.24.50 的输入法模块缓存。
      版本行:

      # Created by /usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0 from gtk+-3.24.50
      

      已找到 gtk 3.24.50 的 fcitx5 输入法模块。

      "/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-fcitx5.so" 
      "fcitx" "Fcitx5 (Flexible Input Method Framework5)" "fcitx5" "/usr/locale" "ja:ko:zh:*" 
      "fcitx5" "Fcitx5 (Flexible Input Method Framework5)" "fcitx5" "/usr/locale" "ja:ko:zh:*" 
      
  4. Gtk 输入法模块文件:

    1. gtk 2:

      找到的全部 Gtk 2 输入法模块文件均存在。

    2. gtk 3:

      找到的全部 Gtk 3 输入法模块文件均存在。

    3. gtk 4:

      找到的全部 Gtk 4 输入法模块文件均存在。

配置:

Fcitx 插件:

  1. 插件配置文件目录:

    找到了 fcitx5 的插件配置目录:/usr/share/fcitx5/addon

  2. 插件列表:

    1. 找到了 29 个已启用的插件:

      Simplified and Traditional Chinese Translation 5.1.9
      Classic User Interface 5.1.14
      Clipboard 5.1.14
      Cloud Pinyin 5.1.9
      DBus 5.1.14
      DBus Frontend 5.1.14
      Emoji 5.1.14
      Fcitx4 Frontend 5.1.14
      Full width character 5.1.9
      IBus Frontend 5.1.14
      Lua IME API 5.0.15
      Input method selector 5.1.14
      Keyboard 5.1.14
      KDE Input Method Panel 5.1.14
      Lua Addon Loader 5.0.15
      Status Notifier 5.1.14
      Notification 5.1.14
      Pinyin 5.1.9
      Extra Pinyin functionality 5.1.9
      Punctuation 5.1.9
      Quick Phrase 5.1.14
      Spell 5.1.14
      Table 5.1.9
      Unicode 5.1.14
      DBus Virtual Keyboard 5.1.14
      Wayland 5.1.14
      Wayland Input method frontend 5.1.14
      XCB 5.1.14
      X Input Method Frontend 5.1.14
      
    2. 找到了 0 个被禁用的插件:

  3. 插件库:

    所有插件所需的库都被找到。

  4. 用户界面:

    找到了 3 个已启用的用户界面插件:

    Classic User Interface
    KDE Input Method Panel
    DBus Virtual Keyboard
    

输入法:

  1. /home/hhoa/.config/fcitx5/profile:

    [Groups/0]
    # Group Name
    Name=默认
    # Layout
    Default Layout=cn
    # Default Input Method
    DefaultIM=pinyin
    
    [Groups/0/Items/0]
    # Name
    Name=keyboard-cn
    # Layout
    Layout=
    
    [Groups/0/Items/1]
    # Name
    Name=pinyin
    # Layout
    Layout=
    
    [GroupOrder]
    0=默认
    

日志:

  1. date:

    Tue Jan 20 10:44:33 CST 2026
    
  2. /home/hhoa/.config/fcitx5/crash.log:

    /home/hhoa/.config/fcitx5/crash.log 未找到.

警告:fcitx5-diagnose 的输出可能包含敏感信息,包括发行版名称,内核版本,正在运行的程序名称等。

尽管这些信息对于开发者诊断问题有帮助,请在公开发送到在线网站前检查并且根据需要移除的对应信息。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions