Dotdesktop发布

 

 

.desktoplinux桌面环境下一种配置文件,它的详细说明可以参考http://standards.freedesktop.org/desktop-entry-spec/desktop-entry-spec-0.9.4.html。一般用它来描述应用程序入口,以便把应用程序集成到桌面中来,比如把应用程序加入到开始菜单中,让应用程序和特定文件类型的文件关联起来等等。

 

最近在开发一个嵌入式桌面模块,也要操作.desktop文件,但没有找到一个合适的存取.desktop文件的函数库。只好从matchbox中拆了一段代码出来,凑合着用上了,总是感觉不太爽。

 

刚好过几天要给同事讲解builder模式,需要一个实际例子,所以考虑用C语言编写一个存取.desktop文件的函数库。一方面自己可以用,一方面也可以作为讲解builder模式的示例。

 

当然这只能抽业余时间去做,上周五花了一个晚上,周六花了一整天时间,完成了全部编码,基本测试也通过了。周日要陪女朋友,没有时间去重构,先发布一个0.1吧,有时间再整理一下代码。

 

.desktop文件格式完全兼容Win32下的Ini文件,并做了些扩展。所以Dotdesktop函数库不但可以用来操作.dotdesktop文件,同时也可以用来操作Ini文件。下面这个例子是SCIM带的.desktop(略有删减),或许能给大家一个直观的认识:

 

[Desktop Entry]

Encoding=UTF-8

Name=SCIM Input Method Setup

Name[cs]=Nastavení vstupní metody SCIM

Name[de]=Einstellungen der SCIM-Eingabemethoden

Name[fr]=Configuration de la Méthode de Saisie SCIM

Name[it]=Configurazione del metodo di inserimento SCIM

Name[ja]=SCIM入力メソッドの設定

Name[zh_CN]=SCIM 输入法设置

Name[zh_TW]=SCIM 輸入法設定

Comment=Setup utility for Smart Common Input Method platform

Comment[cs]=Nástroj pro nastavení Smart Common Input Method platformy

Comment[de]=Einrichtungswerkzeug für die Smart Common Input Method-Plattform

Comment[zh_CN]=智能通用输入法平台的设置工具

Comment[zh_TW]=泛用智慧型輸入法平台的設定工具

Exec=scim-setup

Icon=scim-setup.png

Terminal=false

Type=Application

StartupNotify=true

Categories=Applications;Settings;

 

修改历史:

2006-5-18 0.1 创建

2006-5-28 0.2 修改一个内存泄露BUG,作了更完整的测试,基本上比较稳定了。