ibus 1.4.0在gvim里的输入问题

ibus 1.4.0在gvim里有些问题。具体来说,启动gvim之后数秒内无法输入,之后控制台输出 (gvim:77687): IBUS-WARNING **: Process Key Event failed: Timeout was reached 这句话,之后在gvim里可以输入,但是用不了输入法。 根据研究貌似是gvim的问题,FreeBSD的vim还停留在7.3.121,而新的vim,例如7.3.315就没有问题。 这个问题的报告: http://code.google.com/p/ibus/issues/detail?id=1249 https://bugzilla.redhat.com/show_bug.cgi?id=673438 有个workaround是gvim -f,但是毕竟麻烦。 于是手工改了个vim 7.3.315的port,用着挺好…… 除了切输入法的时候会输入一个空格以外…… FreeBSD的vim留在7.3.121是有原因的。首先是7.3.122这个补丁打完之后无法编译。 其实7.3.122是说,不附带src/auto/config.mk,在顶级目录Makefile里加上自动复制src/config.mk.dist为这个文件…… 但是可能是BSD这边编译方法的问题,没有直接跑顶级Makefile,于是缺文件…… 其实自己复制过去就好了。 之后是7.3.225这个补丁打不上。貌似原因是patch数错行数了…… 或许是^M这些东西的关系。 解决方法是在test79.in和test79.ok最后加些只有”+”的行。加到正好数量对为止…… 反正这俩文件也没啥关系 于是现在用着vim 7.3.315,感觉很好…… ibus也没有问题……

更新ibus和ibus-pinyin的ports到1.4.0

其实早就该更新的…… 不过之前尝试了一下,觉得1.4.0不咋的,还有些问题,于是没管…… 结果终于有好心人搞了个1.4.0的patch,还群发邮件说各位基于ibus的ports的maintainer们,快更新吧! 他顺便还加上了GTK3支持的选项,看来大家都要渐渐向GTK3迁移了么…… 在那个patch的基础上,提了些修改,现在在等待commit…… 具体来说: * 貌似其实ibus不依赖Qt?为啥从前加上去了呢…… 于是去掉了 * 没有post-deinstall这个target的,应该在pkg-plist里用@unexec来执行卸载命令的…… 所以从前的ibus port删除之后,是不会更新gtk2的immodules列表的…… 这么多时间了也没人发现…… 为了这个,ibus-pinyin也更新到1.4.0。但是ibus-pinyin 1.4.0居然要编译器支持c++0x…… BSD的古老的gcc 4.2怎么行…… 于是就让port依赖gcc 4.4+,没办法…… 其实ibus-pinyin还有个替代选项是用boost,但是开了之后没法编译。虽说打个补丁应该可以,但是太麻烦…… 另一个好处是,现在就不依赖boost了…… 其他更改: * 不知道为啥,ibus-pinyin有个${DBTAR}在DISTFILES里,而这个东西没定义过…… 删了删了 * 去掉boost支持,反正依赖gcc 4.4+了…… * RUN_DEPENDS单独定义。这个是portlint说的,说BUILD_DEPENDS其实还有别的东西,不能直接赋给RUN_DEPENDS * 目前禁用lua扩展。反正也没人用…… * 加了俩选项,选择是否编译Android DB和OpenPhrase DB。貌似是俩词库,OpenPhrase 那个挺大…… * 加了选项是否依赖opencc进行简繁转换 ibus 1.4.0在gvim里有些问题,换篇文讲吧…… 于是就等待commit了~