(首先要说的是本文只针对网页设计者和Opera使用者而写,无关者请无视,不要主动弹出来喊“用什么浏览器的飘”,我会让你的留言一起飘到数据库地狱去。) 接下来谈谈店长这个小发现,自从Opera 9发布以来店长就一直被它奇怪的中文渲染所困扰,字体大小不一,比重也变化多端(见上图),无论使用页面CSS进行怎样的定义,始终没办法改变它的渲染行为。无奈之下只得放弃Opera,换用Firefox。如今FF早已经成为我的首选,但Opera的问题依旧困扰着我。 直到我发现了这个页面。 症状描述:Opera 9.x在使用简体中文的系统上(Windows和Linux)渲染中文字体时字符集选择错误,准确的说,是将简体中文用繁体字符集渲染。 影响范围:部分简体中文系统,平台不限;出现问题的页面编码为utf-8;Opera 9.2系列(当前稳定版本)均有可能出现此问题,9.5开发版我没有测试。 解决办法: 这里分为两个部分谈,首先说网页设计者怎样绕过这个问题。 之前提供的链接也解释了,Opera之所以会选择和CSS内设定font-family不同的字符集是因为国际化(i18n)的需求,浏览器在页面没有设定特定语言(lang属性,几乎可用在任何html元素上)的会自行决定字符集,这个决定无法通过CSS更改。 要让Opera分辨简体字和繁体字也简单,在html元素上添加lang属性即可,用"zh-hans"作为值,按照W3C说法这比zh_CN的更受认可;如果是XML文档可以顺便加入xml:lang="zh-hans",以免Opera的检查过于严格,两者都符合(X)HTML标准,可并存。 如果你只想页面上部分元素使用简体字渲染,也请参考之前的链接,里面有详细的HTML+CSS范例。 解决了设计者的困挠,用户又该如何让Opera正确渲染没有加入lang属性的页面呢? User Javascript,Opera很早就支持类似Firefox上Greasemonkey的自定义JS功能,它的设定在工具->首选项->高级->内容的栏目下,设定一个文件夹,Opera会读取里面所有的.js文件。我们只要写一个简单的JS来实现为没有lang属性的页面增加正确属性即可,以下实际代码。 // ==UserScript== // @include http://www.google.cn/* // ==/UserScript== document.addEventListener( ‘load’, function () { var lang = document.getElementsByTagName(“html”)[0].getAttribute(“lang”); if(!lang) { document.getElementsByTagName(“html”)[0].setAttribute(“lang”,”zh-hans”); } }, false ); 用过Greasemonkey的同学应该很熟悉这个设计了,我稍微解释一下,顶部注释部分负责限制代码运行的域名,在这里我限制了代码在google.com的域名下才运行(白名单)。 Opera提供了自设的几个强大的Event Listener,但这里我们只要用Javascript DOM的即可,默认设定是在页面读取完毕之后添加lang属性,也就是字体会在页面读取完毕后修正。肯定有更好的做法,但本人JS水平有限,想不到更快更准Fire的方式,有熟练者请赐教。另外input元素的中文字体无论使用哪种方式还是不变,不知道是不是bug,对与我这类开发者来说这已经不是问题了。 最后顺便一提,如果你要在HTTPS这种加密页面内用User Javascript(例如Google Reader),opera:config内User JavaScript on HTTPS的选项必须打开,默认是关闭的。 这样一来Opera 9.x在简体Windows上老难题也解决(大半)了,浏览器公国的再度恢复平静。其实Linux上也可用同样的伎俩,只不过它们有更快捷的办法——env lang=zh_CN。 更新:Opera:Config里Force Encoding也是非常重要的值,设置成AUTODETECT-ZH应该可以;店长的设置不知道为什么变成AUTODETECT-JP了,至此input元素的显示问题也解决。我建议有同样问题的旅客先检查你的Force Encoding和首选项里的字体设定(菜单中文显示可以通过设置字体为宋体解决),然后看查看栏目里的用户自定义风格是否无意中启动了(Opera可以覆盖页面CSS),最后再考虑用上诉的解决办法;网页开发者则可在页面里加入lang属性,方便浏览器更好的语言支持。 [...]

