带有 dbus-launch 的 Evince 无法使用 WSL2 输入法

带有 dbus-launch 的 Evince 无法使用 WSL2 输入法

在第一篇文章中我问如何在 WSL2 中启用 Evince 的读取历史记录, 谢谢答案建议:

dbus-launch evince <file.pdf>

但我发现一个问题,我无法WSL2再在 PDF 搜索中使用输入法(例如我使用fcitx5的输入法)。

我仍然可以使用fcitx5旧方法打开没有历史记录的 PDF。

evince <file.pdf>

那么我如何使用fcitx5Evince命令dbus-launch

附言如何fcitx5在 WSL2 中安装和使用(部分解决)

答案1

我不得不说,在花了一些时间尝试运行 fcitx5 后,我现在对此感到茫然。我只是不太了解输入法控件,无法让它在 WSLg 下运行,然后着手解决问题evince

我能做的最好的就是提供一些我无法测试的可能性:

  • 尝试运行WAYLAND_DISPLAY= dbus-launch evince <pdf>:默认情况下,如果 Wayland 可用,Evince 会在 Wayland 下运行。此命令将强制 Evince 在 X 下运行,因为它认为 Wayland 不存在。我知道您的fcitx5回答提到必须禁用 Wayland,所以我想知道您是否也需要对 Evince 这样做。

  • 尝试运行一切在以 开头的 WSL 会话中wsl ~ -e dbus-launch bash。我知道我在其他 Evince 回答中提到过此选项,但您的问题中没有提到它。Evince 和 fcitx5 都使用 D-bus,我想知道在单独启动时是否会发生一些冲突。

  • 还可以尝试结合上述两次尝试,使用 启动 WSL,wsl ~ -d dbus-launch bash然后使用 启动 Evince WAYLAND_DISPLAY= evince <pdf>

相关内容