Google 输入法实现字符画功能

说句中肯的话,谷歌输入法在词库等众多方面都不如搜狗来的好,而qq拼音在这方面也比搜狗差一大截。不过出于对Google的喜爱,以及Google输入法一如既往地开放大量的API,我还是毅然决然地把输入法换成了Google。下面就用最简单最笨的办法来实现一下搜狗输入法上很受欢迎的字符画表情功能。

实现原理

首先诸多API是一个非常好的资源,而对lua开放也算是一个非常非常open的方式。不过本人学疏才浅,对lua语言研究不到位,算法方面亦很不擅长,所以只能用最基本的自定义短语方式来进行自定义。如果有兴趣的高手愿意和本菜鸟探讨一下API更好地实现这些功能,请留言或者邮件方式。

利用自定义短语功能实现,但是不能直接用定义到某个词上,比如说^_^这个,如果定义到haha这个词语上,会在第一个显示出来且无法调整,会影响平时的使用,这点和搜狗输入法还是有些差距。

解决办法就是在自定义短语前加上一个字符,我这里是加上了v,其实加f也是一个不错的办法,因为f相对来说比较好按一些。

期望能实现的功能

目前实现的字符画功能还是不理想,最好能用Google开放的api做到如下效果,希望能有高手指导一下实现方法:

  • 不用加前缀字母
  • 可以调整词频

字符画库

以下就是字符画库,大家可以自行下载导入dis文件,然后按下v加上相应的词语就可以打出字符画了。下面就是字符画列表:

v	( ⊙o⊙ )千真万确
v	(~ o ~)Y
v	(~﹃~)~zZ
v	咕~~(╯﹏╰)b
v	O(∩_∩)O~~
v	~\(≧▽≦)/~
va	(O_O)?
va	(⊙_⊙)
va	( ⊙ o ⊙ )啊!
vai	╮(╯﹏╰)╭
vai	o(︶︿︶)o唉
vai	:-(
vbaibai	( ^_^ )/~~拜拜
vbs	╭∩╮(︶︿︶)╭∩╮鄙视你!
vbs	(#‵′)凸
vbucuo	( ^_^ )不错嘛
vbudong	( ⊙o⊙?)不懂
vbuyao	o(>﹏<)o不要啊
ve	咕~~(╯﹏╰)b
ven	(⊙o⊙)嗯
ven	O(∩_∩)O嗯!
ven	(⊙o⊙)?嗯?
ven	(⊙v⊙)嗯
vganga	⊙﹏⊙b汗
vha	O(∩_∩)O哈!
vhaha	O(∩_∩)O哈哈~
vhahaha	O(∩_∩)O哈哈哈~
vhan	-_-!
vhao	\(^o^)/YES!
vhao	\(^o^)/~赞成!
vhaoa	(*^◎^*)
vhaobang	o(≧v≦)o~~好棒
vhaode	O(∩_∩)O好的
vhaoleng	{{{(>_<)}}}好冷
vhe	:-)
vhehe	O(∩_∩)O~
vhei	;-)
vheng	╭(╯^╰)╮
vhuhu	(~ o ~)~zZ
vjiong	囧rz
vjiong	o(╯□╰)o
vkao	我靠( ‵o′)凸
vkao	(#‵′)靠
vkoushui	(ˉ﹃ˉ)口水
vku	%>_<%酷毙
vkuanghan	-_-|||
vkuangyun	(+﹏+)~狂晕
vkun	=_=
vlalala	~\(≧▽≦)/~啦啦啦
vleiben	~~o(>_<)o ~~泪奔
vmiao	(>^ω^<)喵
vnali	(=@__@=)哪里?
vnanshou	(╯﹏╰)难受
vnaohuo	-_-#
vo	(⊙o⊙)哦?
vo	(⊙_⊙)?
vo	(⊙o⊙)哦
vo	:-O
vqian	Y(^o^)Y
vqian	$_$
vqianwanbie	o(>﹏<)o千万别
vqiguai	(⊙_⊙?)奇怪
vqin	╭(╯3╰)╮
vshenme	?_?
vshuizhao	(~﹃~)~zZ
vtongyi	\(^o^)/同意
vwa	(*@ο@*) 哇~
vwa	( ⊙ o ⊙ )!哇!
vwansui	~\(≧▽≦)/~万岁!
vweixiao	:)
vwoku	/(ㄒoㄒ)/~~我哭
vworen	(╯﹏╰)b我忍
vwoyun	X﹏X我晕
vwunai	╮(╯﹏╰)╭
vwunai	╮(╯▽╰)╭无奈
vwunai	╮(╯_╰)╭无奈
vwusuowei	╮(╯_╰)╭无所谓
vwuwa	T^T
vwuwu	~~~~(>_<)~~~~ 呜呜
vwuyu	(⊙o⊙)…
vwuyu	O__O"…无语
vxi	:-P
vxiang	(ˇ?ˇ) 想~
vxiao	:-D
vxiaosi	~~~^_^~~~ 
vxiexie	O(∩_∩)O谢谢
vxiu	~(@^_^@)~
vxixi	(*^__^*) 嘻嘻……
vyeah	\(^o^)/yeah~!
vyiban	( ⊙ _ ⊙ )一般吧
vyun	+_+
vyunsi	(@﹏@)~ 晕死了
vzenme	o_O???怎么了?
vzhaosi	(╰_╯)#找死
vzhu	哼(ˉ(∞)ˉ)唧