谈这种灾难不可能不涉及政治,更难不夹杂个人情感,我本希望避免谈类似的话题;但眼看着正规报道之外的无根据流言层出不穷,店长忍不住想为政府申辩。本人的能力仅限于捐助灾区,救人的工作现在只有前线战士能完成——至少让无为的我在网上多帮帮忙,也许你认为“表态”这种援助方式很冷血,但店长现在只有表态的能力。 店长和众多网民一样,常带着放大镜看中央领导人的发言。看新闻发言多了,就会明白避重就轻,官腔官调在我党是家常便饭。然而这次温总理的发言却给我完全不同的感受,尤其是他“同胞们,要冷静……同志们,你们辛苦了”那两句,仿佛是在压抑着自己身为高层却不能拯救人民的愧疚。说实话,这两句比那些“获得抗灾的全面胜利”有感染力多了。 但随着死亡人数的上升,有关政府部门失职的言论也开始在网上流传,仿佛1万人的死亡都变成了地震局的失误。仅仅因为没能正确预报地震,就要他们代替自然灾害背上谋财害命的罪行,说得过去么?我与这些奉行“强制责任制”的网民持不同观点,以下是我自己的分析。 我记得美国一家报纸在9.11发生5周年到纽约街头随机采访了数千人,问他们认为9.11事件是不是美国政府策划的战争阴谋,其中10%的人回答了“是”的选项。为什么会有这种阴谋论存在?该报纸的分析结论是“美国人无法接受本土被恐怖袭击的事实”,长期以来“领土安全”的光环被打破,许多人选择了逃避——相信阴谋论,只有美国政府才能整死美国人。 我觉得国内的“问责潮”和9.11阴谋论相仿,这么严重的死伤,已经完全超出大部分人的预测,想起年初造成更大经济损失的雪灾也和政府行动迟缓有关,又考虑到历史上政府的反应机制均偏慢,脑中的矛头逐渐摆正:政府失职和末日电影般的死伤数有关系!然而事实是什么?事实是就算我们立马剁了地震局那群人这地震也已经发生,而且毫无疑问今后还会发生,天气预报尚模棱两可,问责地震更加困难。 如果说中国在处理有关地震信息的方式上真有什么不足,我认为还是信息控制过于严格,上述的流言蜚语,只要我们允许多一点新闻自由度,也就不攻自破了。不过这是另一个话题了。 话说回来,1万多人死亡,而且数字是肯定还要翻倍,谁能轻易接受?没人,我宁愿天天听官腔也不愿在灾后听实话。这就是底线,如果我们的领导层连这点主次都不分,中国就不是中国了,应该叫缅甸二号;而这个地震也不该是汶川,应该是唐山。 于是就有了第二个讨论,中国应该主动向国际寻求援助。 汶川重灾区的公路绝大多数被破坏,没有地面车辆代步,加上天气恶劣影响空中支援,汶川地区的援救工作受阻。放在30年前,没有互联网,没有数十家电视台,信息流通量低,自然对援救工作的开展不清楚;如今的网络新闻更新极快,48小时已经是非常漫长的时间了,我们却连灾区都没摸遍,这自然会挑起信任危机。 是我们政府为了面子故意抵制援助吗?是我们政府为了增加民信故意打肿脸充胖子吗?店长看不到任何有充分根据的解释,无论是为了救人还是为了奥运,如果现在寻求国际援助能加快控制大局,政府一定会选择这种方式。这已经不是唐山的时代,即便是对政府非常“多质疑”的我也相信“国家安全”并非我们没主动寻求援助的主要缘由。 无论今后数日中国政府是否积极寻求援助,重灾区的工作人员依旧会是军人,如何在人类生存极限到来前尽可能救人是当务之急,我相信政府会在这个基础上做选择。 人容易在眼前的悲剧中陷入迷惘和绝望,请冷静,同胞们,就算你没办法为灾区做出什么贡献,也请至少给政府一点信任;任何政治因素都不能阻隔我们血管里流淌着的人性。 PS:捐款的地址在此略过,有心的话Google或打开电视就能看到。 祝愿各位旅客无恙,完。

