KWin脚本无输出求助:配置QT_LOGGING_RULES后仍无法查看日志
KWin脚本print输出无法查看的排查解决步骤
以下是针对你遇到的KWin脚本无日志输出问题的几个关键排查点:
QT_LOGGING_RULES的生效范围问题
.bash_profile仅针对bash登录Shell生效,而KWin作为桌面环境进程,不会读取这个文件。正确的做法是将环境变量配置到Plasma的全局环境中:- 创建目录(如果不存在):
mkdir -p ~/.config/plasma-workspace/env - 新建文件
~/.config/plasma-workspace/env/kwin_logging.sh,写入内容:export QT_LOGGING_RULES="kwin_scripting.debug=true" - 赋予执行权限:
chmod +x ~/.config/plasma-workspace/env/kwin_logging.sh - 重启Plasma会话(注销再登录)
- 创建目录(如果不存在):
日志过滤关键词错误
KWin脚本的print输出对应的日志标签是kwin_scripting,不是js:。正确的日志查看命令:# 实时查看KWin脚本相关日志 journalctl -g "kwin_scripting" -f # X11环境下针对KWin进程过滤关键词 journalctl -u plasma-kwin_x11.service -g "hello" -f # Wayland环境替换为plasma-kwin_wayland.service确认脚本是否实际执行
先排除脚本未触发的可能:修改脚本添加桌面通知,验证快捷键是否生效:function hello() { // 弹出桌面通知 callDBus("org.kde.plasma.notifications", "/org/kde/plasma/notifications", "org.kde.plasma.notifications", "notify", "KWin Script Test", 0, "", "触发成功", "Hello World", []); print("hello world"); } registerShortcut("Hello", "Print hello world.", "Meta+R", hello);安装后启用脚本,按下Meta+R如果能看到通知,说明脚本正常执行,问题仅在日志输出环节。
验证脚本安装与加载状态
- 确认脚本安装路径:
kpackagetool5 --type=KWin/Script -l查看已安装脚本,确保你的myscript在列表中 - 启用脚本后,重启KWin生效:按下Alt+F2,输入
kwin --replace回车 - 检查脚本的
metadata.desktop配置,确保包含:[Desktop Entry] Type=Service ServiceTypes=KWin/Script Name=Hello Script
- 确认脚本安装路径:
内容的提问来源于stack exchange,提问作者William
相关产品推荐
相关产品推荐

