UTF-8 Word-spacing For Google Reader - 自动在中文和数字、英文交接处加上空格

April 12th, 2009 at 12:00 am

在中文和数字、英文交接处加上空格,是煎蛋小众的文章格式之一。它不仅仅是起到一个美观的作用,而且能让读者看文章更加舒服。比如:“我是sfufoet是我”就必须写为“我是 sfufoet 是我”。

Update:还有一个好处是,Opera Mini 用户在阅读你的文章的时候,不会出现英文和中文有些重叠的问题。

这条规定,执行起来非常麻烦。因为大家都没有这样的输入习惯,输入英文数字之前空格一下。一旦养成了这个习惯,看到别人的文章总是非常的不爽。

这个脚本其实一早我就写了出来,可惜因为不够完美,所以我没有发布。原先的脚本随着 GR 的不断载入,脚本的执行效率会越来越低。因为脚本是处理整个 GR 的网页代码。上次用 JQuery 重写了一个版本,并让 Dofy 帮忙 Debug。我的 Firefox 不知道怎么回事,死活无法执行。经过千辛万苦的排除插件问题和脚本冲突,最后只能断定为 RP 太好了。

昨天下午到昨晚,终于重写了它,对我这个 JavaScript 新手来说,重写这个脚本简直就是奇迹。写代码的过程就是不断去 W3School 学习,去 userscripts 挖掘别人的类似脚本并参考。今天下午参考了 [Updated] Google Reader Preview Enhanced v1.07g,完成了脚本的 Debug。

来看看效果,没有安装脚本前:

安装脚本后:

脚本是全自动处理当前正在看的文章,并且会自动过滤掉斜体标记(<i>和<em>)。脚本还自带了把 GR 未读数提前的功能。猛击这里安装:UTF-8 Word-spacing For Google Reader.user.js

注意:脚本并不完美,带有“程序代码”的文章会失去缩进。

我呼吁大家一起来养成这个习惯,赠送 bookmarklet 一个,适合 WordPress 用户,自动在中文和数字、英文交接处加上空格。

javascript:(function(){var q;document.charset=%22utf-8%22;q=document.getElementById('content').value;q=q.replace(/([a-z0-9~!@#\$\%\^&;\*\-_\+=\,<\.>\/\?\:\'\"]+)/ig," $1 ");q=q.replace(/ <\/a>/g,"</a>");q=q.replace(/( +)/g," ");q=q.replace(/( ?)\)( ?)/g,")");q=q.replace(/( ?)\(( ?)/g,"(");q=q.replace(/^ /g,"");document.getElementById('content').value=q;})();

安装方法,新建一个书签,名字随便,地址里填上上面的代码。

使用方法,在 WordPress 新建文章的页面,写完文章后,使用它。全自动处理。

注意,小书签可能存在 Bug:带有“程序代码”的文章可能会失去缩进。,使用前注意备份。

update: 在 list 模式没有写处理代码。等明天。

17 Responses

  1. 沙发

    scavin - April 12th, 2009 at 12:06 am Notify
  2. 转椅...

    Dofy - April 12th, 2009 at 12:17 am Notify
  3. 其实吧,链接前后也应该加

    fisio - April 12th, 2009 at 12:26 am Notify
  4. 这个功能大赞

    scavin - April 12th, 2009 at 12:42 am Notify
  5. @fisio, 我没有这个习惯。不过我的 GR 脚本让链接的左右都加上了空格。

    sfufoet - April 12th, 2009 at 12:43 am Notify
  6. 好东西

    LeON - April 12th, 2009 at 1:24 am Notify
  7. 这种在线教程除了W3School ,还有没有其他的推荐

    dzeko - April 12th, 2009 at 8:55 am Notify
  8. @dzeko: 目录[深入浅出Greasemonkey] http://www.firefox.net.cn/dig/toc/

    sfufoet - April 12th, 2009 at 8:56 am Notify
  9. 貌似这个脚本还不够稳定..

    LeON - April 12th, 2009 at 10:44 am Notify
  10. 我想知道你在GR中用了什么插件来显示星标后面的那个PR1.0。那个插件我原来用过现在忘记名字了,但是想用。

    5edwin - April 12th, 2009 at 3:51 pm Notify
  11. @5edwin: AideRSS GreaseMonkey 版。

    sfufoet - April 12th, 2009 at 4:28 pm Notify
  12. 这个格式的另一个作用是为了SEO,但是煎蛋现在执行得不太严格了

    islet8 - April 14th, 2009 at 12:43 pm Notify
  13. 一直手工增加的飘过……

    Showfom - April 15th, 2009 at 10:46 am Notify
  14. if-ajax-comments-for-wordpress
    这个插件,为啥我的博客就不行……一定要自己刷新才能显示新的评论

    Showfom - April 15th, 2009 at 6:20 pm Notify
  15. @Showfom: 我也不懂。请自行问作者。

    sfufoet - April 15th, 2009 at 7:34 pm Notify
  16. @sfufoet:话说,那个作者已经停止开发了……

    Showfom - April 15th, 2009 at 7:36 pm Notify
  17. [...] UTF-8 Word-spacing For Google Reader 升级到了 0.2.2。如果你还在 0.1 [...]

Leave a Reply