-
WordPress中的英文(半角)单引号
在WordPress里,保存文字时系统都会有一些filter函数对输入的文字进行处理,然后再输入数据库。但是这个过程中英文(半角)单引号的处理有些诡异。 无论是在设置中的blog标题,还是日志,输入的英文单引号都会被转换成”’”这样的表示方法。在HTML页面中输出特殊符号(HTML entities)时转换成这样的表示非常值得推荐,问题是”’”表示的是全角的单引号,即中文的单引号。 我们一般也不会在意,不过昨天,我帮她搬家的国内互联网某知名博客(其blog标题中有个单引号)说很丑。于是我想了想,英文单引号的正确表示是”'”,填入,然后点击Save Changes。嗯,真正的英文单引号显示在了标题栏,世界清净了。 不过此时要注意看,Blog Title输入框里的”'”又变成了英文单引号!如果再次点击Save Changes,那么前功尽弃,单引号又变成了全角。所以每次保存这个表单时,都需要把这个引号用”'”替换,再保存。
-
从blogbus搬家到WordPress
最近刚刚帮国内互联网某知名女博客搬了家,稍微写点东西。 据她说,许多人对她说“使用wordpress是成名的第一步”。又据说还有Blogbus的人跑去留言“Blogbus竟然还有这样的人”。要是一直用WordPr ess,早就火了。 Blogbus也算国内数一数二的BSP了(新浪、搜狐那些不能叫做blog,也就不算在BSP之列——顺便鄙视一把),导入功能做得炉火纯青,然而导出就只是作为备 份用了。这也不能怪blogbus,因为各种blog平台之间并没有统一的交换格式。普通的RSS输出显然不能胜任,因为完整的转换至少还要包括评论以及评论与日志之 间的对应关系。 然而一旦有了备份,一般情况下也就解决了问题。比如WordPress就提供了导入Movable Type导出文件的功能,Movable Type同样也有导入WordPress eXtended RSS(WXR)的功能。 不过东方文明还不为西方世界所熟知,譬如Automattic就不知道东方有一个Blogbus,所以WordPress没有直接提供导入Blogbus文件的功能, 我们只好绕一些弯路。 事实上这条路已经有很多人走过。冰古算是一位先驱,先后几次更新他的转换程序。 这里又有一位blogger在冰古的启发下写了一个从blogbus备份转换为MT导出文件的脚本,使得评论也可以导入WordPress,但是该文章中的 下载似乎已成为死链接。另外许多用户反映在服务器上运行时,浏览器中不能显示程序的输出,从而无法复制。这是由于脚本的第一行中指定了Content-type: text/xml,浏览器就将它的输出作为xml格式解析。解决办法就是改为Content-type: text/plain. 下载脚本文件。 我转换的过程中,分类没有导过来,其它的还算正常。
-
Ajax.Autocompleter不支持中文
最近在使用scriptaculous/完成项目中的一处自动提示功能时,发现Ajax.Autocompleter对中文支持很不好。 我用的是Google拼音输入法,在输入汉字的拼音时,输入完第一个字母后即触发输入框的事件,js就向服务器查询相应的匹配。实际上此时汉字尚未上屏,出来的匹配是该汉字首字母匹配(英文的)。这样,自动提示功能不仅毫无用处,而且会让用户莫名其妙。 一番探索之后,发现scriptaculous是在捕捉到keypress事件时向后台发起查询请求的,我仅简单地把keypress改为keyup,即解决了支持中文输入的问题。显然,这是由于输入法在浏览器的更上层处理了键盘事件的缘故。不过本方法没有经过广泛的测试,我只是在Firefox+Google拼音这个组合中试验通过。 似乎现在jQuery的发展正如日中天,各种插件数不胜数。尽管Prototype以及基于它而来的一些js library仍旧占据着很大的市场,但相对于jQuery来说已经是在走下坡路。
-
美景在于心情
世界的存在,是因为我活着;眼前的美景,是因为我心情好。 去了惠东,我感觉太好了。有一天,我对某人开玩笑说,这次来这里,是我一生中做过的最正确的选择。 初去的那几天一直是阴天,经常飘着牛毛细雨,很凉爽。家里客人比较多,每天早上睡懒觉起来,都跑到旁边的饭店“饮茶”——广东人的习惯。白天就自由自在地玩,有时候跑到旁边的湖里划船,有时候跟着大家到祖坟扫墓、回老家祭祖、到风景秀丽的山寺拜佛,还跑到惠州的“西湖”去玩。晚上吃了晚饭,就到湖边吹风,或者去广场上看音乐喷泉。 这样的生活确实很美好,不过前提是无忧无虑。等到快回北京的时候,我就开始计划起回来以后要处理的一些琐事,心情也不是那么舒畅了——我这个人一直是比较悲观的。 今天早上,刚下过雨,空气像被过滤了一样,很新鲜。走在路上的时候,我就想,假如我在这里没有那么多的琐事缠身,我是来这里度假,这个城市里也有许多让人留恋的美景,生活也可以很美好。回来之后发现门口的一树桃花挤得都放不下了,可是已经过了最鲜艳的时候。玉渊潭的樱花,估计也错过不少了吧。在没有好心情的时候,这些美景会马上被忽略。 忙过这一阵,如果有时间,我想去欢乐谷,找点刺激,放松一下。
-
迟来的燃气缴费单
我们楼的煤气缴费通知单都放在一楼门口的一个纸袋里,可是这次单子发下来的时候,我却找不到我们房间的。说是“这次”,似乎已经过去一个月了。我去问值班的大爷,他先给我来了一段广告,让我租他的房子……blabla……然后才告诉我两个电话——62344438/62344439——我后来才发现以前的缴费单上就写着这个电话。 于是我不辞劳苦地打啊打啊,可是这两个号码就好像民生银行的客服一样——打不通!过了几天,终于打通了,对方说帮我查一下,然后回电话。过了两天,果然给回了电话,真让我意外加激动,说星期一给我补一张,我连忙道谢。可是到了星期一,我却没有发现补来的煤气单子。 正好此时去了广东。快回来的那几天,我就开始想回来之后的几件麻烦事,其中之一就是这煤气费。我想,虽然收不到缴费单不是我的责任,但是燃气公司肯定也不会认为是他们的责任,滞纳金不知道有多少,对租给我房子的房东也不知道有没有影响。 前天,我终于鼓起勇气开始了第二轮轰炸,没想到第三次就打通了,真是幸运。这次直接找来了管我小区的人来接听,我说明情况后,对方就说,你这是欠费了啊。没办法,你不给我单子,我不欠费怎么办?这么神秘的组织,电话打不通,地址也不知道,就管收钱。后来说给我补一张,我说已经补过一回了,对方说第二天下午给我送过来。 昨天下班回家,终于看到了亲爱的通知单,最迟交费日期一栏写的是4月18日,不错,看来没把责任算在我头上。 你想想,追着人家给钱!这是什么道理呢?绑匪一般都是通知人“你把钱放在某某地方,钱到手了我就放人”。燃气公司可厉害多了。“您要多少钱?”“我把金额放到某某地方,你看到了就去交钱!”于是我就屁颠屁颠去看该交多少钱,空手而归,还得求人家,“拜托赶紧告诉我多少钱吧!”
-
Windows挂载Linux硬盘(解决乱码)
前阵子,一台Linux服务器因为根分区满了,挂掉了。紧接着在光盘恢复的过程中发现机器的硬件也有问题,不定时地重启,非常不稳定。尝试了几次,根分区没办法似乎恢复。而因为频繁重启,其它分区的数据也不容易复制出来。 于是试图在另一台Linux机器上挂载这一块硬盘,结果启动的时候说有重复的/boot label,导致什么错误,启动不了。查了一下,似乎要先改卷标,又要装到服务器上弄。当时嫌麻烦,用一个小U盘复制出来一部分关键数据,就搁那不管它了。 今天正好有点时间,试着把硬盘拿来装在了我用的Windows机器上。启动一切顺利,进入系统后右下角有一个图标指示发现了新的驱动器,很快就安装好了。打开磁盘管理,发现两个硬盘,其中一个正是刚安装的Linux硬盘,分区状态都是良好,Good. 然后下载了一个Explore2fs,结果打开一看中文都是乱码。然后又尝试TotalCommander的Ext2fs+Reiser 1.3插件,发现它读取ext3分区实际上就是用的Explore2fs,同样乱码。最后终于找到了救星——ext2fsd. 这东西用起来有点麻烦,打开后,选中想读取的分区,要给它分配一个Windows盘符,然后启动服务,在Windows Explorer里就可以像普通的Windows分区一样打开它了!对了,解决乱码——因为Linux系统一般用的是UTF-8编码,所以右键点击这个分区,选择“配置Ext2卷属性”(没关系,Ext3分区它也给这样的菜单项),在语种编码下拉列表中选择utf8,结果如图: 打开F盘,我想要的东西都在里面了,什么时候愿意就把它们复制出来(据说ext2fsd复制的速度也比较快,相对其它的同类软件)……早知道这么容易,何必当初在频繁重启的间隙中寻找机会。。。 好了,跟我一起喊:我们的目标是——没有乱码!
-
行路难
我们那里的春运秩序太混乱了。 回家那一天,上了一辆车,说是直达,结果到了保定就说车坏了,然后给了车上每人一张事先买好的到县城的票。这样倒是便宜一点,不过许多乘客因为被欺骗了,很生气,骂了他们祖宗好几辈,还差点动手。感谢这些兄弟拖住了他们。我急匆匆走出几百米后,突然想起箱子拉在车里了,回去一看,还在骂。关键问题在于,大家不知道去哪里投诉,说不定车站方跟他们是一伙呢。 今天在县城车站,我要上直达车,售票员说满了。我走了,她又喊我回去,让我在站外等。于是车出站后,我上去了。没有座位,售票员变出两个小马扎。直达车省得在保定倒车,就这样凑和着吧……这时超员2个,包括我。后来一路上见客就拉,真是比公交车方便多了,就像某些小城市的公交,“招手停车,随处下车”。我真庆幸自己有个“座”。后来拉的大多是到保定的,到了保定某个公交站,售票员说要上高速,去保定站的赶紧下车,给你们一人一块钱坐8路公交车,啧啧,服务真是周到。有的人不想下,售票员说,不能超员啊!乘客说,一路上挤死了,还不超员啊。售票员说,保定就是咱家,超员怕什么啊,去北京就不行了! 其实,上了京石高速,还是像最初那样超员2个,不过售票员不知道什么时候消失了。高速上走了不到半小时,嘭的一声巨响,车身剧烈颤抖了一下,然后砰砰的不停响,我周围的乘客吓得惊慌失措。司机把车靠在边上下车看了一下,后轮爆了一个,又上车慢慢开到紧急停车带,修车去了,许多乘客下车去放风。我看了一眼那个轮胎,一排钢丝都断了。真是倒霉。。。 花了半个小时,换了一个轮胎,终于继续前进了。 别看我家离北京直线距离大概只有250公里,可是走一趟可真不容易。比如回去的时候,早上四点半起床,坐车到木樨园,七点左右从北京走,九点半左右到保定排队换车,十一点的时候才绕保定转了一圈出了城,下午一点半到了我们县城,进那个小破车站时,楞堵了20多分钟……然后又换一个到我家的车,大概四点半回去了,基本上是12个小时。从北京到上海也用不了这么久啊,奶奶的。
-
gDocsBar – 在Firefox侧栏管理Google Docs
如果你日常生活、工作中大量使用Google Docs,一定要试一试这个刚刚发布的Firefox扩展——gDocsBar。 gDocsBar is a sidebar extension for firefox, a perfect companion for Google® Docs. With gDocsBar, you can drag and drop multiple files into the sidebar to upload documents. You can search, filter documents right from the sidebar. 个人觉得打开Google docs的首页是非常慢的,除了网速的限制,大量的JavaScript也是一个问题。这个扩展真的很方便,也可以提高使用Google docs的效率。
-
08年春节火车票纪事
中国人回家的过程充分说明:有苦才有甜。就是这苦也太大了点! —- 2008-01-20 21:05 写在饭否 女朋友在快要走的时候突然感冒了,于是我便去火车站退票并买张新的——不改签是因为本来是硬座,想换个卧铺。 到了西站,人流拥挤。进入售票厅,广播说西侧停车场新开120个售票窗口,退票在地下二层。不时地有广播说某窗口还有一张到某地的卧铺,一坨人就围上去抢。平日的售票厅里人还是特别多的,于是我直奔地下去退票。 恍若人才市场 到了退票窗口那里,我的兲哪,这简直就是到了人才市场(实际上,我没实际见过人才市场,这里说的是我想象中的样子,或者说菜市场?)啊。许多人手里拿着一张纸放在胸前,像是简历一样,行人路过的时候还专门摆正方向,好让人看清楚。也有许多人像老板一样徜徉在其中,见个“简历”就瞅一眼,找不到满意的就摇头叹息。他们不想退票,一张500块的票,一退就损失100. 而对于想买票的人来说,在这里碰运气也是不错的选择,座位早就没了,而票一旦被退了,能在窗口买到的几率也小之又小。这个市场的形成是自然而然的,解决两类人的需求。 在我退票的时候,就有许多人过来看,可惜没有一个人要,不然也可以省几十块钱了。 穷人怎么回家? 退了票,我去旁边的黑店买了根火腿,借机问了西侧停车场怎么走。那里真是地广人稀,只不过天气冷一点,或者人们不愿意买根火腿来问路,基本上每个窗口前就一两个人。 我前面站着个小伙子,售票员给他查出一张票,说57. 他问,有慢车吗?售票员很奇怪地说,这是快车!我也很奇怪。他坚持说,我就要慢车啊,我没那么多钱。这时我注意到他手里捏着皱巴巴的50块钱。当时心里就一阵感慨……回来之后别人说,你怎么不帮他一把呢?是啊。 轮到我了,问了一下,别说卧铺了,座位都没有。已经是晚上8点钟,过了一个小时了,很正常。去公交站等车,通过短信在饭否发了本文开头的感慨…… 信息化时代,抛弃传统人才市场 记得有位伟人说过,二十一世纪是信息化的世纪。第二天,我就开始在酷讯上想办法,这基本上是我第一次用酷讯的火车票搜索。不出意外,酷讯贴心地提供了邮件订阅的功能,可以指定起点、终点以及日期范围。我将广州和深圳两条线路订阅到Gmail,加上Gtalk的邮件提示功能,一般情况下有人在网上发布了火车票转让信息,10分钟左右就可以通知到我,一天大约有50条左右的信息。有了这么先进的工具,买张票真是太简单了,肯定会有很多人临时改变行程的嘛!关键在于很少人会利用这么高效的工具,我的成功率就大大提高了。 当然这是高兴得有点早了。 信息化时代,挑战信用 在网上买票,我有意避开那些黄牛。一打电话对方就说,“我先跟你说清楚啊,我这票是怎么怎么弄来的,你得给我加多少多少”,我兴趣就不大了。这要么就是老黄牛,要么就是从黄牛那弄来的,要么就是想临时当一次黄牛。那么多的票,我干嘛要买贵的呢?我主动上门去帮你无损失退票,你还要我的钱?太黑了吧 🙂 可是,让人不安的不只票贩子。 当天晚上的时候,联系到一位广东人(听口音)。跟他说好,第二天早上我过去拿,不要卖给别人了。对方满口答应,还说原价转让,不加钱了。我挺高兴,定好闹钟第二天早上七点起床(我保证是2008年起得最早的一次,平时都是九点半),怕打扰对方睡觉,我在坐车到了地铁站的时候,才给他打电话。和我担心的一样,他把票给卖了……据他说,是他父亲把票给卖了。平日里很愤青的我倒不是特别生气(大概是没睡醒),不过你知道票已经卖了,告诉我一声多好啊?还好我还没完全醒来,回来继续睡到正常起床时间,就当做了一个梦。hefa说双方都感受到信用危机,是的。不过他确实应该通知一下,不是吗? 正式起床后到了公司,打开电脑,一堆转让信息已经在邮箱里了。找了一个不太像票贩子的打过去,对方说买重了,别人还没给她送过去呢,让我第二天过去拿。女朋友不是太急着走,所以我就答应了(看,我还是比较容易相信别人的,刚被放了一次鸽子)。过了一会,又接到对方的电话,竟然怕我有变,让我下午就去拿,还说因为我是第一个打电话的,后面的都直接拒了。这下我就放心了,遇上个有谱的人。于是,我也上酷讯取消了订阅。 下午4点钟接到对方电话,让我过去拿。我坐了一溜地铁,包括在西直门走了一遍迷宫,终于见到了亲爱的——火车票。票价加5块手续费,我给了个整还找我两块钱,太厚道了。办公室一同事通过酷讯找了个票贩子,150的票都加了80——他急着要票,没办法。相比之下,我命太好了 🙂 正所谓: 千金易得,一票难求。 同志们,回趟家不容易啊。看那些连快车票都买不起的,看那些有票挤不上的,看那些在回家的铁轨上惨死的……能回到家的,珍惜和家人的时间吧!
-
去除Firefox中点击链接时的虚线边框
在Firefox里,鼠标点击一个链接时,它的周围即出现虚线画出的边框。这种例子遍地都是,在WordPress后台写这个文章的时候,随手点一下右边那些widget,就看到了这个问题(图片的右上角): 在某些特殊的情况下,比如做一个导航菜单的时候,出现这个情况时效果就很糟糕了,因为Firefox会错误地扩大链接的边框: 🙂 这是我用Firebug修改了Digg的CSS截到的效果。Digg的设计是比较完美的。 在Firefox的地址栏输入about:config,回车。有一个配置项叫做“browser.display.focus_ring_width”,把它修改成0,点击链接时就不会出现那个边框。但这样的话,在焦点落在按钮上时也没有了边框指示。而且作为一个开发者,在浏览器里设置这个属性,无异于掩耳盗铃。 这实际上是Firefox在<a>这个标签处于focus状态时(pseudo selector – a:focus)给它加的outline属性。 正确的解决办法是在CSS里加一个规则: a { outline: none; } 或者缩小范围: a:focus { outline: none; } 后者使得鼠标左键在链接上按下,松开之前的这段时间里,仍会显示虚线的outline. 在我看到的大部分网站中,都把这条规则写在CSS里。或许Firefox该考虑去掉这个的默认outline.