您尚未登录。

#1 2024-03-14 03:01:12

lanfunoe
会员
注册时间: 2024-03-14
帖子: 5

idea 不能使用fcitx5输入中文

已经尝试过 https://bbs.archlinuxcn.org/viewtopic.php?id=14072 以及主题中提到的其他帖子,都无法解决,因为他们的环境有的不是wayland,修改环境变量在尝试过后,又恢复成了一开始的配置。现在使用的是帖子里推荐的jre。
以下是fcitx诊断工具的输出:

# 系统信息:
1.  `uname -a`:

        Linux lanfu 6.7.9-arch1-1 #1 SMP PREEMPT_DYNAMIC Fri, 08 Mar 2024 01:59:01 +0000 x86_64 GNU/Linux

2.  `lsb_release -a`:

        LSB Version:    n/a
        Distributor ID: Arch
        Description:    Arch Linux
        Release:        rolling
        Codename:       n/a

3.  `lsb_release -d`:

        Description:    Arch Linux

4.  `/etc/lsb-release`:

        DISTRIB_ID="Arch"
        DISTRIB_RELEASE="rolling"
        DISTRIB_DESCRIPTION="Arch Linux"

5.  `/etc/os-release`:

        NAME="Arch Linux"
        PRETTY_NAME="Arch Linux"
        ID=arch
        BUILD_ID=rolling
        ANSI_COLOR="38;2;23;147;209"
        HOME_URL="https://archlinux.org/"
        DOCUMENTATION_URL="https://wiki.archlinux.org/"
        SUPPORT_URL="https://bbs.archlinux.org/"
        BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues"
        PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
        LOGO=archlinux-logo

6.  桌面环境:

    桌面环境为 `kde`。

7.  XDG 会话类型:

        XDG_SESSION_TYPE='wayland'

8.  Bash 版本:

        BASH_VERSION='5.2.26(1)-release'

# 环境:
1.  DISPLAY:

        DISPLAY=':1'


        WAYLAND_DISPLAY='wayland-0'

