2006年12月27日星期三

claws-mail vs thunderbird(3): 快捷键设置

claws-mail/sylpheed-claws利用了gtk提供的一个很好的特性: 将焦点移动到一个菜单项上,按下一个键,这个键就成了这个菜单项的快捷键(accelerator)。按Del键就可以删除这个快捷键

gtk程序可以设置~/.gtkrc-2.0文件获得这个功能:
gtk-can-change-accels = 1

GNOME程序可在gconf-editor中钩选如下选项
/desktop/gnome/interface/can-change-accels

但有些应用程序(比如claws-mail)不想依赖这些设置,自己打开了这个功能:
   gtk_settings_set_long_property(gtk_settings_get_default(),
"gtk-can-change-accels",
(glong)TRUE, "XProperty");

可惜thunderbird/icedove没有这个功能,也没有其它的设置快捷键的功能:-(

thunderbird vs claws-mail(2): 删除重复邮件

我将三个gmail邮箱的邮件都设置了前转(forward)到公司的邮箱,这几个邮箱对少数几个邮件列表有重复订阅现象,所以删除重复邮件就是一个必须的功能。

claws-mail/sylpheed-claws自带这个功能,但thunderbird没有。不过搜到一个Remove Duplicate Messages插件,虽然很不习惯它的"selected"表示方法,但总算可以解决问题了。

2006年12月25日星期一

升级到gaim-2.0beta,又降下来了

Debian testing中的gaim早升到了2.0beta版,但我一直没有升级,主要是原来在Windows下试用过,gaim-2.0中好像不能单独设置某个协议的状态,我没法单独将QQ或者MSN隐身。

这两天没啥事情,Torchwood也因为没有找到字幕没法看,干脆就来升级这个玩儿 :-)

先做了个备份

$ dpkg-repack gaim
$ dpkg-repack gaim-data
$ dpkg-repack openq

升级:

$ apt-get install gaim

没想到升级后gaim很不稳定,老崩溃。一小时后只能重新安装1.5了:

$ apt-get remove gaim
$ dpkg -i gaim_1.5*.deb openq*.deb

BTW: Debian简直太方便了 :-)

2006年12月22日星期五

Thunderbird: 如何调整附件栏的大小

新年新气象,除了打算将blog搬个地方之外,邮件客户端也打算切换到Mozilla Thunderbird了(在Debian上已经是icedove了)。不过这个东东除了thread分组这一条让我很不爽之外,还有一个地方: 附件栏会根据附件多寡自动调整大小,如果按每日文摘(daily digest)的方式收一些邮件列表的话,这个附件栏就会变得很大。

本想凭着这些日子对mozilla/xul的学习,自己来解决这个问题。地方是找到了,在chrome/messenger.jar#content/messenger/msgHdrViewOverlay.xul (还是用Total Commander搜索attachment搜到的,它可以搜索压缩包中的文件内容,并且在wine上面运行得很好)。可怎么改都不对。

没办法,还是google吧。没想到一搜"thunderbird attachementView"(后者是在xul文件里面看见的附件栏的id)就找到了: MozillaZine Knowledge Base - Attachment Pane Height

又试用了一下Thunderbird

我在公司一直是用sylpheed-claws(前不久为了撇清跟sylpheed的关系改名为claws-mail)来收发邮件的(在家里有gmail就够了 :-)),但现在不怎么“玩”cygwin了,觉得每次都要拉起一个X server来跑sylpheed-claws有点烦,于是又来试用Mozilla Thunderbird。

其实几年前在家里用过一年Thunderbird,现在也忘了为什么后来没有用它了。

但Thunderbird 对于thread的支持让我决定还是用claws-mail: Thunderbird将排序和分组这搅和在一起,只有选择按thread(中文翻译为话题)排序才能再选择按排序分组,也就是说我没有办法按照常见的按 thread分组再按时间排序。"

2006年12月18日星期一

codegear.com网站终于建立起来了

不知道是否会出现当初Borland改名为Inprise时那样的情况: 用户们找不到原来的Borland,以为它已经不再存在了。

2006年12月17日星期日

我们终于有了gnome-cn planet

http://planet.gnome-cn.org/

鄙人的GNOME部分也有幸忝列其中,很高兴有一个跟大家交流的地方。

现在GNOME用起来越来越顺手,这段时间都没有碰到多少要解决的问题,所以这方面的日志写得少了。看来以后得多写几篇 :-)

因为工作关系,我没有太多时间去逛BBS和论坛,倒是很喜欢去Planet这类日志网站。我常去以下几个网站:

P.S 该网站的Logo颜色搭配得太差了,呼吁jcome给重新设计一个吧:-)

