遇到卡顿,输入显示慢

我最近更新以后也不能切换输入法了。
Deepin 25.2.1 升级后搜狗输入法失效修复记录
环境:Deepin 25.2.1(X11)、fcitx5、sogou-ime-ng 10.0.10 现象:升级后打不出中文,托盘能切输入法但敲键盘不出字。
结论
升级弄丢了 ~/.dde_env。它是 Deepin 25 会话里输入法变量的唯一来源,丢了之后程序启动时没有 GTK_IM_MODULE,就不会连 fcitx5,按键直接进程序。重建文件 + 注销重登录即可。
为什么通用教程在 Deepin 25 上没用
Deepin 25 会话链:lightdm → dde-session → /etc/X11/Xsession.d/00deepin-dde-env 脚本 source $HOME/.dde_env。该脚本还把 GTK_IM_MODULE/QT_IM_MODULE/XMODIFIERS 列进 EXCLUDED_ENV 从 systemd 用户环境排除。所以:
- 改
~/.xprofile:lightdm 不读,无效 - 改
/etc/environment或 systemd 环境:被过滤,无效 - 只有
~/.dde_env有用
GTK/Qt 只在启动那一刻读这些变量。没有就永远不加载输入法模块——这就是"图标能切、字打不出"的原因,切换只是改指示器,按键没走到 fcitx5。
排查
bash****复制
ps aux | grep -E 'fcitx5|cpis' | grep -v grep # 应有 fcitx5 + 3个 cpis 进程
tr '\0' '\n' < /proc//environ | grep -E 'GTK_IM_MODULE|XMODIFIERS|QT_IM_MODULE' # 看程序有没有拿到变量,空=旧进程
fcitx5-remote -n # 当前输入法名(fcitx5 无 -l 参数)
cat ~/.dde_env # 应含下方 5 行 export
cat ~/.config/fcitx5/profile # Items/0 应为搜狗,升级常把它改回 pinyin
修复
bash****复制
若 autostart 缺 hotkey,补 ~/.config/autostart/com.cpis.hotkey.service.desktop(Exec 指向 /opt/apps/com.cpis/bin/com.cpis.hotkey.service.start.sh)。fcitx5 有系统级自启,不用自己加。
最后注销重登录(或重启)。~/.dde_env 只在登录时读取,不改会话旧程序永远拿不到变量。
验证
注销后:echo $GTK_IM_MODULE 应为 fcitx,fcitx5-remote -n 应为 com.sogou.ime.ng.fcitx5.deepin,Ctrl+Space 能打中文即可。
防复发
大版本更新后查两处:~/.dde_env 在不在、profile 的 Items/0 是不是搜狗。建议备份这两个文件,更新后 diff,被改直接还原。改完注销重登录。
走过的弯路
先以为是 dbus name 没释放(清残留缓解,表面),后又发现 profile 被重置(修回去管一阵,也不是根因),最后才定位到 ~/.dde_env 缺失导致整个会话无变量。前面都只修表面,所以每次更新都复发。重建 .dde_env + 修 profile + 注销重登录后彻底解决。
Popular Events
More

中文 


记一次 Deepin 25 搜狗输入法挂掉的排查
前两天手贱升级了下系统,搜狗就嗝屁了。Ctrl+Space 没反应、点托盘图标也没用,只能打英文。查了一圈发现其实就一个烂坑,顺手记一下。
环境:Deepin 25, fcitx5, sogou-ime-ng 10.0.10, X11。
先看下进程和配置
bash****复制
搜狗新一代(sogou-ime-ng)拆成了几个独立进程:
再加上 fcitx5 主进程,正常情况下一共 5 个。少了任何一个都废。
~/.config/fcitx5/profile里搜狗的 entry 长这样:ini****复制
profile 里没有的话手动加上,Items 列表第一位放搜狗。
坑在哪里
不看日志根本想不到:
fcitx5 上一次退出的时候 dbus name
org.fcitx.Fcitx5没释放干净,新进程抢不到这个名字,dbus addon 直接加载失败。dbus 一挂,xcb hotkey 也没了,Ctrl+Space 当然是死的。验证一下:
bash****复制
修复
1. 彻底干掉残留
bash****复制
2. 拉起搜狗的后台
bash****复制
3. profile 补上搜狗
bash****复制
4. 起 fcitx5
bash****复制
日志里看到这行就对了:
5. 开机自启
Deepin 有时候不会自动拉搜狗的服务,加两个 desktop 到 autostart:
bash****复制
收工。就一个 dbus name 没释放的问题,绕了一大圈。fcitx5 的日志其实写得很清楚,只是平时没人注意看。