Pr出现小更新:2010年9月

2010年9月14日,pr出现了小范围的更新。古博pr由原来的unmarked变成了0/10,悠游绿洲的pr值直接从4掉到了0,可谓元气大伤。另外大概查看了一下其它几个站点,基本无变化,基本都是由unmarked变成0. 据说一般在正式更新前都有一段时间内不稳定地变化,希望悠游绿洲这次不会有什么问题,pr值能尽快回来。

对于悠游绿洲pr值如此大范围的跌幅,分析原因:

  1. 长时间未更新:悠游绿洲最后一篇文章更新于5月份,相隔时间太久,流量也急剧下降至不到原来的一半。这有可能导致google认为这个站点已经不再更新,所以降权处理。但是这种可能性不大,因为一般都不会从4掉到0,而且内页pr全部清零。
  2. 频繁更换链接结构:因为之前在折腾wordpress插件和htaccess规则,一直在带3w和不带3w的域名结构之间徘徊,来来回回改了3~5次,链接结构多次变化,可能对搜索引擎非常不友好,所以作为惩罚,全部去掉pr
  3. 更换ip地址:之前的bluehost的空间到期了,更换到fastdomain上,ip地址发生变化。
  4. 答应某公司广告:这一周以来,和一家英国公司大概有7封信件来往。大概意思就是在页面放上一个链接,就能得到每年70美元的报酬。我看了范例,是一个链接,不会影响浏览体验,也就初步答应了。很诡异的是,悠游绿洲的站点pr马上清零,让我不得不往这方面考虑一下。
  5. google更新前的不稳定:用工具查看了一下,所有内页pr都变成了unmark,很有可能是google更新,新的pr暂时没有放出来的缘故。阿米陀佛,这个结果是最好的。

既然事情已经发生了,没什么办法。先拒绝了那家英国公司的广告,然后静待pr大更新再做打算。这两天稍微更新一下悠游绿洲,然后以后就一直保持页面结构不变了,祈祷pr能回来。

Miranda+Gtalk:便携高度自定义即时通讯解决方案

在多个软件中的选择取舍,依据就是“能否最大限度地满足用户特定的需要”。因为本人需要到不同的计算机上使用即时通讯工具进行简单的文字交流,同时需要完整的保存聊天记录。

经过分析,把需求列出简单纲要:

  • 便携性:放在U盘中可以随时使用,能够保存帐户信息
  • 精简性:U盘的读写速度不是很快,如果比较繁冗的软件,运行起来会比较卡(不相信的朋友可以自己放个QQ2010到硬盘试试看,比较极端的例子)
  • 保存记录到网上(可选):其实保存在U盘上亦可,只是没有保存到网上方便和安全,尤其是保存在gmail里
  • 高度可定制性:我需要定制消息通知,显示/隐藏客户端和显示/关闭消息窗口的快捷键,当然,可选的功能越多越好,包括删除卸载一些插件。毕竟只要满足自己的需要就够了,其它功能都是繁冗

