星际争霸2来了

今天,暴雪终于公开了星际2的相关信息和视频。正如已前一样,每一次都非常引人注目。

当初玩星际的时候,感觉很科幻,非常有趣。今天看来,2代也非常科幻,而且在新的游戏画面下,非常的漂亮,感觉非常好。估计离开始发售还有一段时间,慢慢等吧。

使用插件为ZendFramework提供gzip功能

今天再看Djangobook的中间件的时候,发现他的机制跟ZendFramework的插件机制是差不多的。所以就写了这个插件。

高级点的浏览器都是支持gzip压缩的,所以,可以将文本文件进行gzip压缩,然后发送给浏览器,浏览器会自动解压它们。这样可以大大减少文件的size。虽然,这个过程可以通过服务器来解决,但对服务器的控制要求挺高的。

基本原理是使用dispatchLoopShutdown钩子。这个钩子是在dispatch完成后调用的,所以,如果正确使用response对象来输出的话,这里就可以做许多事情。比如:使用php的gzencode函数对页面进行gzip压缩。现在这个插件还是初级版本,但基本原理就是这样,也是对plugin的一个说明。

Firefox2+LiveHTTPHeaders测试通过。 

插件下载 

人为什么会发抖

我的双脚开始发抖,然后有点站不住。虽然只持续了几秒钟,让我感受到有时想跑,但又跑不动的感觉。

虽然,发抖有许多种,但我感觉我是在那一瞬间精神受到了极大的打击。也许我是胆小,看来确实需要做点什么啦。 

Nice! Ubuntu 7.04

在Ubuntu 7.04的Beta发布的时候,就在我的本子上把Ubuntu装起来了。本子的型号是:HP3239。通过断断续续的设置,感觉Ubuntu越来越好用了。

我在对硬盘分区的时候,留了10G的空间,用作Ubuntu的分区。用启动光盘进去后,点击安装向导,然后一路next,在设置分区的时候,选择第2项,就是使用自由的空间。当然,选第3项手动也可以。然后一路next。如果没出什么问题的话,那就应该安装成功了。

进入系统后的第一件事就是更换源:/etc/apt/sources.list

deb http://ubuntu.cn99.com/ubuntu/ feisty main restricted universe multiverse
deb http://ubuntu.cn99.com/ubuntu/ feisty-security main restricted universe multiverse
deb http://ubuntu.cn99.com/ubuntu/ feisty-updates main restricted universe multiverse
deb http://ubuntu.cn99.com/ubuntu/ feisty-proposed main restricted universe multiverse
deb http://ubuntu.cn99.com/ubuntu/ feisty-backports main restricted universe multiverse
deb-src http://ubuntu.cn99.com/ubuntu/ feisty main restricted universe multiverse
deb-src http://ubuntu.cn99.com/ubuntu/ feisty-security main restricted universe multiverse
deb-src http://ubuntu.cn99.com/ubuntu/ feisty-updates main restricted universe multiverse
deb-src http://ubuntu.cn99.com/ubuntu/ feisty-proposed main restricted universe multiverse
deb-src http://ubuntu.cn99.com/ubuntu/ feisty-backports main restricted universe multiverse
deb http://ubuntu.cn99.com/ubuntu-cn/ feisty main restricted universe multiverse
cn99的源非常快。

这是系统没有中文输入法和语言有关的部分东西,这时候选择,系统->系统管理->语言支持来安装中文的一些东西。

在网上找到了和我相同型号的驱动安装网志:郭爽的Blog

无线网卡和显示驱动都安装成功,不过,我的显卡驱动是用新立得软件包安装的。安装后需要改一下分辨率。修改一下/etx/X11/xorg.conf,在分辨率设置的地方添加1280×800。就OK了。

最后是关于字体的设置可以参考:

Nicky's blog

现在Ubuntu下的字体非常的Nice。呵呵,现在就是在Ubuntu下面写的。

这是MetaWeblogAPI的测试

这是MetaWeblogAPI的测试

从google文件那边好像没发过来。这是我在本地测试的。继续测试。

