Showing posts with label python. Show all posts
Showing posts with label python. Show all posts

Tuesday, May 29, 2007

一招打遍天下,就靠python

可能是自己的信仰還不夠深
對於如何說服人家用python還是覺得不太夠力
上星期Tim表演, django請神
原來django還是有一些magic要留意的

Tim在他的
http://timchen119.blogspot.com/2007/01/tip-django-orm.html
原本
from django.conf import settings
settings.configure(
DATABASE_ENGINE = 'sqlite3',
DATABASE_NAME = 'rules.db'
)
這是Tim的方法,我就覺得可能會有些問題,畢竟原本的configure還有很多東西
後來我們在 http://code.djangoproject.com/ticket/1796 裡面找到了另外的作法

哇哈哈,神棍不是當假的,太厲害了
讓我多學了好幾招

今天認識幾個好物,
其實也不算新東西啦
取代make的SCons,當然也有configure的功能,
外加以python撰寫,當然要什麼功能有什麼功能
http://www.scons.org

http://docutils.sourceforge.net
ReStructuredText這東西就更久一些了
只要靠rst2html就可以把文字檔轉html
靠rst2latex就可以轉latex
有稍微試了一下

Matplotlib整合畫圖plot的工具
http://matplotlib.sourceforge.net/

Mercurial的web 可以另外在每個project的root下
.hg/hgrc中設定web瀏覽的特性 比如allow_archive = gz zip bz2 等

Tuesday, April 24, 2007

新的版本控制軟體? mercurial

mercurial 是一套Distributed式的版本控制軟體,而且也是python唷
中文翻譯就是水銀,指令當然就是hg囉...

比起以往的SVN或是SVK(由clkao設計的版本,這次在2007 OSDC.tw有精彩的演講)
SVN 把檔案全部放在.svn目錄,而且是每個檔案都有

SVK把檔案放在~/.svk中,雖然檔案沒有亂丟,但是每次都會忘記,到底哪個檔案才是有svk紀錄的
在2007 OSDC.tw中,clkao展現了,有一個類似proxy的機制,我忘了叫什麼,
但的確解決當初我在公司會遇到,每個人都要checkout,然後頻寬塞爆的問題

那...介紹一下hg..
目前我看到的特色是,他把每個控制的檔案,放在最底層的.hg,這樣的設計方式,簡單且不失便利性
另外,在project管理方面,是每一個project一個repertory,這樣的管理方式就不會動不動就千筆資料
當然SVK再與其他SCM的整合度上沒話講

hg如同許多python的工具都同時具備,cgi模式與server直接啟動httpd
線上文件的http://www.selenic.com/mercurial/wiki/index.cgi/PublishingRepositories有提到
不過我不是用 rewrite的方式,我是用 ScriptAlias /hg /foo/hgwebdir.cgi
另外在/foo目錄下要有一個hgweb.config的檔案,並設目錄如
[paths]
network/ns-3 = sources/network/ns-3



也有很好的線上書
http://hgbook.red-bean.com/hgbook.html

另外大個project都跟進了(mozilla 2)
那...我還需要遲疑嗎?