Category Archives: 日志
为什么Linux下的输入法如此Fxxk
这里不是用来讨论实际算法上的问题的,而是说明一些兼容性的问题。例如你想说输入法不够智能什么的还请不用期待了,这不是本文的关注对象。 先来说说安装问题,众所周知的,输入法安装之后,往往都会提到以下三个环境变量:XMODIFIERS,GTK_IM_MODULE,QT_IM_MODULE。这三个货都是干什么的?为什么要设置这三个货?为什么Linux输入法用起来这么不方便? 这就得从头说起。 首先是XIM协议。更加详细的说明请参考这里:http://www.ibm.com/developerworks/cn/linux/i18n/xim/xim-2/index.html 所有的X程序都应当可以采用XIM作为输入法的协议,这和Qt还是GTK没有关系(X上的Qt和GTK,当然和Windows上的就没什么关系了)。这个协议简单说来就是会把按键事件先交给XIM Server,XIM Server做对应的处理,然后按照处理结果,将输入结果或者按键再交给对应的应用程序。 这里就要提到XMODIFIERS这个东西了,一般来讲,都会设置成@im=xim server name这个值。也就是说,如果XIM Server有多个,那么你可以根据这个变量来指定某个程序是使用这个XIM Server或者哪个XIM Server。这也就是比如fcitx为什么运行两个的时候会提示有同名的XIM Server在运行,是的,这个名称不可重复。 但是Qt和GTK其实都不喜欢这个东西,因为如果需要跨平台的话,这个XServer Only的东西其实说起来并不是那么好使。于是就出现了IM Module这个东西。这个是什么呢?那就是用来处理IM信息的模块,原则上来说替代了XIM的协议,使得按键信息实际上是交给这个模块,然后再交给IM Server(注意已经不是XIM了)。那么如何支持原来的XIM呢?于是Qt和GTK实际上都自带了一个IM Module,这个module负责将它收到的再通过XIM协议和XIM Server通信。 看起来一切都非常美好?我们来说几个常见问题。 1、光标跟随 这个问题不能怪任何一个输入法,事实上由于IM Server负责显示输入框,光标的位置是由应用程序告诉我们的。它不告诉我们输入框在哪,自然也就不能光标跟随。 2、BackSpace按键删除的不是候选输入的文字 例如pidgin的状态吧,大致上,因为这里pidgin为了用户体验,设计了一个键盘的图标,按键时就会让这个图标变化,于是它需要抓取键盘按键,不幸的是它把BackSpace抓走了,于是输入法没有收到BackSpace键,那么自然也不会做应该做的事情。 3、非纯粹的GTK和Qt程序下的问题 比如Firefox,Flash,OpenOffice,Opera。他们在im module上面又包了一层,又或者是自己处理,于是就会出现更加奇妙的问题。 4、非CJK Locale无法输入 我们来看看gtk-query-immodules-2.0的执行结果,以scim和xim为例子,ibus搞了个workaround避过了这个问题。 “/usr/lib/gtk-2.0/immodules/im-scim.so” “scim” “SCIM Input Method” “scim” “/usr/share/locale” “ja:ko:zh” … Continue reading
我对发行版的印象
仅代表个人观点。 Archlinux:最爱。 Fedora:蓝帽子,包管理虽然速度有提升但是总是不让人放心。 Ubuntu:推荐给刚接触Linux的人用。 KUbuntu:最烂的KDE发行版,没有之一。 XUbuntu,Edubuntu,Lubuntu:马甲。 OpenSUSE:KDE友好的发行版,由于有obs源不是一般的混乱,经常搞不清楚每个源作用。包管理很慢,国内源似乎也略少。 Chakra:半路出家的家伙,pure KDE,以前的livecd bug不是一般的多。 Mandriva:大公司搞基的牺牲品,在KDE4还用类KDE3界面。 MagicLinux:nihui参与的发行版……升级会挂掉。 Debian:更新速度蜗牛一般的发行版,另外非常古板的家伙。 CentOS:给服务器用的。 Gentoo:不环保。 Slackware:和Arch冲在第一线的基友,包管理不如Arch友好。 LFS:和Gentoo一样不环保。 Mint:Ubuntu非官方马甲。
Amarok vs mysql 5.5.8 之二
事实上是杯具的mysql 5.5.8,相关bug是这个:https://bugs.kde.org/show_bug.cgi?id=252424 根据其中的回复,fedora已经放出了patch,事实上这个patch也异常简单。 我已经重新make了mysql 5.5.8,现在看来工作正常。 mysql相关的bug是这个:http://bugs.mysql.com/bug.php?id=59280 PKGBUILD的下载地址在这里:http://csslayer-aur-repo.googlecode.com/files/mysql-5.5.8-6.src.tar.gz =-=-=-=-=Powered by Blogilo
追漫笔记-4
1、向死神许下的最后愿望 随时会黑化的温暖人心的小品。总觉得作者原来是不是画bi——漫的。虽然有点斗智,但又不完全,总之概括起来就是万能黑化少年(女?参见最新一话)大冒险。虽然同时又散发出浓重的后宫气息(死神都是妹子……怎么搞的。)。幸好妹控主角没有向人渣化发展。不过既然成为了死神,就这样,能和自己的妹妹一直生活下去的话,也不错吧? 剧情上也是刚刚进入正轨的样子,似乎一个巨大的阴谋刚刚显现出来。期待着下一步发展。 2、机巧童子ULTIMO 武井这家伙画的东西半燃不燃,半深沉不深沉,还时时刻刻散发出一股让人感觉可能要坑掉的感觉……总之这部似乎是和蜘蛛侠作者合作的?一个猥琐老头有一天想知道世界上究竟是善强大还是恶强大,于是蛋疼的造出无可比拟的机巧童子,不知为何,这样的大战似乎一直跟随着转世而到达了现代。目前世界已经轮回了第一周,百机回向,世界必然终结的命运将如何避免。 现在也仅仅算是铺开了一点点世界观,剧情的下一个小高潮马上就要来到。不过实在难以想象下一步剧情的发展如何,所以说呢,还是静观其变吧。千万不要向漫无止境的八月致敬就好。 3、重金属摇滚双面人 早先在Acgtalk看过介绍,不知道为什么最近突然间频频出现在视野当中,无论是改编的电影,新出的中文单行本,又或者是早就完结的动画。 这是一个关于梦想的故事。主角身上存在着巨大矛盾,想要实现自己的梦想,而实际上现实却又遥不可及,一次次的带给他打击。社长大概才是真正的伯乐吧。这两天顺便看了下电影版,作为一部电影,必须要有个结局的,最终选择了和动画一样的和Jack的对战作为结束,主角崇一也终于明白了自己新的存在的意义。漫画实际上应该已经完结了,不过中文版还只到第九卷的样子,于是最后的悬念还是不要剧透给我……