原来还要实现BlogerAPI。

郁闷,这两个API都实现了,但就是不能发布过来,别的应用也不行。不知道是我哪里实现错误了。Yell

异教徙

今天,突然想看尼古拉斯·凯奇的片子。于是找到异教徙这部电影,让我感到失望的是连豆瓣的简介都是错误的。99%的简介就是指原来73年的版本。

故事在爱德华·马鲁斯(尼古拉斯·凯奇)被烧死,最后结束了这场谋杀。这让爱德华·马鲁斯死得有点不明不白,但故事的最后,一场新的谋杀开始了。在电影中,间接和直接的表示了那座岛上是一个母系社会的构成。在那座岛上,只有少数男人,他们地位低下。谋杀的开始就是从岛上的女人出去钩引男人,然后杯上孩子然后回到岛上。应该是当孩子到达一定的年龄,需要她的父亲拿来当祭品,在电影中也说明了男孩的命运。那场车祸和那个女警都是这场谋杀的一部分,对爱德华·马鲁斯的精神进行打击。最终他们的目的成功了。

我心中的Hook

根据那张性格测试的图片解释,“处事谨慎”。由于,在上学时性格比较内向,那时候只喜欢与游戏有关的东西,不会主动向别人问候。工作后,虽然性格上有那么一点改进。但有时会考虑是否要向别人问候,只要有一次后交流后,在以后的一段时间里这种想法会越来越小。

当必然发生的事开始后,那后面接着会发生什么呢? 

Zend_View_Helper…

在ZendFreamework中,有一些帮助生成表单的对象,其中包括各种表单元素。由于这些表单很原始,如果想组成丰富一点的表单元素还是有点瘦。所以,我把其中一些元素封装了一下。比如:就在线编辑器封装成一个单独的Field。今天,想添加一个新的表单,但发现Zend_View_Helper太散了,对属性的调整很细致。但表单在大多数时候,除了定义一些基本和私有的属性,样式方面的完成可以由CSS来定义,基本上没有什么其它的需要。

我准备自己把这些field重新封装一下,不使用Zend_View_Helper。真是有点鸡肋的感觉。

javascript检测flash版本原理

有时候会需要在客户端检测flash版本。在js中navigator对象,用于显示浏览器的各种个参数。比较重要的是navigator.userAgent,它提供浏览器的UA信息。navigator.plugins显示所以浏览器的插件信息。但对ie来说,你就别指望了。但还是有其它方法来判断一个ActiveXObject对象是否存在的。

p = navigator.plugins;
        if (p && p.length) {
            for (var i = 0; i < p.length; i++) {
                if (p[i].name.indexOf('Shockwave Flash') > -1) {
                    alert(p[i].description.split('Shockwave ')[1]);
                    break;
                }
            }
        } else if (window.ActiveXObject) {
            for (var j=9;j>=6;j–) {
                   try {  
                    var fl=eval("new ActiveXObject('ShockwaveFlash.ShockwaveFlash."+j+"');");
                    if (fl) {
                        f=j + '.0';
                        break;
                    }
                   }
                   catch(e) {}
              }
            alert(f);
        }

原理:

首先,判断navigator.plugins是否为空,如果是空的话就当IE处理啦。接着处理非IE类的,就是编历navigator.plugins数组,查找名字包含Shockwave Flash的项,然后把前面的Shockwave 截取掉;IE部分的原理是创建ActiveXObject来判断是哪一个版本的flash。使用eval动态的创建不同的版本的ShockwaveFlash.ShockwaveFlash对象,哪一个创建成功了就是什么版本了。

QQ邮箱是这样骗我激活的

虽然QQ邮箱早就有了,实现我对这东西实是没什么兴趣。我常用的邮箱一般是gmail,可以有1%的机会会用hotmail吧。前一段时间不知怎么的QQ邮箱里面有邮件,我就奇怪啦,我又没有激活怎么还有邮件发过来。一值没管,最近又多了一封。算了,激活看看。就这样我又多了一个邮箱。