GVIM 无法输入中文

148 views
Skip to first unread message

YANG Yang

unread,
Jan 4, 2013, 8:22:56 PM1/4/13
to archlinux-cn
我的环境是 xfce4,gvim平时可以正常安装和使用插件,只有中文不能输入(fcitx-rime 输入法)。具体表现为:在 gvim 中可以调出输入法,但是开始打字的时候会自动关闭输入法,切换为英文状态。


Regards,
YANG Yang

Yichao Yu

unread,
Jan 4, 2013, 10:18:34 PM1/4/13
to archli...@googlegroups.com


On Friday, January 4, 2013 8:22:56 PM UTC-5, 杨扬 wrote:
我的环境是 xfce4,gvim平时可以正常安装和使用插件,只有中文不能输入(fcitx-rime 输入法)。具体表现为:在 gvim 中可以调出输入法,但是开始打字的时候会自动关闭输入法,切换为英文状态。

用了仙子的 fcitx.vim 么?.....

然后"具体表现"...... 什么叫"可以调出输入法", 托盘图标变化的意思?.....


 


Regards,
YANG Yang

YANG Yang

unread,
Jan 4, 2013, 11:02:41 PM1/4/13
to archlinux-cn
在 2013年1月5日上午11:18,Yichao Yu <yyc...@gmail.com>写道:


On Friday, January 4, 2013 8:22:56 PM UTC-5, 杨扬 wrote:
我的环境是 xfce4,gvim平时可以正常安装和使用插件,只有中文不能输入(fcitx-rime 输入法)。具体表现为:在 gvim 中可以调出输入法,但是开始打字的时候会自动关闭输入法,切换为英文状态。

用了仙子的 fcitx.vim 么?.....

 
然后"具体表现"...... 什么叫"可以调出输入法", 托盘图标变化的意思?.....


 
对,托盘图标会变,但是输入了字母之后输入法会关闭。
 


Regards,
YANG Yang

--
您收到此邮件是因为您订阅了 Google 网上论坛的“Arch Linux中文邮件组”论坛。
要在网络上查看此讨论,请访问 https://groups.google.com/d/msg/archlinux-cn/-/pjSMgclatvwJ
要向此网上论坛发帖,请发送电子邮件至 archli...@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 archlinux-cn...@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/archlinux-cn?hl=zh-CN 访问此网上论坛。






Regards,
YANG Yang

Bill Chen (CHEN, Zhechuan)

unread,
Jan 4, 2013, 11:20:31 PM1/4/13
to archli...@googlegroups.com
这个插件在gvim下有各种问题。
我的问题是,不会自动关闭。我已经给邮件仙子,并配合他来做测试了。

Best Regards,
Bill Chen (CHEN, Zhechuan)


2013/1/5 YANG Yang <kor...@gmail.com>:

YANG Yang

unread,
Jan 4, 2013, 11:41:47 PM1/4/13
to archlinux-cn
应该不是插件的问题。刚才我禁用了这个插件,问题依旧。



Regards,
YANG Yang

Bill Chen (CHEN, Zhechuan)

unread,
Jan 4, 2013, 11:44:08 PM1/4/13
to archli...@googlegroups.com
二分法注释检查下自己的配置文件,看看是那里出问题了先。。。

Yichao Yu

unread,
Jan 4, 2013, 11:48:05 PM1/4/13
to archli...@googlegroups.com
2013/1/4 YANG Yang <kor...@gmail.com>:
> 应该不是插件的问题。刚才我禁用了这个插件,问题依旧。

之前遇到过gvim乱建ic的问题.... 你可以试试在重复出现这个问题几次的之前和之后分别看一下

qdbus org.fcitx.Fcitx-0 | wc

qdbus --address $(fcitx-remote -a) org.fcitx.Fcitx-0 | wc
的输出.......

YANG Yang

unread,
Jan 5, 2013, 12:09:42 AM1/5/13
to archlinux-cn
在 2013年1月5日下午12:48,Yichao Yu <yyc...@gmail.com>写道:
qdbus --address $(fcitx-remote -a) org.fcitx.Fcitx-0 | wc

这个是正常时候的: 
[hiro@Asurada ~]$ qdbus org.fcitx.Fcitx-0 | wc
      4       4      35
[hiro@Asurada ~]$ qdbus --address $(fcitx-remote -a) org.fcitx.Fcitx-0 | wc
    147     147    2535

