<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' version='2.0'><channel><atom:id>tag:blogger.com,1999:blog-4537652894405041016</atom:id><lastBuildDate>Fri, 04 Apr 2008 15:54:17 +0000</lastBuildDate><title>blog.URLShow.com</title><description/><link>http://blog.urlshow.com/</link><managingEditor>徐晨阳</managingEditor><generator>Blogger</generator><openSearch:totalResults>33</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-5654417886088476812</guid><pubDate>Fri, 04 Apr 2008 15:38:00 +0000</pubDate><atom:updated>2008-04-04T23:54:17.875+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>ubuntu</category><title>ThinkPad X61安装Ubuntu</title><description>这两天在ThinkPad x61本本上安装ubuntu7.10。&lt;br /&gt;方法很简单，修改一下硬盘分区，确保有足够的空闲磁盘空间，C区安装的是Vista，D区保存工作数据。&lt;br /&gt;下载个7.10的ISO文件，解压缩到D区根目录下，关闭杀毒软件，双击wubi-cdboot.exe。&lt;br /&gt;重启以后开始安装Ubuntu，安装过程忽略，重启以后注意Vista的启动菜单是最后一项，第一个Windows启动项目是ThinkPad的备份恢复系统。&lt;br /&gt;刚安装好的Ubuntu是没有3D效果的。&lt;br /&gt;&lt;br /&gt;&lt;code&gt;mkdir -p ~/.config/compiz/ &amp;amp;&amp;amp; echo SKIP_CHECKS=yes &gt;&gt; ~/.config/compiz/compiz-manager&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;打开3D效果。&lt;br /&gt;&lt;br /&gt;Firefox刚安装的Google 工具栏书签不能同步，一直显示“下载书签”。&lt;br /&gt;需要安装libstdc++5&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;sudo apt-get install libstdc++5&lt;br /&gt;&lt;/span&gt;安装以后，在Firefox&gt;工具&gt;附加软件中禁用Google工具栏，重启Firefox再启用，重启就好了。&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;</description><link>http://blog.urlshow.com/2008/04/thinkpad-x61ubuntu.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-1891377624774597959</guid><pubDate>Tue, 04 Mar 2008 05:04:00 +0000</pubDate><atom:updated>2008-03-04T13:09:53.897+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>网址秀</category><title>增加推荐次数，记分方式修改</title><description>网址秀开始记录页面的推荐邮件发送次数，修改了记分方式。每个推荐邮件等于10分，总分为推荐次数乘以10加上投票总分。这样可以让排行榜更加合理。</description><link>http://blog.urlshow.com/2008/03/blog-post_04.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-3300931999743078535</guid><pubDate>Mon, 03 Mar 2008 04:20:00 +0000</pubDate><atom:updated>2008-03-03T12:25:16.666+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>核文器</category><title>词库扩充</title><description>核文器，对目前的词库进行了一次扩充整理，可识别词汇增加到37661。&lt;br /&gt;用户测试比较少，缺少测试信息。看来需要进行一定范围的推广。</description><link>http://blog.urlshow.com/2008/03/blog-post.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-4172642472677261430</guid><pubDate>Wed, 27 Feb 2008 04:11:00 +0000</pubDate><atom:updated>2008-02-27T12:14:15.383+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>核文器</category><title>收集成语词库</title><description>今天在网上收集了三万多条成语，经过整理，一次性灌入核文器，目前系统已经可以识别15525条中文词汇了，这里是指固定词组，组合搭配词组则不可计算。</description><link>http://blog.urlshow.com/2008/02/blog-post_27.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-3408522805575005334</guid><pubDate>Sun, 24 Feb 2008 16:27:00 +0000</pubDate><atom:updated>2008-02-25T09:48:33.870+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>核文器</category><title>核文器提高文章字数限制</title><description>对程序进行了一些优化，提高了运算速度。&lt;br /&gt;将校对文章字数上限提高到一万字，争取一万字校对也控制在一秒钟内。</description><link>http://blog.urlshow.com/2008/02/blog-post_25.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-4279728910804535330</guid><pubDate>Sat, 23 Feb 2008 07:54:00 +0000</pubDate><atom:updated>2008-02-23T18:41:19.636+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>核文器</category><category domain='http://www.blogger.com/atom/ns#'>网站</category><title>“核文器”正式开通</title><description>全国首创在线文章校对工具“核文器”正式开通。网址:&lt;a href="http://www.hewenqi.com"&gt;www.hewenqi.com&lt;/a&gt;&lt;br /&gt;“核文器”这个名字是我夫人首先提出的，意思是核对文章的工具，这与“核武器”没有什么关系。&lt;br /&gt;程序开发过程并不算长，主要的工作是词库整理，通过对海量词语的分析整理，建立了现在使用的基础词库。但是错误词库还很欠缺，需要广大网友积极参与。</description><link>http://blog.urlshow.com/2008/02/blog-post_23.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-7483741665057656372</guid><pubDate>Fri, 22 Feb 2008 03:52:00 +0000</pubDate><atom:updated>2008-02-23T10:46:39.318+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>网站</category><title>网站日志分析</title><description>服务器刚刚建起来，可是日志每天都几百兆，分析了本月21号的日志，结果如下：&lt;br /&gt;&lt;ul&gt;&lt;li&gt;qihoo.com 访问 565,973 次&lt;/li&gt;&lt;li&gt;yodao.com 访问 57,774 次&lt;/li&gt;&lt;li&gt;soso.com 访问 40,543 次&lt;/li&gt;&lt;li&gt;yahoo.cm 访问 6,110 次&lt;/li&gt;&lt;li&gt;Google.com 访问 596 次&lt;/li&gt;&lt;/ul&gt;并且频繁查找一些不是本站的域名和不存在的文件。应该是本站的IP曾经被服务商用作虚拟主机，为至少为80个网站提供过服务。&lt;br /&gt;&lt;br /&gt;明白了事情的原因，不知道是该哭还是该笑，服务器被频繁访问有些压力，但是有很多人错误的访问我的主页，算不算免费广告 ^_^</description><link>http://blog.urlshow.com/2008/02/blog-post_22.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-4511605763734499349</guid><pubDate>Tue, 19 Feb 2008 11:09:00 +0000</pubDate><atom:updated>2008-02-19T19:29:03.238+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>网站</category><title>www.URLShow.com可以访问了</title><description>我的主站 http://www.URLShow.com 今天可以访问了，以前选择了好多方法，包括自己写些CMS都不是很理想。目前选择了MoinMoin作为内容发布系统，感觉还不错，目前在调整中。</description><link>http://blog.urlshow.com/2008/02/wwwurlshowcom.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-697742073076446376</guid><pubDate>Tue, 19 Feb 2008 03:16:00 +0000</pubDate><atom:updated>2008-02-19T20:53:09.571+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>linux</category><category domain='http://www.blogger.com/atom/ns#'>网站</category><title>iptables防火墙安装注意事项和常用命令</title><description>在服务器上设置了防火墙，设置过程中不小心在把自己也给防了。。。总结一下经验教训：&lt;br /&gt;&lt;ul&gt;&lt;li&gt;远程访问的时候&lt;/li&gt;&lt;ul&gt;&lt;li&gt;先 iptables -A INPUT -p tcp --dport 22 -j ACCEPT 打开ssh端口，再iptables -P INPUT DROP，否则就哭了。&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;运行 iptables -F清除记录前先iptables -P INPUT ACCEPT，否则还是个哭。&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;有FTP SERVER需要打开21和20端口，并且&lt;/li&gt;&lt;ul&gt;&lt;li&gt;打开内对内连接 iptables -A INPUT -i lo -j ACCEPT&lt;/li&gt;&lt;li&gt;打开客户端的已确认连接 iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT&lt;/li&gt;&lt;li&gt;如果采用被动模式需要设置被动端口 pasv端口，然后用iptables -A INPUT -p tcp --dport xxxx:xxx -j ACCEPT打开被动模式端口&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;如果apache使用proxy&lt;/li&gt;&lt;ul&gt;&lt;li&gt;准许代理ip访问&lt;/li&gt;&lt;li&gt;在同一个服务器iptables -A INPUT -i lo -j ACCEPT就可以&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;每次重启iptables的配置要使用iptables-restore重新载入，使用iptables-save保存配置&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt; iptables常用命令：&lt;br /&gt;&lt;ul&gt;&lt;li&gt;清除列表 iptables -F&lt;/li&gt;&lt;li&gt;准许web访问 iptables -A INPUT -p tcp --dport 80 -j ACCEPT&lt;/li&gt;&lt;li&gt;准许某IP访问 iptables -A INPUT -p tcp -s xxx.xxx.xxx.xxx -j ACCEPT&lt;/li&gt;&lt;li&gt;禁止某IP访问 iptables -A INPUT -p tcp -s  xxx.xxx.xxx.xxx -j DROP&lt;/li&gt;&lt;li&gt;禁止为授权的访问 iptables -P INPUT DROP&lt;/li&gt;&lt;li&gt;打开内对内连接 iptables -A INPUT -i lo -j ACCEPT&lt;/li&gt;&lt;li&gt;打开客户端的已确认连接 iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT&lt;/li&gt;&lt;li&gt;显示当前配置 iptables -L&lt;/li&gt;&lt;li&gt;保存配置 iptables-save&lt;/li&gt;&lt;li&gt;恢复配置 iptables-restore&lt;/li&gt;&lt;/ul&gt;</description><link>http://blog.urlshow.com/2008/02/iptables.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-2673753483345269191</guid><pubDate>Tue, 19 Feb 2008 03:09:00 +0000</pubDate><atom:updated>2008-02-19T11:25:39.946+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>网站</category><title>讨厌的奇虎机器人</title><description>服务器才刚刚启用2天，就发现奇虎的bot不停访问，设置了robots.txt也完全没有作用。日志文件不停增长，只好设置iptables对奇虎的IP予以屏蔽。</description><link>http://blog.urlshow.com/2008/02/blog-post_19.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-5557493137403206787</guid><pubDate>Sun, 17 Feb 2008 18:12:00 +0000</pubDate><atom:updated>2008-02-18T02:22:05.522+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>新应用</category><category domain='http://www.blogger.com/atom/ns#'>网站</category><title>清理博客，新应用重大突破</title><description>07年我在开发一套blog聚合系统，收集其他博客的信息发布到我的博客上。&lt;br /&gt;开发过程很有意思，但最终结果根本没有实用价值。&lt;br /&gt;昨天调整好了博客系统，今天把以前遗留下来的那些转载文章删除掉，然后发现我的博客只有寥寥数篇。&lt;br /&gt;&lt;br /&gt;晚上有通宵达旦，升级新应用，新应用已经可以处理英文了，她到底是个什么功能的系统呢？我现在还不能公布，开发马上就要完毕了。已经到了最终测试、最终数据输入阶段了。新系统应该会采用新的域名。</description><link>http://blog.urlshow.com/2008/02/blog-post.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-5686954800396233683</guid><pubDate>Sat, 16 Feb 2008 17:04:00 +0000</pubDate><atom:updated>2008-02-17T01:05:43.570+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>网站</category><title>urlshow终于有了自己的服务器</title><description>今天URLShow终于有了自己的服务器，折腾到凌晨Blog才能够使用。</description><link>http://blog.urlshow.com/2008/02/urlshow.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-772478126966655382</guid><pubDate>Thu, 05 Jul 2007 01:29:00 +0000</pubDate><atom:updated>2007-07-05T09:47:05.161+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>google</category><title>Google移动手机号更改方法</title><description>Google Calendar 推出移动服务好久了，前段时间我使用的很好，可是更改手机号以后，重新设定手机号码就老不给我发送校验代码。换其他手机号也不行，郁闷了好久。&lt;br /&gt;今天突然想到是否需要把原来的服务退定，于是将00000(5个0)发送到Google移动服务的号码10666226，返回一条信息说我没有定任何服务，然后再在Google Calendar移动设置上输入手机号点发送验证码，立刻收到验证码，一切都好用了。虽然最后也不清楚到底什么原因，但还是开心的很，遇到相同问题的朋友可以如法炮制。</description><link>http://blog.urlshow.com/2007/07/google.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-8467274917305138885</guid><pubDate>Thu, 28 Jun 2007 06:43:00 +0000</pubDate><atom:updated>2007-06-28T14:56:52.660+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>google</category><category domain='http://www.blogger.com/atom/ns#'>ubuntu</category><title>sources.list中增加google源出错的处理方法</title><description>在sources.list增加这段话引起公钥错误的话&lt;br /&gt;deb http://dl.google.com/linux/deb/ stable non-free&lt;br /&gt;&lt;br /&gt;运行&lt;br /&gt;$gpg --keyserver hkp://subkeys.pgp.net --recv-keys A040830F7FAC5991&lt;br /&gt;$gpg --export --armor A040830F7FAC5991 | sudo apt-key add -&lt;br /&gt;&lt;br /&gt;或者&lt;br /&gt;&lt;br /&gt;$wget -q -O - http://dl.google.com/linux/linux_signing_key.pub | sudo  apt-key add -&lt;span style="font-family: monospace;"&gt;&lt;/span&gt;</description><link>http://blog.urlshow.com/2007/06/sourceslistgoogle.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-7786207399342894875</guid><pubDate>Fri, 06 Apr 2007 02:08:00 +0000</pubDate><atom:updated>2007-04-06T20:59:45.812+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>linux</category><category domain='http://www.blogger.com/atom/ns#'>SciTE</category><category domain='http://www.blogger.com/atom/ns#'>Python</category><title>SciTE输入输出编码设置</title><description>刚使用SciTE的时候默认编码是ISO-88591，所以输入输出的中文会是乱码。&lt;br /&gt;每次还需要在菜单项中选择编码为UTF-8，再选择编程语言，输出才能是中文，这样作很麻烦。&lt;br /&gt;&lt;br /&gt;SciTE官方网站上有详细的修改方法。&lt;br /&gt;在.SciTEUser.properties配置文件中增加两项&lt;br /&gt;code.page=65001&lt;br /&gt;output.code.page=65001&lt;br /&gt;将输入输出全部改成UTF-8&lt;br /&gt;&lt;br /&gt;如果操作系统不是UTF-8那么修改输出设置output.code.page&lt;br /&gt;output.code.page=65001#UTF-8&lt;br /&gt;output.code.page=936#GBK&lt;br /&gt;output.code.page=950#BIG5</description><link>http://blog.urlshow.com/2007/04/scite_06.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-4507035283206836079</guid><pubDate>Thu, 05 Apr 2007 10:05:00 +0000</pubDate><atom:updated>2007-04-05T18:06:08.208+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Python</category><title>Python 的哲学， Python 之禅</title><description>优美胜过丑陋&lt;br /&gt;明确胜过含蓄&lt;br /&gt;简单胜过复杂&lt;br /&gt;复杂胜过难懂&lt;br /&gt;扁平胜过嵌套&lt;br /&gt;稀疏胜过密集&lt;br /&gt;易读亦有价&lt;br /&gt;尽管实用会击败纯洁&lt;br /&gt;特例也不能特殊到打破规则&lt;br /&gt;除非明确地使其沉默&lt;br /&gt;错误永远不应默默地溜掉&lt;br /&gt;面对着不确定，要拒绝猜测的诱惑&lt;br /&gt;应该有一个--宁肯只有一个--明显的实现方法&lt;br /&gt;也许这个方法开始不是很明显，除非你是荷兰人&lt;br /&gt;尽管不做通常好过立刻做&lt;br /&gt;但现在做也要胜过不去做&lt;br /&gt;如果实现很难解释，那它就是一个坏想法&lt;br /&gt;如果实现容易解释，那它可能就是一个好想法&lt;br /&gt;名字空间是一个响亮的出色想法--就让我们多用用它们&lt;br /&gt;&lt;br /&gt;-- Tim Peters</description><link>http://blog.urlshow.com/2007/04/python-python.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-1226721798986201214</guid><pubDate>Wed, 04 Apr 2007 10:03:00 +0000</pubDate><atom:updated>2007-04-04T19:10:04.914+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>linux</category><category domain='http://www.blogger.com/atom/ns#'>Python</category><title>推荐一款编辑器SciTE</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_c-3CFP-ldmQ/RhN5w_PzNPI/AAAAAAAAAPg/yrBUnDYSHEk/s1600-h/Screenshot-os.py+-+SciTE.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://bp3.blogger.com/_c-3CFP-ldmQ/RhN5w_PzNPI/AAAAAAAAAPg/yrBUnDYSHEk/s320/Screenshot-os.py+-+SciTE.png" alt="" id="BLOGGER_PHOTO_ID_5049513489730843890" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;SciTE编辑器对编程语言支持的非常好支持三十余种语言，是专为程序员订做的的编辑器。几百K大小，启动速度很快，代码的显示非常美观，支持代码折叠、自动完成。还能根据编译输出结果跳到出错行，还有很多程序 员需要的功能。通过配置文件进行配置非常灵活同时也很复杂，适合专业人士。&lt;br /&gt;&lt;br /&gt;安装:&lt;code&gt;&lt;br /&gt;sudo apt-get install scite&lt;/code&gt;</description><link>http://blog.urlshow.com/2007/04/scite_04.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-3125418031595765600</guid><pubDate>Wed, 04 Apr 2007 09:21:00 +0000</pubDate><atom:updated>2007-04-04T17:27:14.522+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Python</category><title>Ubuntu下创建SciTE的python语言API自动补全文件</title><description>&lt;a href="http://scintilla.sourceforge.net/gen_python_api.zip"&gt;gen_python_api.zip&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;#创建python.api&lt;br /&gt;python gen_python_api.py&lt;br /&gt;#创建api目录&lt;br /&gt;sudo mkdir /usr/share/scite/api&lt;br /&gt;#复制api文件&lt;br /&gt;sudo cp python.api /usr/share/scite/api&lt;br /&gt;&lt;br /&gt;使用Ctrl+Enter热键调用</description><link>http://blog.urlshow.com/2007/04/ubuntuscitepythonapi.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-4173920802870937118</guid><pubDate>Wed, 04 Apr 2007 09:15:00 +0000</pubDate><atom:updated>2007-04-04T18:01:55.030+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>linux</category><category domain='http://www.blogger.com/atom/ns#'>Python</category><title>SciTE配置文件</title><description>&lt;code&gt;#~ api配置文件&lt;br /&gt;api.*.py=$(SciteDefaultHome)\api\python.api&lt;br /&gt;#~ 中文字符乱码正确显示&lt;br /&gt;UTF-8:code.page=65001&lt;br /&gt;GBK:code.page=936&lt;br /&gt;Big5:code.page=950&lt;br /&gt;#~ 最大化&lt;br /&gt;position.width=-1&lt;br /&gt;position.height=-1&lt;br /&gt;#~ 滚动条&lt;br /&gt;end.at.last.line=0&lt;br /&gt;#~ 工具条&lt;br /&gt;toolbar.visible=1&lt;br /&gt;#~ 状态栏&lt;br /&gt;statusbar.visible=1&lt;br /&gt;#~ 背景颜色&lt;br /&gt;selection.back=#0000FF&lt;br /&gt;#~ 自动补全xml结束标签&lt;br /&gt;xml.auto.close.tags=1&lt;br /&gt;#~ 记录最近打开的文件&lt;br /&gt;save.recent=1&lt;br /&gt;#~ 显示行号&lt;br /&gt;line.margin.visible=1&lt;br /&gt;#~ 设置状态栏&lt;br /&gt;statusbar.text.1= www.urlshow.com [ 行: $(LineNumber) , 列: $(ColumnNumber) ,共:$(NbOfLines) ] ($(OverType)) | ($(EOLMode))&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;其他详细配置参考&lt;a href="http://scintilla.sourceforge.net/SciTEDoc.html"&gt;SciTE文档&lt;/a&gt;</description><link>http://blog.urlshow.com/2007/04/scite.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-5512848016756141890</guid><pubDate>Wed, 04 Apr 2007 06:35:00 +0000</pubDate><atom:updated>2007-04-04T14:51:17.470+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>linux</category><title>Ubuntu文件编码转换iconv</title><description>中文Windows使用的字符集是GBK&lt;br /&gt;Ubuntu默认字符集是UTF-8&lt;br /&gt;如果想将GBK字符集的文件转换成UTF-8可以使用Ubuntu自带的工具iconv&lt;br /&gt;&lt;code&gt;&lt;br /&gt;Usage: iconv [OPTION...] [FILE...]&lt;br /&gt;转换给出文件的编码从一种到另外一种.&lt;br /&gt;&lt;br /&gt;输入/输出格式规范&lt;br /&gt;-f, --from-code=NAME       原始文本编码&lt;br /&gt;-t, --to-code=NAME         输出编码&lt;br /&gt;&lt;br /&gt;信息&lt;br /&gt;-l, --list                 列出所有已知编码字符集&lt;br /&gt;&lt;br /&gt;输出控制:&lt;br /&gt;-c                         忽略输出中的无效字符&lt;br /&gt;-o, --output=FILE          输出文件&lt;br /&gt;-s, --silent               suppress warnings&lt;br /&gt;   --verbose              打印进程信息&lt;br /&gt;&lt;br /&gt;-?, --help                 Give this help list&lt;br /&gt;   --usage                Give a short usage message&lt;br /&gt;-V, --version              Print program version&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;例子： SicTE本地语言修改成中文&lt;code&gt;&lt;br /&gt;iconv -f GBK -t utf-8 locale.zh_gb2312.properties -o locale.properties&lt;/code&gt;&lt;br /&gt;修改locale.properties文件&lt;code&gt;&lt;br /&gt;translation.encoding=GBK&lt;/code&gt;&lt;br /&gt;成&lt;code&gt;&lt;br /&gt;translation.encoding=UTF-8&lt;/code&gt;&lt;br /&gt;把locale.properties复制到/usr/share/scite</description><link>http://blog.urlshow.com/2007/04/ubuntuiconv.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-6348768888571193371</guid><pubDate>Fri, 30 Mar 2007 08:36:00 +0000</pubDate><atom:updated>2007-03-30T16:45:52.042+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>linux</category><category domain='http://www.blogger.com/atom/ns#'>Python</category><title>Python数组排序和倒序</title><description>&lt;pre&gt;&lt;span style="font-weight: bold;"&gt;顺序:&lt;/span&gt;&lt;br /&gt;&gt;&gt;&gt; a = [5, 2, 3, 1, 4]&lt;br /&gt;&gt;&gt;&gt; a.sort()&lt;br /&gt;&gt;&gt;&gt; a&lt;br /&gt;[1, 2, 3, 4, 5]&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;倒序1:&lt;/span&gt;&lt;br /&gt;&gt;&gt;&gt; a = [5, 2, 3, 1, 4]&lt;br /&gt;&gt;&gt;&gt; a.sort(cmp=lambda x,y: x-y)&lt;br /&gt;&gt;&gt;&gt; a&lt;br /&gt;[5, 4, 3, 2, 1]&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;倒序2&lt;/span&gt;&lt;br /&gt;&gt;&gt;&gt; a = [5, 2, 3, 1, 4]&lt;br /&gt;&gt;&gt;&gt; a.sort(reverse=True)&lt;br /&gt;&gt;&gt;&gt; a&lt;br /&gt;[5, 4, 3, 2, 1]&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;倒序3&lt;/span&gt;&lt;br /&gt;&gt;&gt;&gt; a = [5, 2, 3, 1, 4]&lt;br /&gt;&gt;&gt;&gt; a.sort()&lt;br /&gt;&gt;&gt;&gt; a.reverse()&lt;br /&gt;&gt;&gt;&gt; a&lt;br /&gt;[5, 4, 3, 2, 1]&lt;br /&gt;&lt;/pre&gt;</description><link>http://blog.urlshow.com/2007/03/python_30.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-4470676054627126921</guid><pubDate>Thu, 29 Mar 2007 05:28:00 +0000</pubDate><atom:updated>2007-03-29T13:41:34.293+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>linux</category><category domain='http://www.blogger.com/atom/ns#'>Python</category><title>Ubuntu下使用Python开发webservices</title><description>Python开发web services非常简单容易，在Ubuntu下开发更是得心应手。&lt;br /&gt;&lt;br /&gt;安装Python和ZSI&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;sudo apt-get install python2.4 python-zsi&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;MyServer.py&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;#!/usr/bin/env python&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;# -*- coding: utf-8 -*-&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;import time&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;from ZSI import dispatch&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;def getText():&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;    return 'http://www.urlshow.com'&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;def getTime():&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;    return time.localtime()&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;print "启动服务..."&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;dispatch.AsServer(port=3333)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;MyClient.py&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;#!/usr/bin/env python&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;# -*- coding: utf-8 -*-&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;from ZSI.client import Binding&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;b = Binding(host='localhost', port=3333)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;print '%i年,%i月,%i日,%i点,%i分,%i秒'%b.getTime()[:6]&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;print b.getText()&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;运行结果&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;2007年,3月,29日,13点,39分,7秒&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 51, 0);"&gt;http://www.urlshow.com&lt;/span&gt;</description><link>http://blog.urlshow.com/2007/03/ubuntupythonwebservices.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-1656309344823310039</guid><pubDate>Mon, 26 Mar 2007 13:17:00 +0000</pubDate><atom:updated>2008-02-17T18:15:46.322+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>linux</category><title>清除项目里的svn(或cvs)的小技巧</title><description>&lt;p&gt;在linxu下用&lt;a href="http://robbin.javaeye.com/"&gt;robbin&lt;/a&gt;的法子：&lt;/p&gt;&lt;br /&gt;&lt;div&gt;find . -type d -iname ".svn" -exec rm -rf {} \;   &lt;/div&gt;&lt;br /&gt;&lt;p&gt;在windows下用以下法子：&lt;/p&gt;&lt;br /&gt;&lt;div&gt;1、在项目平级的目录，执行dos命令：&lt;br /&gt;xcopy project_dir project_dir_1 /s /i &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;2、或者在项目根目录执行以下dos命令&lt;br /&gt;for /r . %%a in (.) do @if exist "%%a\.svn" rd /s /q "%%a\.svn"&lt;/div&gt;&lt;br /&gt;&lt;p&gt;其实我介绍的第二种方法可以用来干很多事的，比如把代码中的.svn替换为任意其他文件名并在硬盘根目录下执行，就可以从硬盘上删除所有的这个文件啦。&lt;/p&gt;</description><link>http://blog.urlshow.com/2007/03/svncvs_2461.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-1353388886125664484</guid><pubDate>Sun, 18 Mar 2007 11:31:00 +0000</pubDate><atom:updated>2007-03-18T19:31:34.509+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Python</category><title>[Python 学习]2.5版中字符串函数的变化</title><description>&lt;p&gt;新版本发布了。今天在 &lt;a title="" href="http://www.python.org"&gt;Python&lt;/a&gt;.list 邮件列表中看到有人开始讨论字符串中的一些新功能。&lt;/p&gt;&lt;br /&gt;&lt;p&gt;在2.5版中新增加了一个叫partition的函数，它可以做什么呢？举一个小例子：&lt;/p&gt;&lt;br /&gt;&lt;blockquote dir="ltr" style="margin-right:0px"&gt;&lt;br /&gt;&lt;p&gt;&amp;gt;&amp;gt;&amp;gt; 'http://www.donews.net/limodou'.partition('://')&lt;br&gt;('http', '://', 'www.donews.net/limodou')&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; 'file:/a.html'.partition('://')&lt;br&gt;('file:/a.html', '', '')&lt;/p&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;p&gt;从第一个例子可以看出，它用来根据指定的分隔符将字符串进行分割，如果字符串包含指定的分隔符，则返回一个3元的tuple，第一个为分隔符左边的子串，第二个为分隔符本身，第三个为分隔符右边的子串。第二个例子说明，如果找不到指定的分隔符，则返回仍然是一个3元的tuple，第一个为整个字符串，第二和第三个为空串。&lt;/p&gt;&lt;br /&gt;&lt;p&gt;那么有人要问，它与split(sep, 1)有什么区别呢？首先split返回的可能不是固定长度的返回值，它返回的是一个list，如果找到，则返回一个2元list，如果没找到，则返回一个1元的list，如：&lt;/p&gt;&lt;br /&gt;&lt;blockquote dir="ltr" style="margin-right:0px"&gt;&lt;br /&gt;&lt;p&gt;&amp;gt;&amp;gt;&amp;gt; 'a.b.c'.split(',', 1)&lt;br&gt;['a.b.c']&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; 'a.b.c'.split('.', 1)&lt;br&gt;['a', 'b.c']&lt;/p&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;p&gt;同时在找到的情况下，它并不返回分隔符。&lt;/p&gt;&lt;br /&gt;&lt;p&gt;在某些情况下partition(sep)和rpartition(sep)(从右向左匹配)与split(sep, 1)和rsplit(sep, 1)的功能是类似的。不过partition其实是为了替换find,index而产生的，并不是为了替换split而产生的。在许多情况下，我们需要先通过find来找到一个位置，再进行分割。而使用partition就方便得多。如：&lt;/p&gt;&lt;br /&gt;&lt;blockquote dir="ltr" style="margin-right:0px"&gt;&lt;br /&gt;&lt;p&gt;&amp;gt;&amp;gt;&amp;gt; a = 'http://www.donews.net'&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; pos = a.find('://')&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; if pos &amp;gt; -1:&lt;br&gt;...&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print a[:pos], a[pos+1:]&lt;br&gt;http www.donews.net&lt;/p&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;p&gt;而使用partition:&lt;/p&gt;&lt;br /&gt;&lt;blockquote dir="ltr" style="margin-right:0px"&gt;&lt;br /&gt;&lt;p&gt;&amp;gt;&amp;gt;&amp;gt; a = 'http://www.donews.net'&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; left, sep, right = a.partition('://')&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; print left, right&lt;br&gt;http www.donews.net&lt;/p&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;p&gt;是不是简单一些呢。&lt;/p&gt;&lt;br /&gt;&lt;p&gt;同时在2.5版中，startswith和endswith有变化，它的第一个参数可以是一个tuple了。这样用在判断几种情况的时候非常方便。比如要判断文件名后缀，原来只支持一个值时，可能要先拆分，再判断，用不上endswith，如：&lt;/p&gt;&lt;br /&gt;&lt;blockquote dir="ltr" style="margin-right:0px"&gt;&lt;br /&gt;&lt;p&gt;&amp;gt;&amp;gt;&amp;gt; a = 'a.gif'&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; import os.path&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; ext = os.path.splitext(a)[1]&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; if ext in ['.gif', '.png', '.bmp']:&lt;br&gt;...&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print 'found'&lt;br&gt;...&lt;br&gt;found&lt;/p&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;p&gt;而现在可以：&lt;/p&gt;&lt;br /&gt;&lt;blockquote dir="ltr" style="margin-right:0px"&gt;&lt;br /&gt;&lt;p&gt;&amp;gt;&amp;gt;&amp;gt; a = 'a.gif'&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; if a.endswith(('.gif', 'png', '.bmp')):&lt;br&gt;...&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print 'found'&lt;br&gt;...&lt;br&gt;found&lt;/p&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;p&gt;是不是简单多了。注意，上面的tuple我换成list就是不行，看来是强制的。&lt;/p&gt;&lt;br /&gt;&lt;p&gt;许多有趣的东西等着你我来发现。&lt;/p&gt;&lt;img src="http://blog.donews.com/limodou/aggbug/1042091.aspx" width="1" height="1"&gt;</description><link>http://blog.urlshow.com/2007/03/python-25_18.html</link><author>徐晨阳</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-4537652894405041016.post-6461516005596402240</guid><pubDate>Sun, 18 Mar 2007 11:31:00 +0000</pubDate><atom:updated>2007-03-18T19:31:33.022+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Python</category><title>[Python 新闻]2.5版正式发布了</title><description>&lt;p&gt;新时刻到来了，许多新特性的增加，新模块的加入使得 &lt;a title="" href="http://www.python.org"&gt;Python&lt;/a&gt; 更为人所注目。这一新版本增加的功能的确很多，以至于Anthony Baxter在邮件列表中宣布新版本发布时都说：&lt;/p&gt;&lt;br /&gt;&lt;blockquote dir="ltr" style="margin-right:0px"&gt;&lt;br /&gt;&lt;p&gt;It's been nearly 20 months since the last major release &lt;br&gt;of Python (2.4), and 5 months since the first alpha &lt;br&gt;release of this cycle, so I'm absolutely thrilled to be &lt;br&gt;able to say: &lt;br&gt;&lt;br&gt;On behalf of the Python development team &lt;br&gt;and the Python community, I'm happy to &lt;br&gt;announce the FINAL release of Python 2.5. &lt;br&gt;&lt;br&gt;This is a *production* release of Python 2.5. Yes, that's &lt;br&gt;right, it's finally here.&lt;/p&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;p&gt;在新版本发布时还有些战战兢兢(thrilled)的感觉。真是经过了很多的努力啊。&lt;/p&gt;&lt;br /&gt;&lt;p&gt;关于新特性早就说过了。有兴趣的赶快下载吧！&lt;/p&gt;&lt;img src="http://blog.donews.com/limodou/aggbug/1041855.aspx" width="1" height="1"&gt;</description><link>http://blog.urlshow.com/2007/03/python-25.html</link><author>徐晨阳</author></item></channel></rss>