linuxqq在Wayland+KDE Plasma下会发生无法输入的问题,无论是否激活输入法,甚至连粘贴文字都不行。

archlinux中文论坛上有一个解决办法是修改linuxqq.desktop脚本,增加两个参数。这里收录如下:

我也是使用Hyprland,最近解决了linuxqq无法输入中文输入法的问题,希望能帮到你。我直接安装的是linuxqq。

尝试打开qq,

1
linuxqq --ozone-platform-hint=auto --enable-wayland-ime
打开成功且输入法使用成功的话,那么可以继续
1
sudo vim /usr/bin/linuxqq 
打开运行脚本,在中间随便哪添加
1
2
3
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
在最后一行

1
exec /opt/QQ/qq ${QQ_USER_FLAGS[@]} "$@"

改为

1
exec /opt/QQ/qq ${QQ_USER_FLAGS[@]} --ozone-platform-hint=auto --enable-wayland-ime "$@"

重启qq,尝试输入法是否正常。 下面是我的供参考

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/bin/bash

if [ -d ~/.config/QQ/versions ]; then
find ~/.config/QQ/versions -name sharp-lib -type d -exec rm -r {} \; 2>/dev/null
fi

rm -rf ~/.config/QQ/crash_files/*

XDG_CONFIG_HOME=${XDG_CONFIG_HOME:-~/.config}
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx

if [[ -f "${XDG_CONFIG_HOME}/qq-flags.conf" ]]; then
mapfile -t QQ_USER_FLAGS <<<"$(grep -v '^#' "${XDG_CONFIG_HOME}/qq-flags.conf")"
echo "User flags:" ${QQ_USER_FLAGS[@]}
fi

exec /opt/QQ/qq ${QQ_USER_FLAGS[@]}--ozone-platform-hint=auto --enable-wayland-ime "$@"

但是这种方法有一个缺陷:当linuxqq更新的时候,新脚本可能会把我们做出的更改覆盖掉。

注意到这个脚本最后一个if-fi中间引入了${XDG_CONFIG_HOME}/qq-flags.conf配置文件。因此我们可以这样做:

用你喜爱的任何文本编辑器打开~/.config/qq-flags.conf,然后写入如下两行:

1
2
--ozone-platform-hint=auto
--enable-wayland-ime

下次启动linuxqq时就可以正常输入了。