这个是问题的时候的:
[hiro@Asurada ~]$ qdbus org.fcitx.Fcitx-0 | wc
      4       4      35
[hiro@Asurada ~]$ qdbus --address $(fcitx-remote -a) org.fcitx.Fcitx-0 | wc
    150     150    2589

依云

unread,
Jan 5, 2013, 12:11:09 AM1/5/13
to archli...@googlegroups.com
杨扬,你的 fcitx 版本是多少?fcitx 开启了预编辑模式没?
我依稀记得我也遇到过这种情况,现在不能重现了。

On Sat, Jan 05, 2013 at 12:20:31PM +0800, Bill Chen (CHEN, Zhechuan) wrote:
> 这个插件在gvim下有各种问题。
> 我的问题是,不会自动关闭。我已经给邮件仙子,并配合他来做测试了。

这个我还没头绪 :-(

--
Best regards,
lilydjwg

Linux Vim Python 我的博客:
http://lilydjwg.is-programmer.com/
--
A: Because it obfuscates the reading.
Q: Why is top posting so bad?

Yichao Yu

unread,
Jan 5, 2013, 12:20:01 AM1/5/13
to archli...@googlegroups.com
2013/1/5 YANG Yang <kor...@gmail.com>:

其实我比较关心的是你出现问题几次以后这里的数字有没有增长 (比如说重现个十几次以后看看那些数字是不是单调的增长了....)

我当时是自己编译了一遍gvim就好了(我当时的直观现象是切换模式以后输入法状态就丢了.... 本来是想看看哪里出的问题,
鬼知道为啥就好了....)... 需要的话可以试试..

另外一个可以看看是不是因为状态被重置了的方法是把默认设成输入法开启..... 如果是这个问题的话应该会在vim里面开始输入就进入中文状态........

(总之如果fcitx.vim禁用了也有问题 + fcitx在其他程序里面没出问题应该就是vim的问题了......)

P.S. 虽然我不晓得会不会有帮助, 可以用 `GTK_IM_MODULE=xim gvim` 启动gvim试试
(以排除是gtk的输入法模块出的问题..................)

Yichao Yu

unread,
Jan 5, 2013, 12:20:31 AM1/5/13
to archli...@googlegroups.com
2013/1/5 依云 <lily...@gmail.com>:

> 杨扬,你的 fcitx 版本是多少?fcitx 开启了预编辑模式没?

.... arch的话不是4.2.6.1就是git吧........

Bill Chen (CHEN, Zhechuan)

unread,
Jan 5, 2013, 12:37:18 AM1/5/13
to archli...@googlegroups.com
我今天测试了一下,如果是另外打开一个terminal,在里面输入 sleep N && fcitx-remote -c|o
来打开或者关闭输入法的话,gvim是有反应的,但使用你插件的python2版就有问题,我感觉是socket那部分封装起来有问题?~
我记得你好像有个早期版本是不用python直接用vim script来写的(不太确定)。如果纯粹用vim
script来写,执行相应的shell命令,相对于现在的python脚本,各有什么利弊呢?~

Best Regards,
Bill Chen (CHEN, Zhechuan)


2013/1/5 依云 <lily...@gmail.com>:


> On Sat, Jan 05, 2013 at 12:20:31PM +0800, Bill Chen (CHEN, Zhechuan) wrote:
>> 这个插件在gvim下有各种问题。
>> 我的问题是,不会自动关闭。我已经给邮件仙子,并配合他来做测试了。
>
> 这个我还没头绪 :-(
>
> --
> Best regards,
> lilydjwg
>
> Linux Vim Python 我的博客:
> http://lilydjwg.is-programmer.com/
> --
> A: Because it obfuscates the reading.
> Q: Why is top posting so bad?
>

YANG Yang

unread,
Jan 5, 2013, 12:39:09 AM1/5/13
to archlinux-cn
版本号是 4.2.6.1,这里有几个比较蹊跷的地方:

1. 我查到禁用了 delimitMate 这个插件以后可以正常输入中文

2. 在保持这个插件工作的情况下,`GTK_IM_MODULE=xim gvim` 或者按 `ctrl+alt+p` 关掉预编辑模式之后都可以正常输入中文。

3. 最后,现在已经正常了。在开启 delimitMate 的情况下,不需要关闭预编辑模式或者用`GTK_IM_MODULE=xim gvim`启动 gvim 都可以正常的输入中文了。(貌似用`GTK_IM_MODULE=xim gvim`启动一次过之后就正长了

以上测试的时候 fcitx.vim 都保持打开。




Regards,
YANG Yang

Bill Chen (CHEN, Zhechuan)

unread,
Jan 5, 2013, 12:42:35 AM1/5/13
to archli...@googlegroups.com
那就是要使用xim作为gvim的输入引擎才行吗?~
直接用fcitx作为gvim的输入引擎是有问题的?~
我一直用前面的那种方法,真的不清除。。。

Best Regards,
Bill Chen (CHEN, Zhechuan)


2013/1/5 YANG Yang <kor...@gmail.com>:

Yichao Yu

unread,
Jan 5, 2013, 12:48:14 AM1/5/13
to archli...@googlegroups.com
2013/1/5 Bill Chen (CHEN, Zhechuan) <chen.bi...@gmail.com>:
> 那就是要使用xim作为gvim的输入引擎才行吗?~

... 不是说了后来都没问题么.........................................................................................................................................

> 直接用fcitx作为gvim的输入引擎是有问题的?~

没.............................

依云

unread,
Jan 5, 2013, 1:09:53 AM1/5/13
to archli...@googlegroups.com
On Sat, Jan 05, 2013 at 01:39:09PM +0800, YANG Yang wrote:
> 版本号是 4.2.6.1,这里有几个比较蹊跷的地方:
>
> 1. 我查到禁用了 delimitMate <https://github.com/Raimondi/delimitMate>
> 这个插件以后可以正常输入中文
>
> 2. 在保持这个插件工作的情况下,`GTK_IM_MODULE=xim gvim` 或者按 `ctrl+alt+p`
> 关掉预编辑模式之后都可以正常输入中文。
>
> 3. 最后,现在已经正常了。在开启 delimitMate <https://github.com/Raimondi/delimitMate>
> 的情况下,不需要关闭预编辑模式或者用`GTK_IM_MODULE=xim gvim`启动 gvim
> 都可以正常的输入中文了。(貌似用`GTK_IM_MODULE=xim
> gvim`启动一次过之后就正长了)
>
> 以上测试的时候 fcitx.vim 都保持打开。

哦哦,想起来了。预编辑模式和某些插件存在冲突。这也是我不用预编辑模式的原
因。QuickPhrase 模式,在 Vimwiki 中输入第二个字母时输入会消失。我好像跟
csslayer 说过。

依云

unread,
Jan 5, 2013, 1:14:20 AM1/5/13
to archli...@googlegroups.com
On Sat, Jan 05, 2013 at 01:37:18PM +0800, Bill Chen (CHEN, Zhechuan) wrote:
> 我今天测试了一下,如果是另外打开一个terminal,在里面输入 sleep N && fcitx-remote -c|o
> 来打开或者关闭输入法的话,gvim是有反应的,但使用你插件的python2版就有问题,我感觉是socket那部分封装起来有问题?~
> 我记得你好像有个早期版本是不用python直接用vim script来写的(不太确定)。如果纯粹用vim
> script来写,执行相应的shell命令,相对于现在的python脚本,各有什么利弊呢?~

你把 fcitx.py 删掉就会使用那个纯 vimscript 的版本了。

vimscript 一是效率比较低,使用映射/宏时如果造成快速反复地进入/退出插入模
式可能出现问题(fcitx 3.6 时期很容易发现死锁,现在不清楚了)。二是由于
fcitx 启动方式的原因,fcitx-remote 可能会连接到错误的 socket 文件。
Python 版除了多了一些 socket 文件的判断,还支持通过环境变量指定 socket
文件(以连接到特定的 socket,比如转发到另外的主机上)。

Soar Tsui

unread,
Jul 6, 2013, 7:47:54 AM7/6/13
to archli...@googlegroups.com
请问怎么永久关闭预编辑

在 2013年1月5日星期六UTC+8下午2时09分53秒,依云写道:

依云

unread,
Jul 6, 2013, 8:26:48 AM7/6/13
to archli...@googlegroups.com
On Sat, Jul 06, 2013 at 04:47:54AM -0700, Soar Tsui wrote:
> 请问怎么永久关闭预编辑

你不要再开启就是了……

Soar Tsui

unread,
Jul 7, 2013, 6:11:09 AM7/7/13
to archli...@googlegroups.com
哦哦 我还以为重启了以后就会有呢

在 2013年7月6日星期六UTC+8下午8时26分48秒,依云写道:
Reply all
Reply to author
Forward
0 new messages