跳转到主要内容

使用Python和Groome的Mustache项目模板

项目描述

Molt

molting snake

Molt 是一个脚本,用于使用基于 Mustache 的项目模板立即生成任何语言的空项目。

您可以使用 Molt 来减少在启动新项目时需要编写的样板代码:README、版权声明、许可证信息、日志配置、选项解析、测试框架、打包信息、.gitignore、目录层次结构等。

一个最小示例用法如下–

$ molt -c path_to_config.json path_to_template_dir/

Molt 遵循基于 Mustache 的项目模板的 Groome 规则。有关项目模板语法的更多信息,请参阅 Groome 页面。此版本的 Molt 遵循 Groome 0.1.0 版本。

Molt是用 Python 编写的,可以在 GitHubPyPI(Python 包索引)上找到。

欢迎提供反馈。您还可以在 GitHub 问题页面 上提交错误报告和功能请求。

要求

Molt支持以下Python版本

  • Python 2.7

  • Python 3.2

  • PyPy

Python 3.x 支持即将推出。由于 Molt 是一种开发工具,没有计划支持 Python 2.6 或更早版本。

Molt的依赖项包括–

  • Pystache 版本 0.5.2 或更高版本

  • PyYAML(可选,以支持配置文件的 YAML 格式)

以下安装过程会自动安装这些依赖项。

您可以使用setuptoolsDistribute(推荐)来安装到Python 2。对于Python 3,您必须使用Distribute。

安装它

$ pip install molt

测试它

$ molt --run-tests

尝试它

demo Groome模板开始,以进行操作

$ molt --create-demo --output demo
$ ls -p demo
expected/   lambdas/    partials/   sample.json structure/

使用提供的样本上下文渲染模板

$ molt --output output --config demo/sample.json demo

运行新创建的项目(也可以在这里看到这里

$ python output/hello.py world
Hello, world!

有关帮助文档和可用选项——

$ molt -h

注意--visualize--with-visualize选项,这些选项可以让您快速可视化整个目录的内容。

$ molt --visualize output

如果使用Python,您也可以将Molt用作库(尽管API尚不稳定)。请参阅molt.molter模块中的Molter类。

贡献

如果使用GitHub,在派生后——

$ git clone git@github.com:yourusername/molt.git
$ cd molt
$ git remote add upstream git://github.com/cjerdonek/molt.git
$ git fetch upstream

要运行单元测试——

$ python test_molt.py

要使用单个命令测试Molt的多个Python版本,您可以使用tox

pip install tox
tox

如果您在tox.ini中没有列出所有Python版本,您可以进行——

tox -e py27  # for example

要从源运行任何形式的molt命令——

$ molt [options] [DIRECTORY]

只需输入——

$ python -m molt.commands.molt [options] [DIRECTORY]

要将Groome测试包含在您的测试运行中,初始化并更新Groome项目子模块——

$ git submodule init
$ git submodule update

要运行测试子集,您可以通过一个或多个前缀过滤您的测试运行。例如——

$ python test_molt.py molt.test.common molt.test.dir

Molt还配置在GitHub上与Travis CI一起工作。

Python 3技巧

Molt是用Python 2编写的,因此在使用Python 3之前必须将代码转换为Python 3。安装过程会自动执行此操作。

要手动将代码转换为Python 3,请使用以下命令在Python 3(已安装Distribute)中运行(使用Python 3)——

python setup.py build

这会将转换后的代码写入项目目录的子目录中,称为build

(虽然不建议)可以在不使用setup.py的情况下转换代码。您可以使用2to3尝试此操作,如下所示(两步)

2to3 --write --nobackups --no-diffs --doctests_only molt
2to3 --write --nobackups --no-diffs molt

这会在原地转换代码(和doctests)。

要在使用Python 3时从源分发中导入molt,请确保您是从包含转换后代码的目录中导入的(例如,转换后从build目录),而不是从原始(未转换)的源目录。否则,您将收到语法错误。您可以通过在导入Molt时不在项目目录中运行Python IDE来帮助防止这种情况。

作者

Molt是由Chris Jerdonek编写的。Chris也是Groome的作者,并且是当前Pystache的维护者。

历史

0.1.1 (2012-07-01)

  • 添加 Python 3 支持。

0.1.0 (2012-06-30)

  • 初始发布(适用于 Python 2.7 和 PyPy)。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

molt-0.1.1.tar.gz (68.7 kB 查看哈希值)

上传时间

由以下组织支持