我希望有一个为我的包运行epydoc的目标(比如docs)。我假设我需要创建一个新的命令,但我没有太多的运气。
以前有人这么做过吗?
发布于 2012-11-23 21:27:24
Babel project提供了几个在setup.py文件中使用的命令。
您需要使用命令定义distutils.commands入口点;Babel setup.py file中的示例
entry_points = """
[distutils.commands]
compile_catalog = babel.messages.frontend:compile_catalog
extract_messages = babel.messages.frontend:extract_messages
init_catalog = babel.messages.frontend:init_catalog
update_catalog = babel.messages.frontend:update_catalog
"""在这里,额外的命令可以作为python setup.py commandname使用。
入口点指向from distutils.cmd import Command的子类。同样来自巴别塔的例子,来自babel.messages.frontend module
from distutils.cmd import Command
from distutils.errors import DistutilsOptionError
class compile_catalog(Command):
"""Catalog compilation command for use in ``setup.py`` scripts."""
# Description shown in setup.py --help-commands
description = 'compile message catalogs to binary MO files'
# Options available for this command, tuples of ('longoption', 'shortoption', 'help')
# If the longoption name ends in a `=` it takes an argument
user_options = [
('domain=', 'D',
"domain of PO file (default 'messages')"),
('directory=', 'd',
'path to base directory containing the catalogs'),
# etc.
]
# Options that don't take arguments, simple true or false options.
# These *must* be included in user_options too, but without a = equals sign
boolean_options = ['use-fuzzy', 'statistics']
def initialize_options(self):
# Set a default for each of your user_options (long option name)
def finalize_options(self):
# verify the arguments and raise DistutilOptionError if needed
def run(self):
# Do your thing here.https://stackoverflow.com/questions/13529722
复制相似问题