而经过查找对比,gtalk比较符合我的要求,而在软件的查找中,Miranda在pidgin、gtalk里脱颖而出,成为首选。

选用Gtalk的理由

  1. 简洁:Gtalk本身就比较简洁,官方英文客户端1.53M,完全不用担心放在U盘上运行会卡
  2. 无广告:不必担心弹出一大堆垃圾消息,忍受聊天窗口无穷无尽的广告信息
  3. 多客户端:而且在网页上和其它各种通讯软件中都得到支持,只要能上网,不愁不能用,而且在客户端的功能选择上也因此而更为多样化
  4. 聊天记录:更为重要的是,能自动保存聊天记录到gmail邮箱中,方便日后查阅

啰嗦一下qq的对比,首先,一个qq客户端动辄20M+,下载需要不少时间。其次就是不是每个人都有使用聊天记录漫游的权利的,更别说需要忍受qq弹出来的无休止的迷你首页,宠物提示。最后,就算选用了TM客户端,也是不适合放在U盘上的,目前的普通U盘传输速度满足不了此客户端的需求。当然,还是那句话,能满足自己需求的才是王道。

选用Miranda的理由

  • 小巧高效:最新的unicode客户端不过2.2M,启动和关闭速度非常快,整体反映速度让我十分满意
  • 无广告:miranda自身是开源免费的,所以完全不用担心广告这些东西
  • 高度可定制:从各种网络协议到各种功能插件,miranda是我目前见过的可配置性最高的IM软件
  • 绿色便携:pidgin即使用了portable版本,仍然不能很好地保存配置文件,出现数次丢失配置文件的情况

Miranda的不足:中文帮助文档不是那么充分,安装插件的时候可能会稍微有些麻烦,尤其对于新手。但是如果你和我一样不能忍受那些垃圾广告,无用的功能和臃肿的客户端,需要随心所愿地定制,那就来尝试一下Miranda这个好东西吧!

相关链接资源

软件玩家:国内Miranda的资深玩家,代表作品就是Miranda IM CleanUI系列(包含实用的QQ协议)
小蝎:我最早接触的Miranda定制版的大大,可惜好久没更新了,但是一些教程还是非常有用的
Miranda官方:Miranda的官方网站,最新版本、插件、皮肤下载;英语好的朋友可以尝试一下

Add to Search Bar: Firefox 自定义搜索引擎插件

Add to Search Bar是一款Firefox下可自定义内置搜索引擎的插件。在任何搜索引擎或者大多数搜索页面下,只需要2~3秒便可把这个引擎/页面添加到firefox的内置引擎列表中。以后只需在搜索栏或者在地址栏中用关键字+搜索词的方式即可快速搜索。

前言&背景

Firefox自带有自带搜索引擎,在搜索栏内可快速的用关键字进行搜索,通过设置搜索引擎关键字,也可在地址栏中使用“关键字+搜索词”的方法进行快速搜索。不过,firefox并没有提供自定义搜索的功能,初级用户想要通过添加搜索引擎,非常困难,通过官方插件页面未必能找到自己真正想要的。而通过Add to Search Bar插件则可快速添加搜索引擎到列表中。

插件概要

软件使用

  1. 到上边的下载地址下载安装,然后重启firefox使插件生效
  2. 打开一个搜索站点,比如www.ggssl.com/
  3. 在页面搜索框上单击右键,弹出右键菜单。在右键菜单中选择“Add to Search Bar”,会弹出设置框
  4. 设置框里的内容都不用管,直接确定就可以在搜索栏列表中找到这个搜索引擎了
  5. 以后如果要修改,可以通过地址栏icon后的小三角箭头的下拉菜单里的“管理搜索引擎”进行管理。我一般都会为每个引擎设置个关键字,这样可以直接在地址栏里搜索。比如,用“gg 古博”就可以在google里搜索“古博”这个关键字了,“tb 黑莓8200”就可以在淘宝里搜索“黑莓8200”,省的用鼠标在搜索栏里切换。当然,前提是我把淘宝和google的关键字分别设置为gg和tb了。

