话说我的x230,装的是正版的win8,为啥还在用win8呢——因为我经常要处理.ai和.psd的文件,而虚拟机里面的windows的opengl都有些问题,photoshop使用上总是会有各种问题,所以始终还是要安装一个基本的windows。
然后,我被win8的输入法切换的问题,困扰了很久很久……不知道win8是怎么搞的,输入法总是自动切换到中文的输入状态,而且已经疯狂到了无法控制、无法调节的状态了。每当foucs in页面的输入框,或者浏览器的地址栏,他就疯狂的自动切换,我知道这些是人性化设置——但是有中文的url吗,真是混球一样的设置。
其次,咱程序员,最多用到的按键,估计就是shift了。但是市面目前全部的输入法,都是以shift键作为输入法本身的中/英切换的基本按键——这是谁家的发明呢?
而输入法的文字编码也是个老大头疼的问题,php storm 6自从更新后,在win8平台下,在任一行,如果不是用单引号(双引号也可以)包围文字,输入中文拼音的时候,会导致之后行的代码被删除……这个很万恶。我曾经坚持了好长的时间,早上用win8写代码(x230),然后回到家,用win7(家里的台式机)补注释,抓狂时,干脆直接写英文注释……真是被这个问题逼得快疯了。
好吧为了折腾这个输入法,我试了好些个输入法,微软输入法、百度输入法、腾讯输入法,这些全部都是打了鸡血的输入法,必须逐个提出严厉的批评。
微软输入法,微软骨子里的帝国思想还是没有改变,完全不支持自定制化。而且,始终觉得微软输入法的联想功能怎么那么卡呢(我的x230 i7版,16G内存,因为我长期有大量的窗口是不关闭的)?这个输入法好像做了好多年,怎么还这么失败呢?记得早年,每次装完office,都要手动去卸载掉这个输入法——同学,你要强推你的产品,我不介意试用,但你的产品可以成熟点吗?失败的产品,还要强行推向客户,你有病吗你?
百度输入法,其实认真的计较,上述的问题不算是百度输入法本身的问题,而且百度输入法的速度还不错,我用了很长的时间,包括家里的台式机(不过经过测试,被我发现他在win7下,也会自动切换,这个我坚决忍受不了,立刻坚决果断卸载了)
腾讯输入法,我下的是腾讯纯净版1.1,其实界面上,我蛮喜欢这个输入法,完全没有多余的东西,而且联想速度非常快——或者说他的联想模式比较符合我个人的输入习惯,让我打字的时候有飞一般的感觉。可惜的是,官网说针对win8解决了很多问题,可事实上这些问题根本没有改正。腾讯输入法的自动切换之频繁,简直到了令人发指的地步了,我在php storm中,打一个回车,尼玛输入法出来了,有时候随便按一下鼠标,输入法又来了,而且因为编码问题,导致你一开始输入代码,他的输入提示界面就出现了,然后后面行的代码就一点一点消失,不断要你切换回英文,然后狂按ctrl+z。而且我实在不明白,腾讯输入法,每次我重新安装,他就要把我win8的状态栏的IME指示给关闭了,而且是每次重启他都会自动关闭那里。我真不明白,这个状态栏指示挨着你输入法什么事情了?你一个输入法,你的联想速度快,很好,你管用户的IME指示是关闭还是显示呢?那是你这个软件的业务范围吗?
腾讯输入法还有一个问题,他的设置界面,是允许修改按shift键 or ctrl键 or 直接屏蔽掉来修改输入法的中/英状态的,不过这个设置是无效的,不管你怎么搞,按shift键都能切换语言……
好吧,各种折腾,弄得我各种抓狂、泪奔、崩溃……差点没气的要把笔记本砸了。互联网中关于这个问题,也没有很好的解决方案,唉……所以我几乎准备直接把正版的win8废了,直接奔ubuntu。
绝望中,试了一下google输入法,惊喜连连。他的shift / ctrl / 屏蔽,是有效的,而他自动切换的频率已经是算是四个输入法中最低的,而且最重要的是他不会导致php storm 6删除行。经过各种测试,我发现Google输入法是真的可以解决上述所有的问题。
经过我反复的倒腾,终于给我摸索出win8输入法设置的方案——
1. 将美国英语作为全局默认的IME状态。
2. 简体中文第二,只有一个google输入法。
只是语言切换的快捷键,从ctrl+shift => alt+shift,实际上就是直接切换IME的语言,这个方法十分有效。当进入英语的环境,点击所有的input、地址栏输入,都不再会自动切换输入法出来,这个问题算彻底解决了。而且由于写代码的时候是英语环境的,很多IDE的以前的功能,如ctrl+space,根本没法用的功能,现在都能用了。
不过话说,Google输入法的联想,真的有些弱爆了,和腾讯比起来,简直是幼儿园的水平。
可能有人问,为啥你不习惯一下用shift键呢?呃,也许是我个人的习惯问题,以前我曾经尝试改变过去ctrl+shift的习惯,而使用shift键,但是我发现,这个shift 或 ctrl,会让很多事情变得混乱——因为程序员似乎没法避免少使用这两个键,如Ctrl+c,你没法保证每次都是同步按下ctrl和c键(如果你是准确的同时按下shift+a或者ctrl+c,他是不会触发输入法切换的,但是很多时候我的习惯是先按下ctrl/shift,再去按具体的组合键)。使用ctrl+shift,我只要保证每次进入中文输入法时,按一次,退出输入法时,按一次,流程简单清晰。而shift键,很多时候,按下shift进入英文打字状态,然后打一个大写字符,就发现输入法又切换到中文状态了,然后就要不断重复的按shift键,导致每次打字,都要看看IME状态,到底是中文还是英文。
win8有很多创新——唉,但实用的没几个,这就是微软之前垄断desktop领域造成的后遗症,昨天种下的因,今天承受这个果。
事实上,虽然输入法的问题解决了,但是直接导致我对win8彻底的失望。事实上,刚买x230的时候,我也打算装Ubuntu的,但当时12.04的linux内核版本不支持Intel的hd4000的显卡。话说我之前的3台笔记本装linux,碰到过各种各样硬件不支持的问题,也是各种折腾、泪奔,所以我对待安装linux的态度是,最好能得到linux内核的原生支持,否则就算使用起来没问题,但是却会存在发热量过大的问题。12.04要解决这个问题,要更新新的内核,自己重新编译,其实以前帮朋友的x220装linux的时候我就折腾过这事。而12.10,在x230也有个别的小问题,包括wifi的驱动等。看看13.04能不能彻底兼容全部x230的硬件吧。
win8,我先忍着你。