如果你喜欢Python 那么你不得不知的几个开源项目

1.Trac


Trac拥有强大的bug管理 功能,并集成了Wiki 用于文档管理。它还支持代码管理工具Subversion ,这样可以在 bug管理和Wiki中方便地参考程序源代码。

 

Trac有着比较强大的插件系统,可以通过插件来实现各种各样的功能,比如支持Git,或者增加自己的一些语法等等.

 

如果你想了解wiki是如何实现的,或者svn是如何集成的,那么你可以看看这个项目的源码.

 

 

2.Docutils

Docutils项目的主要是为了创造一套将纯文本转换为一些常用格式的工具,这些常用格式包括:HTML、XML和LaTeX。请先了解 reStructuredText 的基础知识。其比起Docbook或者lex等专业的文本排版工具更显轻量级和易用.

 

3.Pygments



  Pygments是一个实现的格式化高亮代码的Python库。包含四个模块:

lexer - 将代码解析成token流,每个一token都包含两个属性,一个是当前token的类型,一个是当前token的值。Pygments支持的语言很多, 具体可以参考附录A。

  • lexer - 将代码解析成token流,每个一token都包含两个属性,一个是当前token的类型,一个是当前token的值。Pygments支持的语言很多, 还可以进行扩展。
  • filters - 通过lexer解析出来的token流送入filter,可以根据条件修改某些token的属性或者值。
  • formatter - token流最终输出是根据formater的定义,输出成实现定义好的格式,例如HTML, LaTex或者RTF。
  • style - 定义了输出的风格,例如不同类型的token按照不同的颜色显示,或者是否粗体。

4.Sphinx


Sphinx简单来说,是一个文档生成工具,用于把reStructuredText 格式的源文件生成诸如HTML, PDF, LaTex一类的格式。编辑者无须亲自处理文本的格式, 程序会自动根据源文件里的设置产生格式, 以及自动生成章节链接等工作。

和 DocBook一样,Sphinx可以看做是一个把文本格式处理和文字编辑分开的工具。

 

Python的官方文档便是通过这个工具进行编写的。

 

5.MoinmoinWiki



 MoinMoin 是一个基于Python环境的wiki引擎程序,支持包括中文在内的多语种特性。

  • 完全使用文件来存储内容,不使用数据库
  • 实现了全部Wiki规范,Unicode 编码支持多语种

 

6.Mercurial


Mercurial 是一种轻量级分布式版本控制系统(Git也是一种分布式的版本控制系统),采用 Python 语言实现.

  • 更轻松的管理。传统的版本控制系统使用集中式的 repository,一些和 repository相关的管理就只能由管理员一个人进行。由于采用了分布式的模型,Mercurial 中就没有这样的困扰,每个用户管理自己的 repository,管理员只需协调同步这些repository。
  • 更健壮的系统。分布式系统比集中式的单服务器系统更健壮,单服务器系统一旦服务器出现问题整

 

7.CNProg


CNProg 是一个面向中国程序员的免费技术问答社区 。它是一个介于论坛、博客、维基和Digg之间的社区系统,基 于Python和Django开发。

 

如果你想学习Django编程的,这个项目可以作为一个范例进行阅读的.

 

源码地址为:http://wiki.github.com/cnprog/CNPROG/

posted @ 2014-10-13 11:29  juggd  阅读(3520)  评论(1编辑  收藏  举报