实用搜索站点

  1. 天气预报:http://weather.news.sina.com.cn/
  2. 购物搜索:http://www.taobao.com/
  3. 加密搜索:https://encrypted.google.com/
  4. bing搜索:http://cn.bing.com/
  5. google地图:http://maps.google.com/
  6. 海词在线:http://dict.cn/
  7. 英文百科全书:http://www.wikipedia.org/

这些都可以通过Add to Search Bar很轻松方便地添加到你的firefox的搜索引擎列表里,不要忘记添加关键字哦!

去掉nofollow是好是坏?

博百优开赛已经有一段时间了,至此各路高手竞相展现自己的实力。在苏囧的博客上发现一个声明,声称在自己博客上去掉了评论中 nofollow 属性[1]。作为解释自己博客留言人数众多的原因。原文:

在首页前三的站中很多站长留言,而我也观察了其他两位的,第二位 bobeiyou中的留言,评论添加了跳转,在第三位zuihaoting中为死链!而我的博客未用任何提转,nofollow,等不利搜索引擎的函数!效果也是最好,所以留言的人要多。

什么是nofollow

nofollow 简单的说是一个链接属性声明,标注此链接并非是作者所留下的链接,适用于不可信赖的内容付费链接内容优先级排序等等。关于此属性的更多内容可以查看 Google 站长工具箱里的《关于 rel=”nofollow”

nofollow 应用实例

Matt Cutts 先生是 google seo 方面的专家,是 seo 界内人所皆知的一位人物。他的博客 Matt Cutts 可以在这里作为一个实例来作为讲解。

