Skip to content

浏览器弹窗打不出中文 ​

Wayland 下,Edge、Chrome、Brave 的历史记录、收藏夹、Ctrl+D 弹窗里打不出中文。

网页、地址栏、Ctrl+F 都正常,换 fcitx5 也没用。

先确认是不是这个问题 ​

  1. 会话是 Wayland。

    bash
    echo $XDG_SESSION_TYPE

    输出 wayland。

  2. 网页输入框、地址栏、Ctrl+F 能打中文。

  3. 只有工具条弹出的小窗口不行,而且候选框根本不出现。

三条都对上,再往下看。

原因 ​

Wayland 下,Chromium 用 text-input-v3 协议接输入法。

这套协议按窗口工作。浏览器只给主窗口建了输入法上下文,工具条弹窗是 popup 窗口,没建。

所以弹窗里打字,浏览器收到的是原始按键,输入法不会被激活。

换 IBus 或 fcitx5 都没用,问题在浏览器这一层。

修复 ​

让浏览器改走 X11(XWayland)。X11 下 Chromium 用 GTK 通路,每个窗口都有输入法上下文。

下面的命令都在终端里执行。按 Ctrl+Alt+T 打开终端。

先试一下 ​

bash
# IBus
GTK_IM_MODULE=ibus microsoft-edge --ozone-platform=x11

fcitx5 用户把 ibus 换成 fcitx。

新窗口里按 Ctrl+D,在名称框打拼音。能出候选框,再装永久版。

用别的浏览器就换命令开头的程序名:

浏览器命令
Edgemicrosoft-edge
Chromegoogle-chrome
Chromiumchromium
Bravebrave-browser

装成永久的 ​

上面那条每次都要开终端。装一次,以后点图标启动就自动带上参数。

bash
curl -fsSL -o ~/chromium-ime-fix.sh https://ubuntu-skills.pages.dev/chromium-ime-fix.sh
bash ~/chromium-ime-fix.sh install

看到 已写入 就是成功。

脚本会自动找出你装的浏览器,判断输入法是 IBus 还是 fcitx5,再改启动项。不用 clone 仓库,也不用另装软件。

装完把所有浏览器窗口关掉,从应用图标重新打开。

下载失败的话,换 GitHub 的地址:

bash
curl -fsSL -o ~/chromium-ime-fix.sh https://raw.githubusercontent.com/vabaly/ubuntu-skills/main/scripts/chromium-ime-fix.sh

不想用 X11 ​

用完整页面代替弹窗:

  • Ctrl+H:历史记录页
  • Ctrl+Shift+O:收藏管理器
  • Ctrl+D:先回车保存,再去收藏管理器改名

验证 ​

  1. 关掉所有浏览器窗口。
  2. 从应用图标重新启动。
  3. 按 Ctrl+D,打拼音。

能出候选框并上屏,就成功了。

想确认当前模式:地址栏打开 edge://gpu(Chrome 用 chrome://gpu),看 Ozone platform 是 x11 还是 wayland。

撤销 ​

bash
bash ~/chromium-ime-fix.sh uninstall

然后重启浏览器。

常见问题 ​

fcitx5 可以用吗 ​

可以。把 ibus 换成 fcitx,脚本也会自动识别。

Chrome、Brave、Vivaldi 可以吗 ​

可以。同一个原因同一个解法,换程序名即可。

会不会变慢 ​

不会。只是换窗口后端,渲染还是同一套。

画面变糊了 ​

XWayland 在高分屏小数缩放下可能略糊。介意就用上面的完整页面方案。

浏览器更新后还要重装吗 ​

先测一次。上游修好就执行 uninstall 撤销。

下载脚本失败了 ​

先用 GitHub 地址重试:

bash
curl -fsSL -o ~/chromium-ime-fix.sh https://raw.githubusercontent.com/vabaly/ubuntu-skills/main/scripts/chromium-ime-fix.sh

国内访问 GitHub 不稳,多试几次或挂代理即可。

Flatpak / Snap 版怎么办 ​

脚本只处理发行版原生安装。

bash
flatpak run <应用ID> --ozone-platform=x11
snap run <包名> --ozone-platform=x11

应用 ID 用 flatpak list 或 snap list 查。

实测环境 ​

Ubuntu 26.04、GNOME Wayland、Microsoft Edge 156、IBus 1.5 + libpinyin。

内容以实测为准,命令可直接复制