XUL学习杂感

  • 目前搞到三份教程: Rapid Application Development with Mozilla, Create Application with Mozilla, XUL Tutorial. 正在看的是中间一份;
  • XPFEGRE, XRE, XPToolkit和XULRunner是什么关系?
  • 初学XUL时还是用mozilla做试验比较好,如果你写的XUL里面有错误,似乎Firefox会啥反应也没有, XULRunner亦然,但mozilla会帮你指出来。应该是某个选项控制这个;
  • Mozilla是如何解决XUL里控件文本的本地化问题的?它直接使用了XML技术里面的DTD/entity,这很有些匪夷所思啊
  • menupopup, popup, popupset有什么差别?
  • Firefox里面的toolbar为什么没有grippy(就是原来netscape里面工具条左边的折叠条)?

2006年12月15日星期五

Firefox扩展: CHM Reader

http://addons.mozilla.org/firefox/3235/

An extension make firefox support Compiled HTML(.chm) file reading.

Works with Firefox 1.5-2.0. 但好像不能在Linux版本的firefox上工作。

为国人Ling Li所作。

2006年12月10日星期日

Mozilla/XUL平台在哪些方面吸引我

前几天说,我想学习一下XUL了。为什么呢?

我赖以混饭吃的项目组的项目的业务层越来越复杂,用户们也不满于我们接纳和实现功能需求的速度,期望能够自己搞二次开发。为此我们在前一个版本中 全面加强了脚本扩展,以便能够方便外围业务的开发。但这只是解决了逻辑方面的问题,但缺少界面扩展能力,那怕只是提供几个选项的简单的对话框。

通过Firefox的使用,我看到了Mozilla作为一个开发平台的能力,而ThunderBird, Komodo等也说明了Mozilla不仅仅是个浏览器。所以我想学习一下XUL,如果明年能够推动迁移到这个上面来就比较有意思了,即使这个目标达不到我也期望能够从中学到很多思想。

那么,Mozilla/XUL具体在哪些方面吸引我?

  • 脚本与系统完全融为一体,可以响应界面,可以创建XPCOM对象(有点遗憾的是,Python脚本支持的进展有点慢);
  • 界面的快速开发功能(XUL),界面元素也相当丰富(对于我们的应用,目前还欠缺一个datagrid, 或者说可编辑的treelist),我对于还要考虑对话框怎么调整大小、分隔条的行为这些问题感到厌烦;
  • 可通过XPCOM扩展系统;
  • overlay机制,可以通过扩展修改核心系统的行为(也包括界面,比如在一个已有窗口中插入一些元素);
  • 本身支持HTML的显示,这会给内容的展现带来很大的方便;
  • 包,各个包之前是相互独立的,各有自己的名称空间,而overlay机制又允许包之间可以打交道;
  • 完整而简单的多语言解决方案。多语言这个问题初看起来简单,但自己实现起来就觉得需要考虑好多东西,比如字符集问题,语言包的更新问题(程序修改过之后,如何识别哪些语句需要更新),界面的翻译问题等等;
  • 跨平台

不过目前也觉得有些不太好的地方:

  • 体系有点太复杂了,掌握XML, XUL, JavaScript和CSS似乎是最基本的,还有XPCOM, XBL, RDF, DOM...,还有一些工具的用法,初学者太难于上手了;
  • 界面缺少工具WYSWYG工具,别说Delphi那样的完整的RAD系统了,连glade, wxglade那样的工具都没有见到;
  • 中文资料比较少,也就在limodou的学习笔记上看见过一些XUL Tutorial的翻译和学习心得;
  • 似乎内存占用有点大(其实我倒觉得挺正常,但我们的用户太挑剔了 :-()

2006年12月7日星期四

Debian Weekly News #41

Debian Weekly News #41

以下只是我感兴趣的一些东西

  • Etch只能采用GNOME 2.14了,想要2.16就只能等backport了
  • Debian Installer出了第一个RC
  • 新的签名密钥,这篇Secure APT讲得比较详细
  • IceWeasel出现在unstable了
  • 新的软件包
    • bashdb ― BASH debugger.
    • bmpx ― Beep Media Player eXperimental.
    • bouml ― UML2 tool box to specify and generate code.
    • dissy ― Graphical frontend for objdump.
    • gcin ― GTK+ based input method platform for Chinese users.
    • iceweasel ― Lightweight web browser based on Mozilla.
    • toilet ― Display large colourful characters in text mode.
    • xmlindent ― XML stream reformatter.

2006年12月4日星期一

用proxy插件解决一些网站无法访问的问题

以前一直是用tor来解决一些网站无法访问的问题,但它的效果一直不太好,很多网页依旧访问不了。这两天在家里连sf.net都无法访问了,只得尝试其它方法。

Firefox的插件网站上搜了一下与proxy有关的插件,发现了一下几个插件:

  • gladder: Get over Great Firewall with Great Ladder! 这个名字取得有意思:-)。不过它只是对它列出的网址使用proxy

  • HttProxy: Access any page via configured web based proxy. 基于Web服务器中转,不过网址不加密

  • PhProxy: Open block pages automatically using web Proxy (PhProxy). 这个插件不错,也是web-based proxy,还可以加密网址

推荐使用PhProxy。