这个月截止到今天可以说是我更新最少的一个月了,当忙起来的时候,能静下心写几篇日志也成了奢侈的享受。Folders4Gmail 是很有名的脚本,今天它给我带来了非常愉悦的体验:)
我有轻微的强迫心理,对信息的收集和组织有洁癖。今天,当我打开 Gmail 时,心里突然升起一股难以抑制的愤怒,因为这一瞬间我想到:
- 我有滚动一页都显示不下的凌乱的标签;
- 邮箱里面有无数只有附件且标题毫无意义的邮件(比如 hello);
- 更不要提那些连附件名也毫无意义(比如 新建文本文档)的邮件。
于是我花了整个下午来整理后两种邮件,将这些邮件打包后转发给自己,或者下载附件重命名后再发送给自己。真希望Gmail可以提供邮件注释的功能,或者提供修改原始邮件的功能。
而第一个问题的解决方法就是使用标题提到的 Greasemonkey 脚本 Folders4Gmail。我也希望 Gmail 可以提供可以设定某些标签隐藏的功能。在 Lifehacker 发布的 Better Gmail 2 中含有这个脚本,我倒不想安装那么多功能。
在安装了 Folders4Gmail 后,就可以给标签分类了,使用方法只要重命名原本的标签即可。比如将原来的"项目1","项目2","项目3",重命名为"项目/项目1","项目/项目2","项目/项目3"就会发现在标签栏多出一个可以折叠的标签目录"项目"。
需要注意的是,修改了标签名以后,原本的 Filter 可能需要修改。另外,由于标签长度变长了,原来查看 Gmail 中所有未加标签的邮件的方法就不能用了,在 basic view 下提示"Request-URI Too Large",在 standard view 下提示:"the system encountered a problem (#6414)"。
在 Gmail 中搜索邮件有很多技巧,比如使用 label:tag_name 可以搜索所有被标签为 label_name 的邮件。
但是 Gmail 没有提供一种快捷的方式来查看所有未加标签的邮件。
一种比较笨的方法是用 -label 的方法,可以排除某个标签名,那么把所有标签名都加上就可以实现我们的目的,比如:
-label:tag_name1 -label:tag_name2 ....
如果觉得太麻烦,可以用 Greasemonkey 脚本来实现:Gmail Unlabelled 2.0,作者 Blog。
现在 Gmail Labs 里面有一项:Quick Links,可以用这个建立一个快捷方式,只要第一次耐心输入就行,当然,以后增加或者删除标签的时候,再重新建一个即可。目前,这个功能还有些问题,不支持太长的内容,相信很快会改进。
另外,Gmail 对邮件的组织是以会话为单位的,标签是作用在会话上的。但是这里还有些小问题:Gmail 对一个会话添加一个标签,本质上是对当前会话的所有信件添加了这个标签,如果此后这个会话又出现了新的信件,在会话中标签还是存在的,但是对这个新加入的信件本身,是没有标签的。所以在用上面的方法搜索所有未加标签的邮件的时候,会找出一些加了标签的会话,这些会话都含有未加标签的信件。更改的方法很简单,只要选中这个会话,取消标签,再重新添加即可。
Firefox 3 RC1 都出来了,Google Toolbar 还没有更新,不得不怀疑下程序员的效率。
说实话,Toolbar 也不是非用不可的东西。比如 Google Bookmarks 就可以用扩展 GMarks 代替,而且更好用。按照 Google 的帮助来看,使用网页浏览历史功能必须安装工具条,并且开启 PageRank 功能。
事实上,Google 记录网页历史是根据对网页的 PageRank 的请求来记录的,也就是说,如果装上一个查询 PageRank 的扩展,在登录帐户以后,同样能够记录网页历史。
下面这个 Greasemonkey 脚本就是依据这个原理来达到使用 Google 网页历史的功能。
来源于本文最后的参考文章,脚本可以从 UserScript.org 下载,这里贴出来是为了备份:)
enablegooglewebhistory.user.js
// ==UserScript== // @name EnableGoogleWebHistory // @author mallowlabs // @namespace http://mallowlabs.s206.xrea.com/ // @version 0.0.2 // @license public domain // @description : Enable Google Web History // @published 2007-01-05 // @modified 2006-01-05 // @include * // ==/UserScript== // see also // http://www.scss.com.au/family/andrew/opera/panels/pagerank/ // http://d.hatena.ne.jp/amatanoyo/20080104/1199450996 // ========================================= (function(){ // avoid frame if (window.self != window.parent) return; var r=function(x,y){ return Math.floor((x/y-Math.floor(x/y))*y+.1); }, ch=function(url){ url='info:'+url; var c=[0x9E3779B9,0x9E3779B9,0xE6359A60],i,j,k=0,l,f=Math.floor, m=function(c){ var i,j,s=[13,8,13,12,16,5,3,10,15]; for(i=0;i<9;i+=1){ j=c[r(i+2,3)]; c[r(i,3)]=(c[r(i,3)]-c[r(i+1,3)]-j)^(r(i,3)==1?j<<s[i]:j>>>s[i]); } }; for(l=url.length;l>=12;l-=12){ for(i=0;i<16;i+=1){ j=k+i;c[f(i/4)]+=url.charCodeAt(j)<<(r(j,4)*8); } m(c); k+=12; } c[2]+=url.length; for(i=l;i>0;i--) c[f((i-1)/4)]+=url.charCodeAt(k+i-1)<<(r(i-1,4)+(i>8?1:0))*8; m(c); return'6'+c[2]; }; var url=document.location; /* create image element */ new Image().src = 'http://www.google.com/search?client=navclient-auto&ch='+ch(url)+'&features=Rank&q=info:'+escape(url); })();
相关链接:

