使Zend Studio支持中文

Zend Studio算是最好用的PHP的IDE了,不过对中文支持一直不是特别好。

Windows下Zend Studio只要选择好中文字体(DialogInput的效果似乎比较好)就可以很好的支持中文了。

但是在Linux下就没有中文字体可选。之前以为没办法,今天才发现Zend Studio的字体都放在它自带的jre下,只要把中文字体拷到jre/lib/fonts就OK了。呵呵。

不过我在使用中还发现有一个问题。就是用Zend Studio编辑过的文件采用utf-8编码的话,其它编辑器打开有时会乱码,有时不会。而其它编辑器如EditPlus保存过的utf-8编码的文件中的中文信息在Zend Studio中打开也经常会乱码。没搞明白原因。

使 XHTML Strict 支持target 标签

XHTML 1.0 Strict 之后就不支持 target 标签了。像如下形式的代码:

<a href="somewhere.html" target="_blank">link</a>

就通不过 W3C 的验证。

因此要使得在xhtml的页面中能实现target功能,在新窗口中打开链接,有以下方法:

1.用javascript实现,如通过以下代码:

<a href="http://www.example.com" onclick="window.open(this.href); return false">link</a>

找到了一个很好的进行此种处理的JS,详见:Unobtrusive Popup Windows

2. 自己扩展XHTML 1.1的DOCTYPE 。

比如我现在使用的这个DTD:

 <!DOCTYPE html PUBLIC "-//BLOG.JIANQING.NET//DTD XHTML 1.1 Target //EN"  "http://blog.jianqing.net/themes/theme2005/xhtml11-target.dtd">

就是扩展了标准的XHTML 1.1 ,xhtml11-target.dtd 文件是这样的:

%xhtml11.mod; %xhtml-target.mod;

这样就使得target 标签有效了。

3.还有一个扩展方式就是在标准的XHTML DOCTYPE后加一句:

<!ATTLIST a target CDATA #IMPLIED>

即使用如下的DOCTYPE声明:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"  "http://www.w3.org/tr/xhtml11/DTD/xhtml11.dtd"   <!ATTLIST a target CDATA #IMPLIED>

这样也就可以使target标签有效了。不过在浏览器中会显示: ]> 这两个字符。要消除这个问题,必须使用正确的MIME来传送XHTML,XHTML的MIME类型应该设为application/xhtml+xml。只是修改Content-Type是没用的

具体可参看此文:Serving up XHTML with the correct MIME type

该文还提出了如何通过PHP来发送application/xhtml+xml的MIME类型的XHTML。

dotClear也提供了这个功能。它能根据判断浏览器是否支持application/xhtml+xml的MIME类型自动选择是否发送application/xhtml+xml类型MIME。

updated 2005-4-15:

w3cn.org上看到了一篇同样讨论这个问题的文章:target=”_blank”不符合标准?

updated 2005-5-15:

从 IBM 的 developerWorks 上看到了一篇关于 XHTML 2.0 的文章:Linking in XHTML 2.0。文章介绍了在 XHTML 2.0 中对于链接的规范。

文章的中文版本:XHTML 2.0 中的链接

数据救回来了

由于我的误操作,硬盘分区表彻底毁坏,上面六十几个G的数据全没了…… 包括同学的本科生研究基金项目的数据,照片,我的代码,文档……

全部都没了……

痛不欲生啊……

2005/03/27 update:

本来以为没救了,晚上用以前刻的一张 knoppix 的盘引导系统,然后用上面的 testdisk 检查磁盘,终于找出了各个分区,重建了分区表。除了两个ext3的分区外,其它的几个区都恢复了。

testdisk修复分区很有效,推荐使用,呵呵。

晚上给机器装上了debian,决定不用盗版的 Windows 了,以后就只用 Linux 。

blog恢复正常,琐事

这个blog从18号起不能访问,那天我刚好要回校。20号到学校后还是不能访问。问了空间提供商才知道是服务器硬件故障,而他还得等到星期一(21号)才能进机房拿机器出去修。昨天下午有一段时间恢复正常了,不过到了晚上服务器又挂了。

