Category: Opensource

  • Unicode编码中的简繁中文互转

    现在简繁中文的转换已经不像从前那样,是gbk/ big5两种文字编码之间的转换,而是在同一个编码,Unicode,当中不同编码的映射。当然,简繁中文绝对不是简单的一一对应关系,有一对多的个别情况,例如简体的“后” 对应繁体的 “后”和“後”。行业词汇也有差别,例如大陆说“宽带”,而港台说“寬頻”;大陆说“操作系统”,而港台说“作業系統” 等等。 因此当我决定用Python程序将森海塞尔简体中文网站转换为繁体中文网站时,我的计划分三个步骤: 提取行业高频关键字,找到简体和繁体的对应,编成词典 利用现有的Python中文本地化工具包,将关键字之外的文字转换 请港台Freelancer人工校对,确保本土化 第一步,我的词典替换程序在此: 第二步,我利用的是pyzh中文工具包中的fanjian.py完成。特别感谢pyzh项目组的全部成员和fanjian.py程序作者ne.manman和zsp007! 下面就交给香港的朋友了,希望不会累坏他:) 顺便说,Songbird很不错,有点山寨iTunes,那又怎样呢?毕竟Linux下面还没iTunes。 Songbird

  • 从6.7到0.01

    编程果然不能偷懒!我这一偷懒,CPU就不知道要受多少累、冒多少热气了。一开始,我采用了很无脑的穷举方法,复杂度是O(n**2),结果肯定正确的,但是长度一万的数组就可以耗去6.7秒的CPU时间。 raymond@raymond-laptop:~/_Work/Dev/python$ python le.py time:  0:00:06.708924 return:  1 0 0 0 之后,在高手提示下将复杂度降低到n (log n + 1) ,结果不错了。 raymond@raymond-laptop:~/_Work/Dev/python$ python le.py time:  0:00:00.010430 return:  1 0 0 0 对应改进后的代码: def leader3(array): t = len(array) //2 array.sort() p = -1 c = 1 for i in array: if p == i : c+=1 if c > t:…

  • CLI(命令行界面)的网络监控

    图形界面的网络流量控制并不稀罕了,我总算找到一个CLI的,给我那没有GUI的Ubuntu Server装上了。很简单,但是并不简陋哦!即时、平均、最大数值都可以看到。 我是从这里发现bwm-ng的。

  • 我的第一个CAPTCHA

    Securimage 是开源的PHP CAPTCHA脚本。利用Securimage,你可以很快的做出如图的校验码出来,简单的把人类和机器人分开(至少能把不太聪明的机器人挡住)。 Securimage 需要 GD2 图形程序库。

  • 自定义Joomla!的模块/组件参数

    Joomla!的灵活结构再次让我省心省事了。虽然Joomla!的菜单导航组件很不错,但是一些不算很通用的功能就需要自己定制,例如为每个栏目设定背景图或者标题图。 我是这样做的: /administrator/components/com_menus/models/metadata/component.xml <?xml version=”1.0″ encoding=”utf-8″?> <metadata> <state> <name>Component</name> <description>Component Parameters</description> <params> <param name=”page_title” type=”text” size=”30″ default=”” label=”Page Title” description=”PARAMPAGETITLE” /> <param name=”show_page_title” type=”radio” default=”1″ label=”Show Page Title” description=”SHOW/HIDE THE PAGES TITLE”> <option value=”0″>No</option> <option value=”1″>Yes</option> </param> <param name=”pageclass_sfx” type=”text” size=”20″ default=”” label=”Page Class Suffix” description=”PARAMPAGECLASSSFX” /> <param name=”@spacer” type=”spacer” default=”” label=”” description=”” /> <param…

  • 新版网站成长历程

    最近我在做森海塞尔中国网站的改版,改版的目标是采用森海塞尔全球网站的新风格,并整理网站结构和内容。全球站采用的CMS大概是来自IBM Lotus的,加上Windows Server、MS SQL Server,身价应该在一万欧以上。作为一个挑战,我打算用免费的开源解决方案来办这件事。 我打算用LAMP环境下的Joomla! 开源CMS系统来做这个项目。 这个是目标效果:) 这次森海塞尔全球站做的要比上一版规范的多,虽然还不是XHTML,但是CSS+DIV已经取代了<table>,这样就很好办了。我直接把CSS拿过来,稍加调整,就已经有了点样子。补充一下,Joomla!自带的menu模块的可定制度非常高,顶部和左边的导航就是用menu模块和CSS完成的。 渐入佳境了。产品分类是利用Joomla!的Extend Menu模块做的。 已经马马虎虎可以糊弄人了:) 更新:升级完成,新旧对比:

  • 终于等来了ubuntu 8.04 Hardy Heron

    首先我相当的喜欢这个Clock applet:时间、日期、日历、世界时、天气、温度都有了。当然,天气和温度是需要网路连接的。似乎还没有位置个数的限制。Gnome2.22真不错。 其它一些我注意到的改进: 全屏视频播放的表现也有很大提高(Ati x1300显卡)。 待机问题解决了!! 不再需要安装xserver-xgl来开启compiz了。 pidgin是2.4.1版本,支持QQ,还支持Sametime。 amule是svn版本了,支持>2GB文件等等。 还没升级的朋友,别犹豫了。

  • 解剖Joomla! 1.5的模板架构

    Joomla! (注意全名包括这个“!”)1.5总算出来了,目前更是更新到了1.5.2。难拒其诱惑,我打算用Joomla!做网站了。下面说说Joomla! 1.5的模板吧。 如图,beez是随1.5发行包而来的一套功能展示布景,虽然不是很花哨,但是大大小小的模板功能基本都用到了。值得解剖一番。先看看几个必要文件和文件夹: templateDetails.xml 这个是模板的编目文件,类似windows软件中setup.ini这样的角色。 index.html 名字很正经,但没什么用,只是为了避免文件夹索引被显示出来而已。 index.php 模板文件的入口,主要的布局和布局逻辑都在这里。 params.ini 模板参数文件。简单的模板是不需要这个的,但是如果你想设计一个同时适应1280和1440的模板,可能就需要使用参数了。 template_thumbnail.png 这个是模板的预览图,一般都不大,200×150左右,用于在模板管理界面上看到模板的预览。 favicon.ico 网站的图标。如有此文件,Joomla!会自动在模板中显示出来。 html文件夹用来存放override页面,就是用来取代系统模组缺省模板的。例如:/templates/beez/html/mod_search/default.php 将取代 /modules/mod_search/tmpl/default.php。 下面标注一下最重要的templateDetails.xml和index.php文件。首先是templateDetails.xml文件: <?xml version=”1.0″ encoding=”utf-8″?> <!DOCTYPE install PUBLIC “-//Joomla! 1.5//DTD template 1.0//EN” “http://dev.joomla.org/xml/1.5/template-install.dtd”> <install version=”1.5″ type=”template”> <!– 下面这些模板信息,套用过来填写你自己的就可以了 –> <name>beez</name> <creationDate>19 February 2007</creationDate> <author>Angie Radtke/Robert Deutz</author> <authorEmail>[email protected]</authorEmail> <authorUrl>http://www.run-digital.com</authorUrl> <copyright></copyright> <license>GNU/GPL</license> <version>1.0.0</version> <description>Accessible template for Joomla 1.5</description> <!–…