nisk
(nisk)
2023 年6 月 21 日 04:25
1
使用debian 12 遇到的问题,配置zsh后,无法通过 DBus 连接到 Fcitx,无法输入中文。
即使是点击运行Fcitx了,也是不能输入,已经尝试在/etc/profile 中加入
#fcitx
export XIM_PROGRAM=fcitx
export XIM=fcitx
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx
这类配置重启系统后,还是不能输入/启动Fcitx.
使用debian+kde(wayland)+fcitx5环境。
1、没有动任何配置,只有当chsh -s /bin/zsh 重启后,就不能使用;
如果切换回bash,fcitx是能够自启正常使用的。
2、即使是手动启动了fcitx,也是不能输入中文的。就很无语。。。
现在只能是在bash终端下输入zsh来使用,这样用是没问题。
我想要的是默认终端是zsh.
有什么解决方式么?
fcitx 是开机自启的,不需要配置,你这是自己搞坏了吧?
nisk
(nisk)
2023 年6 月 21 日 04:31
4
没有动任何配置,只有当chsh -s /bin/zsh 重启后,就不能使用;
如果切换回bash,fcitx是能够自启正常使用的。
看起来跟 zsh 有关,我没用过 zsh,帮不了你了。
nisk
(nisk)
2023 年6 月 21 日 04:35
6
即使是手动启动了fcitx,也是不能输入中文的。就很无语。。。
现在只能是在bash终端下输入zsh来使用,这样用是没问题。
我想要的是默认终端是zsh
我在用debian 12 + kde (x11) + ibus rime , 一切正常,要不你试试这套 ?
nisk
(nisk)
2023 年6 月 21 日 06:24
8
当前我还是debian+kde(wayland)+fcitx5
假如不行的话,只能换了。
nisk
(nisk)
2023 年6 月 21 日 06:26
9
之前,使用gnome环境时,使用过ibus rime.
你能切回x11试试吗? wayland可能支持不太好。反正我的d600独显没法用wayland。
KDE一样用 ibus+rime. 需要的话,我把我的步骤发你。
nisk
(nisk)
2023 年6 月 21 日 06:36
12
x11 好使啊,切换为x11.问题解决了,这灵感完全没往这方面想,zsh居然还wayland支持不是很好。
非常感谢!!
应该是你的某些设置只在 bash 下生效,导致更换 zsh 后 fcitx5 启动失败了。
既然手动运行也不能输入中文,说明你的环境变量设置有问题?就你贴出来的部分来看的话,缺少关闭引号。
fcitx5 对 wayland 的支持挺好的。显卡对 wayland 的支持好不好不影响输入法。
nisk
(nisk)
2023 年6 月 25 日 01:29
16
贴一下 fcitx5-diagnose 的输出吧……
nisk
(nisk)
2023 年6 月 25 日 01:49
19
❯ fcitx5-diagnose
系统信息:
uname -a
:
Linux nisk 6.1.0-9-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.27-1 (2023-05-08) x86_64 GNU/Linux
lsb_release -a
:
Distributor ID: Debian
Description: Debian GNU/Linux 12 (bookworm)
Release: 12
Codename: bookworm
lsb_release -d
:
Description: Debian GNU/Linux 12 (bookworm)
/etc/lsb-release
:
/etc/lsb-release
未找到.
/etc/os-release
:
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
VERSION_CODENAME=bookworm
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
桌面环境:
桌面环境为 kde
。
XDG 会话类型:
XDG_SESSION_TYPE=‘wayland’
Bash 版本:
BASH_VERSION=‘5.2.15(1)-release’
环境:1. DISPLAY:
DISPLAY=':1'
WAYLAND_DISPLAY='wayland-0'
键盘布局:
setxkbmap
:
WARNING: Running setxkbmap against an XWayland server
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us+inet(evdev)" };
xkb_geometry { include "pc(pc105)" };
};
xprop
:
_XKB_RULES_NAMES(STRING) = "evdev", "pc105", "us", "", ""
Locale:
全部可用 locale:
C
C.utf8
POSIX
zh_CN.utf8
当前 locale:
LANG=zh_CN.UTF-8
LANGUAGE=zh_CN:zh
LC_CTYPE=“zh_CN.UTF-8”
LC_NUMERIC=“zh_CN.UTF-8”
LC_TIME=“zh_CN.UTF-8”
LC_COLLATE=“zh_CN.UTF-8”
LC_MONETARY=“zh_CN.UTF-8”
LC_MESSAGES=“zh_CN.UTF-8”
LC_PAPER=“zh_CN.UTF-8”
LC_NAME=“zh_CN.UTF-8”
LC_ADDRESS=“zh_CN.UTF-8”
LC_TELEPHONE=“zh_CN.UTF-8”
LC_MEASUREMENT=“zh_CN.UTF-8”
LC_IDENTIFICATION=“zh_CN.UTF-8”
LC_ALL=
目录:
主目录:
/home/nisk
${XDG_CONFIG_HOME}
:
环境变量 XDG_CONFIG_HOME
没有设定。
XDG_CONFIG_HOME
的当前值是 ~/.config
(/home/nisk/.config
)。
Fcitx5 设置目录:
当前 fcitx5 设置目录是 ~/.config/fcitx5
(/home/nisk/.config/fcitx5
)。
当前用户:
脚本作为 nisk (1000) 运行。
Fcitx 状态:
可执行文件:
在 /usr/bin/fcitx5
找到了 fcitx5。
版本:
Fcitx 版本: 5.0.21
进程:
Fcitx5 没有在运行。
请访问 入门指南 页面上对应您发行版的配置链接查看如何配置 fcitx5 的自动启动.
Fcitx 配置界面:1. 配置工具封装:
在 `/usr/bin/fcitx5-configtool` 找到了 fcitx5-configtool。
Qt 的配置界面:
在 /usr/bin/fcitx5-config-qt
找到了 fcitx5-config-qt
。
KDE 的配置界面:
找到了 fcitx5 的 kcm 模块。
kcm_fcitx5 - 配置输入法
前端设置:## Xim:
${XMODIFIERS}
:
XMODIFIERS 没有设置
请使用您发行版提供的工具将环境变量 XMODIFIERS 设为 “@im=fcitx” 或者将 export XMODIFIERS=@im=fcitx
添加到您的 ~/.xprofile
中。参见 输入法相关的环境变量:XMODIFIERS 。
从环境变量中获取的 Xim 服务名称为 fcitx.
根窗口上的 XIM_SERVERS:
无法在根窗口找到 xim_server。
Qt:
qt4 - ${QT4_IM_MODULE}
:
请使用您发行版提供的工具将环境变量 QT_IM_MODULE 设为 “fcitx” 或者将 export QT_IM_MODULE=fcitx
添加到您的 ~/.xprofile
中。参见 输入法相关的环境变量:QT_IM_MODULE 。
qt5 - ${QT_IM_MODULE}
:
请使用您发行版提供的工具将环境变量 QT_IM_MODULE 设为 “fcitx” 或者将 export QT_IM_MODULE=fcitx
添加到您的 ~/.xprofile
中。参见 输入法相关的环境变量:QT_IM_MODULE 。
如果您的混成器完全支持 qt5 使用的 text-input 协议,您也可以使用 qt5 内置的 Wayland 模块。
Qt 输入法模块文件:
找到了 fcitx5 qt5 模块:/usr/lib/x86_64-linux-gnu/fcitx5/qt5/libfcitx-quickphrase-editor5.so
。 找到了 fcitx5 的 qt5 输入法模块:/usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitx5platforminputcontextplugin.so
。 找到了未知的 fcitx qt 模块:/usr/lib/x86_64-linux-gnu/qt5/plugins/kcms/kcm_fcitx5.so
。 找到了 fcitx5 的 qt6 输入法模块:/usr/lib/x86_64-linux-gnu/qt6/plugins/platforminputcontexts/libfcitx5platforminputcontextplugin.so
。
下列错误也许并不准确,因为对 Qt 版本的猜测取决于发行版如何打包 Qt。如果您不使用任何对应版本的 Qt 程序,或者在 Wayland 下使用 Qt 的 text-input 支持,下列错误也也不是严重问题。 无法找到 Qt4 的 fcitx5 输入法模块。
Gtk:
gtk - ${GTK_IM_MODULE}
:
请使用您发行版提供的工具将环境变量 GTK_IM_MODULE 设为 “fcitx” 或者将 export GTK_IM_MODULE=fcitx
添加到您的 ~/.xprofile
中。参见 输入法相关的环境变量:GTK_IM_MODULE 。
如果您的混成器完全支持 gtk 使用的 text-input 协议,您也可以使用 gtk 内置的 Wayland 模块。
gtk-query-immodules
:
gtk 2:
无法找到 gtk 2 的 gtk-query-immodules
。
无法找到 gtk 2 的 fcitx5 输入法模块。
gtk 3:
无法找到 gtk 3 的 gtk-query-immodules
。
无法找到 gtk 3 的 fcitx5 输入法模块。
Gtk 输入法模块缓存:
gtk 2:
在 /usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules.cache
找到了 gtk 2.24.33
的输入法模块缓存。 版本行:
# Created by /usr/lib/x86_64-linux-gnu/libgtk2.0-0/gtk-query-immodules-2.0 from gtk±2.24.33
无法输入法模块缓存 /usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules.cache
中找到 fcitx5
无法在缓存中找到 gtk 2 的 fcitx5 输入法模块。
gtk 3:
在 /usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules.cache
找到了 gtk 3.24.37
的输入法模块缓存。 版本行:
# Created by /usr/lib/x86_64-linux-gnu/libgtk-3-0/gtk-query-immodules-3.0 from gtk±3.24.37
已找到 gtk 3.24.37
的 fcitx5 输入法模块。
“/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-fcitx5.so”
“fcitx” “Fcitx5 (Flexible Input Method Framework5)” “fcitx5” “/usr/locale” “ja:ko:zh:"
“fcitx5” “Fcitx5 (Flexible Input Method Framework5)” “fcitx5” “/usr/locale” "ja:ko:zh: ”
gtk 4:
无法找到 gtk 4 的输入法模块缓存
无法在缓存中找到 gtk 4 的 fcitx5 输入法模块。
Gtk 输入法模块文件:
gtk 2:
找到的全部 Gtk 2 输入法模块文件均存在。
gtk 3:
找到的全部 Gtk 3 输入法模块文件均存在。
gtk 4:
找到的全部 Gtk 4 输入法模块文件均存在。
配置:
Fcitx 插件:1. 插件配置文件目录:
找到了 fcitx5 的插件配置目录:`/usr/share/fcitx5/addon`。
插件列表:
找到了 28 个已启用的插件:
Simplified and Traditional Chinese Translation 5.0.16
Classic User Interface 5.0.21
Clipboard 5.0.21
Cloud Pinyin 5.0.16
DBus 5.0.21
DBus Frontend 5.0.21
Emoji 5.0.21
Fcitx4 Frontend 5.0.21
Full width character 5.0.16
IBus Frontend 5.0.21
Lua IME API 5.0.10
Input method selector 5.0.21
Keyboard 5.0.21
KDE Input Method Panel 5.0.21
Lua Addon Loader 5.0.10
Status Notifier 5.0.21
Notification 5.0.21
Pinyin 5.0.16
Extra Pinyin functionality 5.0.16
Punctuation 5.0.16
Quick Phrase 5.0.21
Spell 5.0.21
Table 5.0.16
Unicode 5.0.21
Wayland 5.0.21
Wayland Input method frontend 5.0.21
XCB 5.0.21
X Input Method Frontend 5.0.21
找到了 0 个被禁用的插件:
插件库:
所有插件所需的库都被找到。
用户界面:
找到了 2 个已启用的用户界面插件:
Classic User Interface
KDE Input Method Panel
输入法:1. /home/nisk/.config/fcitx5/profile
:
[Groups/0]
# Group Name
Name=默认 # Layout
Default Layout=cn
# Default Input Method
DefaultIM=wbx
[Groups/0/Items/0]
# Name
Name=keyboard-cn
# Layout
Layout=
[Groups/0/Items/1]
# Name
Name=wbx
# Layout
Layout=
[Groups/0/Items/2]
# Name
Name=pinyin
# Layout
Layout=
[GroupOrder]
0=默认
日志:1. date
:
2023年 06月 25日 星期日 09:45:52 CST
/home/nisk/.config/fcitx5/crash.log
:
/home/nisk/.config/fcitx5/crash.log
未找到.
警告:fcitx5-diagnose 的输出可能包含敏感信息,包括发行版名称,内核版本,正在运行的程序名称等。
尽管这些信息对于开发者诊断问题有帮助,请在公开发送到在线网站前检查并且根据需要移除的对应信息。
1 个赞
你的环境变量配置没有生效。猜测是没有读取 /etc/profile。它应该由登录器读取,但是很多时候登录器并不读取该文件(这个文件严格来说属于 bash 的)。考虑在 /etc/environment 设置以确保生效。
你的 fcitx5 没有在运行。请在 KDE 的设置工具里配置让它自动运行。有个输入工具相关的配置,建议开启那边那个(Wayland 输入法),就不需要配置 GTK 和 Qt 的环境变量了(X 的还是得配)。
1 个赞
nisk
(nisk)
2023 年6 月 25 日 02:34
21
非常感谢您抽出宝贵时间悉心指导。
我将具体的解决方式也贴出来,以供遇到此问题的其他朋友使用。
1、通过在/etc/environment 文件下加入:
export XIM_PROGRAM=fcitx
export XIM=fcitx
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=“@im=fcitx”
export LANG=“zh_CN.UTF-8”
2、然后在使用系统设置配置自启动:
注意:/etc/environment 一定要添加fcitx配置,不然fcitx输入法仍然不能输入中文。
1 个赞