原来的服务器除了这次长时间的故障,以前也不是没有问题。由于和smartipb.com在一个服务器上,而smartipb.com常常受DDOS攻击,所以常常会有一两个小时上不去的时候。正好前几天dashao提供了一个C9T的空间,所以干脆把blog转移到上面,美国的服务器怎么还是比较稳定的,而且有cpanel后台,改些设置也比较方便。不过在宿舍访问速度不是很理想,不知其它地方如何。

在这里特别感谢dashao提供空间!

wordpress给hedgehog建了一个新的blog:huangniu.jianqing.net,将他在blogcn上的空间上转移出来。我个人一直很不喜欢blogcn,也没什么特别原因,只是因为它以前曾经连续关了七天,而且丢了我在那上面的大部分数据,于是从此鄙视它,呵呵。

寒假在家里没做什么事情,大部分时间都用在睡觉和玩了。昨天第一天上课就有七节课,极不适应,整天困得不行。而明天就整天没课,这种安排实在不是合理。

这次寒假还发现我家除我和我弟外,我爸爸也在写blog,而且都有一年了,比我现在这个blog还早。

新春愉快

在此除夕之夜,预祝各位朋友们新春愉快哈!!!

村里现在到处鞭炮,烟花声,都觉得有点吵了,这么说好像有点大逆不道,呵呵。估计这热闹还得持续五六个小时。

近来受垃圾留言影响,暂时关闭了以前大部分blog的留言功能。

服务器真不稳定

blog和smartipb在一个服务器上,一直被DDOS,内存被耗尽,上午九点的时候我发现打不开了,直到现在才好了。这DDOS的人实在太恶心,用黎叔的话说,我最讨厌你们这些DDOS的了,一点技术含量都没有,呵呵。什么时候能有一个稳定的空间?

这个blog的界面被我改得好恶心的,实在不会改,各位先忍一忍,现在不想改了,等回了学校再说。

一直以来想给blog的分类设得合理一点,但是一直没想好,上次回家前脑子发热,找了四个A开头的单词作为分类,不知你是否觉得很恶心哈!:)

回家了

终天下午回到家了。A301果然是慢,足足开了50个小时才从北京到达厦门。还好是中午到,免去了我坐要黑车回家的痛苦。直接从车站乘车回家还是比较爽。

回家的第一个感觉就是实在太热了。火车上的第一个晚上还冷得要命,因为车上没暖气。第二个晚上就感觉到热了,要把外大套脱了,当时已经到了江西。到厦门热得实在不行了,外套,毛衣全部脱了还受不了,真的一点也不像冬天。

家里的电脑已经破得不行了,本来还打算在家里写点程序的,决定放弃了。为了上这个blog,机器已经死了三次了。

刚才在firefox的extension上看到了一个叫Translate的插件,能翻译12种语言到英语,当然也能将英语翻译成中文。挺不错,用来上dotClear就挺方便的。

回家……

再过三个小时就要坐上开往厦门的缓慢列车了。这次只买到了加开的学生专列A301,估计要坐四五十个小时才能到厦门。

回家上网可能不怎么方便,blog可能就不能怎么写了。不过有时间估计会看一下dotClear的代码,写几个plugins上来。

刚才给blog上加了个Referer,通过它就可以看到大家是通过哪里找到我这个站的了,呵呵。

还有就是用Flickr Badge把我在Flickr的照片链接过来,参考owen的文章,用CSS进行显示控制,在firefox下效果不错。

昨天eXeem公测版放出来了,版本号为0.20,感觉还不错,比起0.16,功能更新不多。

就此打住,别了北京,回家啰~~

收到卓然的礼物了!

今天收到了卓然从上海寄来的三张CD了

两张Jim Chappell的,一张是in search of the magic,另外一张是THE EARCHSEA SERIES,Real Music出的

还有一张是CELTICA VOLUME4的双CD,好多凯尔特音乐名家的作品。

这是上次FlameSky五周年新改版时我帮raynal修正了一个安全漏洞后,卓然说要送我的,今天收到了,太喜欢了,谢谢卓然raynal