Powerset今天正式公开他们的首款产品:通过分析自然语言结构返回更准确结果的搜索引擎。以Wikipedia和Freebase作为数据库,Powerset展示了它强大的文字分析能力。使用同样的搜索文字,它确实能返回比Google针对性更强的信息(就别提Wikipedia自己的垃圾搜索系统了)。 值得留意的是,Powerset搜索结果的黏性比Google大得多。换句话说,Google搜索是门,你找门号,开门,之后就没它什么事了;Powerset的搜索让用户持续停留在它的页面上,站在商家的角度看,这对投放广告和挽留客户是有百利而无一害,若融入类似Amazon/当当的购物推荐系统则可间接提高用户消费欲望,是很有前途的搜索系统。 但当前Powerset带来的好处则更加直接:看Wikipedia的内容又不需要代理了!Powerset界面的速度和功能都比Gollum好上数倍,绝对是不能上Wikipedia官网的用户的最佳伴侣。

店长的深夜收视指南:本周最佳娱乐片当属《红》的第六集,虽然画面是“神采飞扬至扭曲变形”,内容却完全跳出原作灰暗的主线故事。疯狂,太疯狂了,比上周的变装登塔者更多“莫名其妙的笑点”。顺便问个,原作有类似的桥段么?感觉用文字来描写本集的场景异常困难。 PS:内涵片突然没剧情真好,也不用担心错过什么剧情,光是看截图我就决定要下载来看了,果然物超所值。 另一方面,店长有追的两部动画之一图书馆战争则强差人意。只谈画质外貌《图》是无可挑剔,反观剧情灵魂,则未免太平淡了一点。我可以理解制作组在接连数集“枪林弹雨”之后想加点“支线剧情”缓和气氛,但本集的对白设计(数量过少,缺乏亮点)和剧情开展(过于写实,哭笑不得)已接近“无聊”的地步,若不是精美的画风在独力支撑,估计收视率会继续下挫。 PS:搞不清楚是原作刻意美化战争还是导演刻意回避现实。小田原的战斗从强度,战术乃至伤亡程度都和儿童读物里的正邪大战相仿,给店长这种年龄的人看实在不过瘾。难道深夜动画“废萌”的定义又扩展了?

花了大量时间在Computational Complexity里老牛拉车,一有空就把时间全部投入到研究Drupal的API里,Google Reader继续1000+膨胀,啊不管了,应该说管不了,就让我在5月里燃烧至灰烬吧。 完全是店长的miss啊,早知道就不在女子学院里当教师了,实验证明本人只有老牛拉车没有老汉推车的命orz

比特客栈的连珠合璧

比特客栈的东奔西走

比特客栈的旁门左道

News at: [2010/07/31 - 12:34] [2]

简单介绍:40岁的日本宅叔(目前是TRPG设计者兼同人作家)娶了20岁的中国姑娘,然后在网上发布生活漫画。内容取向见上图……

via 中国嫁日記 by 希有馬, h/t to popgo

News at: [2010/07/29 - 02:18] [4]

看来在我们打烊的日子里Pixiv更新了它的排名单格式,导致我们制作的Pixiv订阅源失效了。今晚抽空重新制作了一次,以下是各个订阅源的简介。

(继续阅读)…

News at: [2010/07/27 - 04:33] [12]

看完上面这张户松遥了吗?看完了吗?好,我们继续。

(继续阅读)…

News at: [2010/07/15 - 23:17] [8]

News at: [2010/07/14 - 22:25] [0]

If you tell the truth you don’t have to remember anything. – Mark Twain

这就是为什么中国的领导现在才想起来自己还在西太平洋大学读过博士。哦不对,是忘了澄清自己没在西太平洋大学读过博士。

News at: [2010/07/04 - 22:02] [4]

在人类成功环绕地球之前,航海的其中一个传说就是大洋尽头。新加坡海湾金沙酒店的空中花园的无限泳池,设计颇像World’s End的垂直瀑布。

image via flickr (1,2,3)

News at: [2010/07/03 - 18:01] [12]

Michael Sandel的哈佛课程Justice估计大家都有所听闻,课程中最常提及的便是所谓的效果论(Consequentialism)与其衍生的分支,功利主义(Utilitarianism)。而在最近加纳vs乌拉圭的进世界杯4强的比赛中,我们就看到了在这么一个极端的例子。

(继续阅读)…

News at: [2010/06/22 - 15:04] [14]

又要因为生活而移动,这次的目标是:魔都。离开山寨城之前找了个制高点截图,却发现忘带相机,于是渣画质。

再怎么PS,也不如在超市买水时照得这张经典。

啊对了,本文的重点其实是客栈因为搬家将进入更新低潮,每日访问的旅客可以稍事休息了,感谢你们的支持。(欢迎阅读客栈的老文章)