大家可以和我一起来做,打开他的这篇文章《Live-buzzing Day 2 of the Google I/O keynote》,查看源代码,发现 nofollow 属性应用的地方可分为两种类型,不可信赖的外部链接内容优先级的应用。

  1. 博客Rss链接我们所知道,Rss是一种订阅方式,所输出的内容基本与web网页上的内容完全一致,只是可能在用户体验上稍有不同。重复的内容指向就很不利于搜索引擎的收录,所以在这里需要用到 nofollow 属性来告诉搜索引擎,这个不需要收录
  2. 评论者的链接博客是一种互动性的内容,而作为评论则是用户产生的内容UGC(User Generated Content)。评论中自然不缺乏有价值的内容,作为博客的第二灵魂。但是从对用户负责的态度来看,任何评论者都可以留言并有可能得到审核通过。而且因为这些网址的不可控制性,很难保证现有的健康的链接以后不会变成有害链接。不管从内容相关度等seo优化的角度,还是保护读者浏览体验的角度来说,都要用 nofollow 属性来告诉搜索引擎:“这个不是我的站点,属于外部链接,是不可信赖的内容”。
  3. 表单、内部链接在评论表单锚(#respond)和固定链接锚(Permalink to this comment)中,也有 nofollow 的应用。这些其实是基本无用的内部链接。评论表单和固定连接都是在本页内有出现的内容,也就是说属于重复内容,在收录的过程中没有必要收录,准确地说是没有很高的优先级。
  4. nofollow属性的细分如果和我一起动手的朋友可能会发现, 在源码中 Matt Cutts 先生还把 nofollow 属性进行了细分。Rss 链接中的为“nofollow”,而评论中则使用了”external nofollow”。”external nofollow” 是外部链接的意思,进一步详细告诉搜索引擎这个链接的不可信赖等级。

大家在自己博客写作过程中可以借鉴参考一下 Matt Cutts 先生的做法。他对 nofollow 属性的应用非常细致。

nofollow 和博百优比赛

博百优大赛做的是百度的搜索引擎优化。从这点来说,以上所分析的不一定准确。《关于 rel=”nofollow”》文中也提到,“其他搜索引擎对 nofollow 的处理方式与我们可能略有不同”。不过从苏囧声明本身来看,还是有不少站长对这个是非常在意的。下面来说一下此次博百优比赛中所遇到的使用 nofollow 属性来处理链接的情况。

  1. 友情链接的nofollow处理这种做法由来已久,相信各位对 seo 有所了解的朋友也会对此深恶痛绝。在05年在落伍者站长交换个人博客链接的时候就发现有这种情况。双方做上链接,也就是常见的链接互换之后,一方耍小聪明,把链接加上 nofollow 属性,等于告诉搜索引擎:“这个链接不是我加上的,是不可信赖的,请忽略掉”。在pr更新之后另一方发现自己的没有更新,泪流满面…… 这种行为从seo角度上来说,不算作弊,因为搜索引擎没有道德观念。最严重的实际损失也不过是被撤下链接。但是,作为一个站长,所谓的友情链接都要作弊,还能指望站点有多好么?
  2. 评论中链接的nofollow处理这点来说,不管是国外的wordpress还是国内的一些asp的博客程序,都已经非常好地做到处理评论者的链接。51bobaiyou.com 用的是国内的(大概是zblog)asp程序,评论链接中使用了”nofollow”;而google上排名第一第四的博百优测试网柳城对在这方面做得很不错。
  3. Rss及其它nofollow链接处理同样还是博百优测试网柳城这两位的博客,在rss上都做了 nofollow 处理,大概是wordpress天生的优势所在。柳城对 nofollow 属性的使用则是到了极致,一些内页,比如链接页都做了处理,以至于我都有些怀疑柳城是否过滥地使用了。

博百优比赛中去掉nofollow属性的得与失

2010年6月3日更新( :苏囧在网站被降权以后已经重新在评论链接里加上了nofollow属性,并且权重得以恢复。至此,我认为,这个话题已经可以画上句号了,评论链接里的nofollow是必须的。

百度是支持nofollow属性的了,已经由百度seo方面的权威ZAC很明确的说过了。“不可信赖的内容,付费链接,内容优先级排序”是nofollow属性的三个应用,友情链接里的就应该是“不可信赖的内容”,因为这个链接不是站长留下来的,也是超出了站长的控制范围之外的。万一链接里有spammer留下质量低的网站(带木马、采集站等等),首先,没有nofollow的话,搜索引擎就认为这个链接是站长加上的,无论在页面相关性和用户体验方面,在搜索引擎里你的得分都会被降低;另外,搜索引擎就算不做惩罚,质量低的网站因为这个链接而排名靠前了,那对网民来说是个祸害,间接的站长就成了帮凶。所以,评论中的nofollow是无论如何都要保留的

本次博百优比赛确实给我们耳目一新的感觉,就光从诸多高手的参赛站本身来说看点就已经很多。各位如果到此觉得苏囧的做法不是很明智,我倒觉得这个结论为时尚早:

  1. 内容相关性苏囧几篇关于博百优的文章我记得在众多参赛者评论方面引起很大关注,留言者所带的链接很多都是与博百优相关的站点。从这点来说,内容相关性极高。不过现在再去看的时候,什么乱七八糟的留言都有,而且苏囧本人似乎大度过头了。他一直在强调的用户体验在评论中没有丝毫体现,看他博客评论的时候真想一巴掌把自己拍死。斗胆向苏囧建议一下,是不是可以考虑一下 Akismet 这个插件来做一下 anti-spam?
  2. 用户体验刚才说了,在做seo的人中,强调用户体验的非常少。苏囧能坚持这点非常难得([2])。此次比赛中,在某些其他竞争对手一直在过分强调链接,甚至不惜用nofollow作弊来达到单向链接的氛围下,苏囧去除掉nofollow,这种大度的做法赢得了一致好感。留言赞美的人不在少数,这何尝不是一种用户体验?通过牺牲链接的属性,来提升用户体验(增加好感),很可能降低bounce rate,增加pageview,何尝不是一种积极的手段和尝试?

当然,这些高手所作的这些努力,都是值得我们认真分析的。至于结果如何,meet us in July!

注释

  1. [1]苏囧关于去掉nofollow的原文链接
  2. [2] 从这个意义来说苏囧根本就不是一个市面上常见的seo者,那些人只会用低劣的手段增加外链,毫不顾忌文章内容和用户体验

文章更新历史

  1. 2010年6月3日:文章修正,增加了苏囧试验的结果,明确指出nofollow在评论中是必要的。
  2. 2010年5月22日:文章第一稿发布。