2.  键盘布局:

    1.  `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)+altwin(meta_win)"    };
                xkb_geometry  { include "pc(pc105)"     };
            };

    2.  `xprop`:

            _XKB_RULES_NAMES(STRING) = "evdev", "pc105", "us", "", "altwin:meta_win"

3.  Locale:

    1.  全部可用 locale:

            C
            C.utf8
            en_US.utf8
            POSIX
            zh_CN.utf8

    2.  当前 locale:

            LANG=zh_CN.UTF-8
            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=

4.  目录:

    1.  主目录:

            /home/mxhc

    2.  `${XDG_CONFIG_HOME}`:

        环境变量 `XDG_CONFIG_HOME` 没有设定。

        `XDG_CONFIG_HOME` 的当前值是 `~/.config` (`/home/mxhc/.config`)。

    3.  Fcitx5 设置目录:

        当前 fcitx5 设置目录是 `~/.config/fcitx5` (`/home/mxhc/.config/fcitx5`)。

5.  当前用户:

    脚本作为 mxhc (1000) 运行。

# Fcitx 状态:
1.  可执行文件:

    在 `/usr/bin/fcitx5` 找到了 fcitx5。

2.  版本:

    Fcitx 版本: `5.1.8`

3.  进程:

    找到了 1 个 fcitx5 进程:

           2636 fcitx5

4.  `fcitx5-remote`:

    `fcitx5-remote` 工作正常。

5.  DBus 界面:

    使用 `dbus-send` 来检查 dbus。

    DBus 名称 `org.fcitx.Fcitx5` 的所有者是 `:1.23`。

    DBus 名称 `org.fcitx.Fcitx5` 的 PID 所有者是 `2636`。

    来自 dbus 的调试信息:

           Group [x11::1] has 0 InputContext(s)
        Group [wayland:] has 6 InputContext(s)
          IC [ae3bbbd995e44b0c878b4b54cb678cbb] program:org.kde.konsole frontend:wayland cap:72 focus:1
          IC [0f22809474ad486d967ae7b17ac36073] program:jetbrains-idea frontend:wayland cap:72 focus:0
          IC [913134a604044f97a11294cec7936e23] program:jetbrains-idea frontend:wayland cap:80072 focus:0
          IC [e66bab43bd194e52ab11c70bf0d04e9e] program:microsoft-edge-beta frontend:wayland cap:80072 focus:0
          IC [70bf615e70424105bdbdf2a02f14dac6] program:org.kde.discover frontend:wayland cap:80072 focus:0
          IC [6c5c080d7c1a41fab8aad78ff99f364b] program: frontend:wayland cap:72 focus:0
        Input Context without group

# Fcitx 配置界面:
1.  配置工具封装:

    在 `/usr/bin/fcitx5-configtool` 找到了 fcitx5-configtool。

2.  Qt 的配置界面:

    在 `/usr/bin/fcitx5-config-qt` 找到了 `fcitx5-config-qt`。

3.  KDE 的配置界面:

    **`kcmshell5` 未找到.**

# 前端设置:
此脚本检查的环境变量仅能显示当前命令行的环境。仍有可能您的环境并没有应用于整个桌面。您可以通过使用命令对某个无法正常工作的进程使用命令 `xargs -0 -L1 /proc/$PID/environ` 检查此进程的实际的环境变量。

## Xim:
1.  `${XMODIFIERS}`:

    环境变量 XMODIFIERS 已经正确地设为了“@im=fcitx”。
    从环境变量中获取的 Xim 服务名称为 fcitx.

2.  根窗口上的 XIM_SERVERS:

    **无法在根窗口找到 xim_server。**

## Qt:
1.  qt4 - `${QT4_IM_MODULE}`:

    **请使用您发行版提供的工具将环境变量 QT_IM_MODULE 设为 "fcitx" 或者将 `export QT_IM_MODULE=fcitx` 添加到您的 `~/.xprofile` 中。参见 [输入法相关的环境变量:QT_IM_MODULE](http://fcitx-im.org/wiki/Input_method_related_environment_variables/zh-cn#QT_IM_MODULE)。**

    **`fcitx5-qt4-immodule-probing` 未找到.**

2.  qt5 - `${QT_IM_MODULE}`:

    **请使用您发行版提供的工具将环境变量 QT_IM_MODULE 设为 "fcitx" 或者将 `export QT_IM_MODULE=fcitx` 添加到您的 `~/.xprofile` 中。参见 [输入法相关的环境变量:QT_IM_MODULE](http://fcitx-im.org/wiki/Input_method_related_environment_variables/zh-cn#QT_IM_MODULE)。**

    **如果您的混成器完全支持 qt5 使用的 text-input 协议,您也可以使用 qt5 内置的 Wayland 模块。**

    使用 fcitx5-qt5-immodule-probing 来检查在当前环境下将被实际使用的输入法模块:

        QT_QPA_PLATFORM=wayland
        QT_IM_MODULE=
        IM_MODULE_CLASSNAME=QtWaylandClient::QWaylandInputContext

3.  qt6 - `${QT_IM_MODULE}`:

    **请使用您发行版提供的工具将环境变量 QT_IM_MODULE 设为 "fcitx" 或者将 `export QT_IM_MODULE=fcitx` 添加到您的 `~/.xprofile` 中。参见 [输入法相关的环境变量:QT_IM_MODULE](http://fcitx-im.org/wiki/Input_method_related_environment_variables/zh-cn#QT_IM_MODULE)。**

    **如果您的混成器完全支持 qt6 使用的 text-input 协议,您也可以使用 qt6 内置的 Wayland 模块。**

    使用 fcitx5-qt6-immodule-probing 来检查在当前环境下将被实际使用的输入法模块:

        QT_QPA_PLATFORM=wayland
        QT_IM_MODULE=
        IM_MODULE_CLASSNAME=QtWaylandClient::QWaylandInputContext

4.  Qt 输入法模块文件:

    找到了 fcitx5 的 qt 输入法模块:`/usr/lib/qt/plugins/platforminputcontexts/libfcitx5platforminputcontextplugin.so`。
    找到了 fcitx5 的 qt6 输入法模块:`/usr/lib/qt6/plugins/platforminputcontexts/libfcitx5platforminputcontextplugin.so`。
    找到了未知的 fcitx qt 模块:`/usr/lib/qt6/plugins/plasma/kcms/systemsettings/kcm_fcitx5.so`。
    找到了 fcitx5 qt6 模块:`/usr/lib/fcitx5/qt6/libfcitx-quickphrase-editor5.so`。
    找到了 fcitx5 qt5 模块:`/usr/lib/fcitx5/qt5/libfcitx-quickphrase-editor5.so`。
    找到了未知的 fcitx qt 模块:`/usr/lib/office6/qt/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so`。

    下列错误也许并不准确,因为对路径所对应的 Qt 版本的猜测取决于发行版如何打包 Qt。如果您不使用任何对应版本的 Qt 程序,或者在 Wayland 下使用 Qt 的 text-input 支持,下列错误也不是严重问题。
    **无法找到 Qt4 的 fcitx5 输入法模块。**

## Gtk:
1.  gtk - `${GTK_IM_MODULE}`:

    **请使用您发行版提供的工具将环境变量 GTK_IM_MODULE 设为 "fcitx" 或者将 `export GTK_IM_MODULE=fcitx` 添加到您的 `~/.xprofile` 中。参见 [输入法相关的环境变量:GTK_IM_MODULE](http://fcitx-im.org/wiki/Input_method_related_environment_variables/zh-cn#GTK_IM_MODULE)。**

    **如果您的混成器完全支持 gtk 使用的 text-input 协议,您也可以使用 gtk 内置的 Wayland 模块。**

    使用 fcitx5-gtk2-immodule-probing 来检查在当前环境下将被实际使用的输入法模块:

        GTK_IM_MODULE=xim

    使用 fcitx5-gtk3-immodule-probing 来检查在当前环境下将被实际使用的输入法模块:

        GTK_IM_MODULE=wayland

    使用 fcitx5-gtk4-immodule-probing 来检查在当前环境下将被实际使用的输入法模块:

        GTK_IM_MODULE=wayland

2.  `gtk-query-immodules`:

    1.  gtk 2:

        在 `/usr/bin/gtk-query-immodules-2.0` 找到了 gtk `2.24.33` 的 `gtk-query-immodules`。
        版本行:

            # Created by /usr/bin/gtk-query-immodules-2.0 from gtk+-2.24.33

        已找到 gtk `2.24.33` 的 fcitx5 输入法模块。

            "/usr/lib/gtk-2.0/2.10.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:*" 

    2.  gtk 3:

        在 `/usr/bin/gtk-query-immodules-3.0` 找到了 gtk `3.24.41` 的 `gtk-query-immodules`。
        版本行:

            # Created by /usr/bin/gtk-query-immodules-3.0 from gtk+-3.24.41

        已找到 gtk `3.24.41` 的 fcitx5 输入法模块。

            "/usr/lib/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:*" 

        在 `/usr/bin/gtk-query-immodules-3.0-32` 找到了 gtk `3.24.41` 的 `gtk-query-immodules`。
        版本行:

            # Created by /usr/bin/gtk-query-immodules-3.0-32 from gtk+-3.24.41

        **无法在 `/usr/bin/gtk-query-immodules-3.0-32` 的输出中找到 fcitx5。**

3.  Gtk 输入法模块缓存:

    1.  gtk 2:

        在 `/usr/lib/gtk-2.0/2.10.0/immodules.cache` 找到了 gtk `2.24.33` 的输入法模块缓存。
        版本行:

            # Created by /usr/bin/gtk-query-immodules-2.0 from gtk+-2.24.33

        已找到 gtk `2.24.33` 的 fcitx5 输入法模块。

            "/usr/lib/gtk-2.0/2.10.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:*" 

    2.  gtk 3:

        在 `/usr/lib/gtk-3.0/3.0.0/immodules.cache` 找到了 gtk `3.24.41` 的输入法模块缓存。
        版本行:

            # Created by /usr/bin/gtk-query-immodules-3.0 from gtk+-3.24.41

        已找到 gtk `3.24.41` 的 fcitx5 输入法模块。

            "/usr/lib/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:*" 

        在 `/usr/lib32/gtk-3.0/3.0.0/immodules.cache` 找到了 gtk `3.24.41` 的输入法模块缓存。
        版本行:

            # Created by /usr/bin/gtk-query-immodules-3.0-32 from gtk+-3.24.41

        **无法输入法模块缓存 `/usr/lib32/gtk-3.0/3.0.0/immodules.cache` 中找到 fcitx5**

4.  Gtk 输入法模块文件:

    1.  gtk 2:

        找到的全部 Gtk 2 输入法模块文件均存在。

    2.  gtk 3:

        找到的全部 Gtk 3 输入法模块文件均存在。

    3.  gtk 4:

        找到的全部 Gtk 4 输入法模块文件均存在。

# 配置:
## Fcitx 插件:
1.  插件配置文件目录:

    找到了 fcitx5 的插件配置目录:`/usr/share/fcitx5/addon`。

2.  插件列表:

    1.  找到了 29 个已启用的插件:

            Simplified and Traditional Chinese Translation 5.1.4
            Classic User Interface 5.1.8
            Clipboard 5.1.8
            Cloud Pinyin 5.1.4
            DBus 5.1.8
            DBus Frontend 5.1.8
            Emoji 5.1.8
            Fcitx4 Frontend 5.1.8
            Full width character 5.1.4
            IBus Frontend 5.1.8
            Lua IME API 5.0.12
            Input method selector 5.1.8
            Keyboard 5.1.8
            KDE Input Method Panel 5.1.8
            Lua Addon Loader 5.0.12
            Status Notifier 5.1.8
            Notification 5.1.8
            Pinyin 5.1.4
            Extra Pinyin functionality 5.1.4
            Punctuation 5.1.4
            Quick Phrase 5.1.8
            Rime 5.1.5
            Spell 5.1.8
            Table 5.1.4
            Unicode 5.1.8
            DBus Virtual Keyboard 5.1.8
            Wayland 5.1.8
            Wayland Input method frontend 5.1.8
            XCB 5.1.8

    2.  找到了 1 个被禁用的插件:

            X Input Method Frontend 5.1.8

3.  插件库: 

    所有插件所需的库都被找到。

4.  用户界面:

    找到了 3 个已启用的用户界面插件:

        Classic User Interface
        KDE Input Method Panel
        DBus Virtual Keyboard

## 输入法:
1.  `/home/mxhc/.config/fcitx5/profile`:

        [Groups/0]
        # Group Name
        Name=Default
        # Layout
        Default Layout=us
        # Default Input Method
        DefaultIM=rime

        [Groups/0/Items/0]
        # Name
        Name=keyboard-us
        # Layout
        Layout=

        [Groups/0/Items/1]
        # Name
        Name=rime
        # Layout
        Layout=

        [Groups/0/Items/2]
        # Name
        Name=pinyin
        # Layout
        Layout=

        [GroupOrder]
        0=Default

# 日志:
1.  `date`:

        2024年 03月 14日 星期四 02:57:30 CST

2.  `/home/mxhc/.config/fcitx5/crash.log`:

    `/home/mxhc/.config/fcitx5/crash.log` 未找到.

居然凌晨三点了,还想早点睡的,啊啊啊啊!

最近编辑记录 lanfunoe (2024-03-14 03:02:35)

离线

#2 2024-03-14 19:50:16

syc666
会员
注册时间: 2023-06-04
帖子: 6

Re: idea 不能使用fcitx5输入中文

尝试安装AUR包: fcitx5-input-support
这个包可以帮你修改环境变量且便于管理

离线

#3 2024-03-14 23:12:06

lanfunoe
会员
注册时间: 2024-03-14
帖子: 5

Re: idea 不能使用fcitx5输入中文

syc666 说:

尝试安装AUR包: fcitx5-input-support
这个包可以帮你修改环境变量且便于管理

离线

#4 2024-03-15 02:33:14

lanfunoe
会员
注册时间: 2024-03-14
帖子: 5

Re: idea 不能使用fcitx5输入中文

还是不行啊,麻烦了

离线

#5 2024-03-15 07:20:13

Bryan2333
会员
注册时间: 2023-01-19
帖子: 104

Re: idea 不能使用fcitx5输入中文

你试一下去设置虚拟键盘为Fcitx5 https://sm.ms/image/HOqPRrghjd14Sf3

离线

#6 2024-03-15 12:49:54

lanfunoe
会员
注册时间: 2024-03-14
帖子: 5

Re: idea 不能使用fcitx5输入中文

Bryan2333 说:

你试一下去设置虚拟键盘为Fcitx5 https://sm.ms/image/HOqPRrghjd14Sf3

我一直是wayland,所以这个一开始就弄了

离线

#7 2024-03-15 18:23:44

Bryan2333
会员
注册时间: 2023-01-19
帖子: 104

Re: idea 不能使用fcitx5输入中文

这样啊,你要不试试用回原版的JBR,输入框位置不正确那个问题已经被修复了。

离线

#8 2024-03-15 19:57:14

lanfunoe
会员
注册时间: 2024-03-14
帖子: 5

Re: idea 不能使用fcitx5输入中文

Bryan2333 说:

这样啊,你要不试试用回原版的JBR,输入框位置不正确那个问题已经被修复了。

谢谢你,但是我是因为原版不行才弄的那个,而且
阴差阳错下找到解决方法了,我直接用jetbrains-toolbox重新装了一个,就能用了,而两个的区别就是我从aur弄的那个导入了我windos端的皮肤等配置文件,这个是默认的文件。我就不去复现了,太折腾了

离线

页脚