您尚未登录。

#1 2013-10-20 23:22:41

ArchFish
会员
注册时间: 2013-10-20
帖子: 30

[已放弃]cinnamon2下fcitx不能切换输入法

10月23日更新:
安装了gnome桌面还是不能切换输入法,果断重装系统.现在我在gnome下编辑的帖子.
目测cinnamon卸载后还是有些东西没清理干净,影响了后来的gnome.
结论是: cinnamon还是太年轻!等输入法问题解决再尝试吧.

我测试了gedit  chromium  和 终端 没有一个可以正常切换的,以下是我的一些配置和检测结果。
我的fcitx版本是 4.2.8.3。已经添加了几个输入法,但是不能切换,系统已经更新到最新。
我用的显示管理工具是lightdm,桌面环境是cinnamon 2 这是我的配置

#!/bin/sh
#
# ~/.xinitrc
#
# Executed by startx (run your window manager from here)

if [ -d /etc/X11/xinit/xinitrc.d ]; then
  for f in /etc/X11/xinit/xinitrc.d/*; do
    [ -x "$f" ] && . "$f"
  done
  unset f
fi

# exec gnome-session
# exec startkde
# exec startxfce4
# ...or the Window Manager of your choice
export LANG=zh_CN.UTF-8
export LC_ALL="zh_CN.UTF-8"
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"

exec cinnamon-session

下面是fcitx的检测信息:

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

        Linux Arch 3.11.5-1-ARCH #1 SMP PREEMPT Mon Oct 14 08:31:43 CEST 2013 x86_64 GNU/Linux

2.  `lsb_release`:

    `lsb_release` 未找到.

3.  `/etc/lsb-release`:

    `/etc/lsb-release` 未找到.

4.  `/etc/os-release`:

        NAME="Arch Linux"
        ID=arch
        PRETTY_NAME="Arch Linux"
        ANSI_COLOR="0;36"
        HOME_URL="https://www.archlinux.org/"
        SUPPORT_URL="https://bbs.archlinux.org/"
        BUG_REPORT_URL="https://bugs.archlinux.org/"

5.  桌面环境:

    桌面环境为 `gnome3`。

# 环境:
1.  DISPLAY:

        DISPLAY=':0'

2.  键盘布局:

    1.  `setxkbmap`:

            xkb_keymap {
                xkb_keycodes  { include "evdev+aliases(qwerty)"    };
                xkb_types     { include "complete"    };
                xkb_compat    { include "complete"    };
                xkb_symbols   { include "pc+cn+us:2+inet(evdev)"    };
                xkb_geometry  { include "pc(pc104)"    };
            };

    2.  `xprop`:

        `xprop` 未找到.

3.  Locale:

    1.  全部可用 locale:

            C
            en_US.utf8
            POSIX
            zh_CN.gbk
            zh_CN.utf8

    2.  当前 locale:

            LANG=zh_CN.utf8
            LC_CTYPE="zh_CN.utf8"
            LC_NUMERIC="zh_CN.utf8"
            LC_TIME="zh_CN.utf8"
            LC_COLLATE="zh_CN.utf8"
            LC_MONETARY="zh_CN.utf8"
            LC_MESSAGES="zh_CN.utf8"
            LC_PAPER="zh_CN.utf8"
            LC_NAME="zh_CN.utf8"
            LC_ADDRESS="zh_CN.utf8"
            LC_TELEPHONE="zh_CN.utf8"
            LC_MEASUREMENT="zh_CN.utf8"
            LC_IDENTIFICATION="zh_CN.utf8"
            LC_ALL=

4.  Current user:

    The script is run as wei (1000).

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

    在 `/usr/bin/fcitx` 找到了 fcitx.

2.  版本:

    Fcitx 版本: `4.2.8.3`

3.  进程:

    找到了 2 个 fcitx 进程:

        19833 fcitx
        19856 fcitx-dbus-watc

4.  `fcitx-remote`:

    `fcitx-remote` 工作正常.

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

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

2.  用于 GTK+-2.0 的配置界面:

    在 `/usr/bin/fcitx-config-gtk` 找到了 `fcitx-config-gtk`。

3.  用于 GTK+-3.0 的配置界面:

    在 `/usr/bin/fcitx-config-gtk3` 找到了 `fcitx-config-gtk3`。

4.  KDE 的配置界面:

    **`kcmshell4` 未找到.**

# 前端设置:
## Xim:
1.  `${XMODIFIERS}`:

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

2.  根窗口上的 XIM_SERVERS:

    **`xprop` 未找到.**

## Qt:
1.  `${QT_IM_MODULE}`:

    环境变量 QT_IM_MODULE 已经正确地设为了 "fcitx".

2.  Qt 输入法模块文件:
    找到了 fcitx 的 qt 模块: `/usr/lib/fcitx/qt/libfcitx-quickphrase-editor.so`.
    找到了 Qt4 的输入法模块: `/usr/lib/qt4/plugins/inputmethods/qtim-fcitx.so`.
    Qt5**无法找到 ${1} 的 fcitx 输入法模块.**

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

    环境变量 GTK_IM_MODULE 已经正确地设为了 "fcitx".

2.  `gtk-query-immodules`:

    1.  gtk 2:

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

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

        已找到 gtk `2.24.22` 的 fcitx 输入法模块.

            "/usr/lib/gtk-2.0/2.10.0/immodules/im-fcitx.so"
            "fcitx" "Fcitx (Flexible Input Method Framework)" "fcitx" "/usr/share/locale" "ja:ko:zh:*"

    2.  gtk 3:

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

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

        已找到 gtk `3.10.2` 的 fcitx 输入法模块.

            "/usr/lib/gtk-3.0/3.0.0/immodules/im-fcitx.so"
            "fcitx" "Fcitx (Flexible Input Method Framework)" "fcitx" "/usr/share/locale" "ja:ko:zh:*"

3.  Gtk 输入法模块缓存:

    1.  gtk 2:

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

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

        已找到 gtk `2.24.22` 的 fcitx 输入法模块.

            "/usr/lib/gtk-2.0/2.10.0/immodules/im-fcitx.so"
            "fcitx" "Fcitx (Flexible Input Method Framework)" "fcitx" "/usr/share/locale" "ja:ko:zh:*"

        在 `/etc/gtk-2.0/gtk.immodules` 找到了 gtk `2.24.22` 的输入法模块缓存.
        版本行:

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

        **无法输入法模块缓存 `/etc/gtk-2.0/gtk.immodules` 中找到 fcitx**

    2.  gtk 3:

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

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

        已找到 gtk `3.10.2` 的 fcitx 输入法模块.

            "/usr/lib/gtk-3.0/3.0.0/immodules/im-fcitx.so"
            "fcitx" "Fcitx (Flexible Input Method Framework)" "fcitx" "/usr/share/locale" "ja:ko:zh:*"

4.  Gtk 输入法模块文件:

    1.  gtk 2:

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

    2.  gtk 3:

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

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

    找到了 fcitx 插件配置目录: `/usr/share/fcitx/addon`.

2.  插件列表:

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

            fcitx-autoeng
            fcitx-chttrans
            fcitx-classic-ui
            fcitx-clipboard
            fcitx-dbus
            fcitx-freedesktop-notify
            fcitx-fullwidth-char
            fcitx-imselector
            fcitx-ipc
            fcitx-keyboard
            fcitx-kimpanel-ui
            fcitx-notificationitem
            fcitx-pinyin
            fcitx-pinyin-enhance
            fcitx-punc
            fcitx-quickphrase
            fcitx-remote
            fcitx-spell
            fcitx-table
            fcitx-unicode
            fcitx-vk
            fcitx-x11
            fcitx-xim
            fcitx-xkb
            fcitx-xkbdbus

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

            fcitx-qw

3.  Addon Libraries:

    All libraries for all addons are found.

4.  用户界面:

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

        fcitx-classic-ui
        fcitx-kimpanel-ui

## 输入法:
1.  找到了 5 个启用的输入法:

        fcitx-keyboard-cn
        pinyin
        shuangpin
        wubi
        wbpy

2.  默认输入法:

    您已经正确的将一个键盘输入法 "fcitx-keyboard-cn" 设为默认.

# 日志:
1.  `date`:

        2013年 10月 20日 星期日 22:56:19 CST

2.  `~/.config/fcitx/log/`:

        总用量 0

3.  `~/.config/fcitx/log/crash.log`:

    `~/.config/fcitx/log/crash.log` 未找到.


论坛里的相关帖子我都看过了 没有找到解决办法。

最近编辑记录 ArchFish (2013-10-22 23:45:07)

离线

#2 2013-10-20 23:42:55

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,917
个人网站

Re: [已放弃]cinnamon2下fcitx不能切换输入法

「终端」是哪个终端?GTK 2 的吗?
重装 fcitx 试试。GTK 2 的输入法缓存有问题。

离线

#3 2013-10-20 23:55:44

ArchFish
会员
注册时间: 2013-10-20
帖子: 30

Re: [已放弃]cinnamon2下fcitx不能切换输入法

呼呼,你也是夜猫子!
终端是gnome-terminal,GTK2的包是我用yaourt装的,有警告。如果不装会提示GTK2的什么找不到。
另外我重装过fcitx了,问题依旧。我还试过ibus,也是不能切换输入法或者说根本不能用。
cinnamon的资料有点少啊 T_T

百合仙子 说:

「终端」是哪个终端?GTK 2 的吗?
重装 fcitx 试试。GTK 2 的输入法缓存有问题。

离线

#4 2013-10-21 00:01:36

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,917
个人网站

Re: [已放弃]cinnamon2下fcitx不能切换输入法

ArchFish 说:

呼呼,你也是夜猫子!
终端是gnome-terminal,GTK2的包是我用yaourt装的,有警告。如果不装会提示GTK2的什么找不到。
另外我重装过fcitx了,问题依旧。我还试过ibus,也是不能切换输入法或者说根本不能用。
cinnamon的资料有点少啊 T_T

百合仙子 说:

「终端」是哪个终端?GTK 2 的吗?
重装 fcitx 试试。GTK 2 的输入法缓存有问题。

喵呜~
有什么警告?为什么要用 yaourt 装呢?

离线

#5 2013-10-21 00:10:44

ArchFish
会员
注册时间: 2013-10-20
帖子: 30

Re: [已放弃]cinnamon2下fcitx不能切换输入法

其实我也是想试试看是不是因为gtk2这个模块的问题,在pacman的库里是没有fcitx-configtool-gtk2 的。之前的一次我没装这个东西 然后
2.  用于 GTK+-2.0 的配置界面:
    在 `/usr/bin/fcitx-config-gtk` 找到了 `fcitx-config-gtk`
这里提示找不到,依旧没法使用fcitx输入中文。

我在纠结到底是X64的问题还是cinnamon的问题,我虚拟机里的arch是32位+xfec4+slim的,fcitx完全正常。

百合仙子 说:
ArchFish 说:

呼呼,你也是夜猫子!
终端是gnome-terminal,GTK2的包是我用yaourt装的,有警告。如果不装会提示GTK2的什么找不到。
另外我重装过fcitx了,问题依旧。我还试过ibus,也是不能切换输入法或者说根本不能用。
cinnamon的资料有点少啊 T_T

百合仙子 说:

「终端」是哪个终端?GTK 2 的吗?
重装 fcitx 试试。GTK 2 的输入法缓存有问题。

喵呜~
有什么警告?为什么要用 yaourt 装呢?

离线

#6 2013-10-21 00:14:41

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,917
个人网站

Re: [已放弃]cinnamon2下fcitx不能切换输入法

fcitx-configtool-gtk2 是配置工具。你有一个配置工具就可以了。

离线

#7 2013-10-21 00:17:25

ArchFish
会员
注册时间: 2013-10-20
帖子: 30

Re: [已放弃]cinnamon2下fcitx不能切换输入法

百合仙子 说:
ArchFish 说:

呼呼,你也是夜猫子!
终端是gnome-terminal,GTK2的包是我用yaourt装的,有警告。如果不装会提示GTK2的什么找不到。
另外我重装过fcitx了,问题依旧。我还试过ibus,也是不能切换输入法或者说根本不能用。
cinnamon的资料有点少啊 T_T

百合仙子 说:

「终端」是哪个终端?GTK 2 的吗?
重装 fcitx 试试。GTK 2 的输入法缓存有问题。

喵呜~
有什么警告?为什么要用 yaourt 装呢?

我在虚拟机里执行了一下,警告信息:
This package is orphaned(unsupported package: potentially dangerous!)

离线

#8 2013-10-21 00:20:02

ArchFish
会员
注册时间: 2013-10-20
帖子: 30

Re: [已放弃]cinnamon2下fcitx不能切换输入法

百合仙子 说:

fcitx-configtool-gtk2 是配置工具。你有一个配置工具就可以了。

嗯,现在可以排除是这个问题了,但是搞不清为啥会这样。

今天先这样咯,发现什么问题就告诉我,明天我再弄。

睡了

离线

#9 2013-10-21 22:47:42

ArchFish
会员
注册时间: 2013-10-20
帖子: 30

Re: [已放弃]cinnamon2下fcitx不能切换输入法

@百合仙子 问题找到了,但是没法子解决。
我今天一怒之下把cinnamon卸载了,安装了xfce4,display manager换成了slim。然后你见到我现在在ARCH 下发表回复了。
然后我又把cinnamon安装上了(不甘心啊T_T!!!),然后的然后fcitx又用不了了(xfce4)。然后我又怒敲入  pacman -Rc ibus  注销后我就上来发泄了。

话说有人知道怎么编译cinnamon么?我想自己编译,听说gnome能加参数去掉ibus依赖,所以嘛~~嘿嘿

离线

#10 2013-10-21 23:01:14

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,917
个人网站

Re: [已放弃]cinnamon2下fcitx不能切换输入法

ArchFish 说:

@百合仙子 问题找到了,但是没法子解决。
我今天一怒之下把cinnamon卸载了,安装了xfce4,display manager换成了slim。然后你见到我现在在ARCH 下发表回复了。
然后我又把cinnamon安装上了(不甘心啊T_T!!!),然后的然后fcitx又用不了了(xfce4)。然后我又怒敲入  pacman -Rc ibus  注销后我就上来发泄了。

话说有人知道怎么编译cinnamon么?我想自己编译,听说gnome能加参数去掉ibus依赖,所以嘛~~嘿嘿

是因为 GNOME 的 ibus 的原因么?
gsettings set org.gnome.settings-daemon.plugins.keyboard active false
这个有效么?

编译的话,可以自己修改官方的 PKGBUILD。

离线

#11 2013-10-21 23:21:10

ArchFish
会员
注册时间: 2013-10-20
帖子: 30

Re: [已放弃]cinnamon2下fcitx不能切换输入法

百合仙子 说:
ArchFish 说:

@百合仙子 问题找到了,但是没法子解决。
我今天一怒之下把cinnamon卸载了,安装了xfce4,display manager换成了slim。然后你见到我现在在ARCH 下发表回复了。
然后我又把cinnamon安装上了(不甘心啊T_T!!!),然后的然后fcitx又用不了了(xfce4)。然后我又怒敲入  pacman -Rc ibus  注销后我就上来发泄了。

话说有人知道怎么编译cinnamon么?我想自己编译,听说gnome能加参数去掉ibus依赖,所以嘛~~嘿嘿

是因为 GNOME 的 ibus 的原因么?
gsettings set org.gnome.settings-daemon.plugins.keyboard active false
这个有效么?

编译的话,可以自己修改官方的 PKGBUILD。


那个命令是无效的,我专门打开配置认真找了,gnome下只有几个项,不含gnome.settings-daemon。
cinnamon选项下的settings-daemon也木有找到ibus相关选项。

有没有什么资料可以参考?我没试过去修改源文件的内容。gnome的找到一些参考资料 cinnamon的多一丁点资料都没有了。

我刚才去github上提交bug了,但是那蹩脚的英语也不知道他们能不能看懂。

PS :试了在linux mint live  cinnamon桌面里装fcitx,依旧是无法切换,没辙了。

离线

#12 2013-10-21 23:23:31

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,917
个人网站

Re: [已放弃]cinnamon2下fcitx不能切换输入法

实在不行就不用 Cinnamon 算啦……

离线

#13 2013-10-21 23:28:54

ArchFish
会员
注册时间: 2013-10-20
帖子: 30

Re: [已放弃]cinnamon2下fcitx不能切换输入法

百合仙子 说:

实在不行就不用 Cinnamon 算啦……

蛋疼,xfce4的界面怎么看都是太粗糙了,gnome3设计又太反人类,KDE不喜欢,其他的不知道了。

介绍个稍微华丽的桌面环境呗:P

离线

#14 2013-10-21 23:36:52

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,917
个人网站

Re: [已放弃]cinnamon2下fcitx不能切换输入法

ArchFish 说:
百合仙子 说:

实在不行就不用 Cinnamon 算啦……

蛋疼,xfce4的界面怎么看都是太粗糙了,gnome3设计又太反人类,KDE不喜欢,其他的不知道了。

介绍个稍微华丽的桌面环境呗:P

呃,我是 awesome 用户……

离线

#15 2013-10-21 23:53:52

ArchFish
会员
注册时间: 2013-10-20
帖子: 30

Re: [已放弃]cinnamon2下fcitx不能切换输入法

百合仙子 说:
ArchFish 说:
百合仙子 说:

实在不行就不用 Cinnamon 算啦……

蛋疼,xfce4的界面怎么看都是太粗糙了,gnome3设计又太反人类,KDE不喜欢,其他的不知道了。

介绍个稍微华丽的桌面环境呗:P

呃,我是 awesome 用户……

稍微看了一下介绍和截图效果,属于实用型,在多显示器下表现好像也不错。虚拟机跑一个试试 3Q

离线

页脚