假设我的库foobar.py
是这样设置的:
\foobar.py
\foobar
\__init__.py
\setup.py
控制台脚本中CLI的层次结构:
^{pr2}$import click
CONTEXT_SETTINGS = dict(help_option_names=['-h', '--help'])
@click.group()
@click.version_option()
def cli():
pass
@cli.group(context_settings=CONTEXT_SETTINGS)
def foo():
pass
@cli.group(context_settings=CONTEXT_SETTINGS)
def bar():
pass
@foo.command('kungfu')
def kungfu():
print('bruise lee')
@foo.command('kungpow')
def kungpow():
print('chosen one')
@bar.command('blacksheep')
def blacksheep():
print('bah bah blacksheep')
@bar.command('haveyouanywool')
def haveyouanywool():
print('have you any wool?')
我应该如何在setup.py
中设置我的条目?
有很多例子,但它们只显示了一个单一入口点的命令,例如Entry Points in setup.py
但是,是否有可能设置控制台脚本来设置myfoobar.py
click脚本的结构?
如果不是,我应该如何重组foobar.py
中的命令?
对于上下文,我有sacremoses
库的脚本:https://github.com/alvations/sacremoses/blob/cli/sacremoses.py
但是我不知道如何配置setup.py
来安装圣母玛利亚.py正确编写脚本:https://github.com/alvations/sacremoses/blob/cli/setup.py
要使入口点在示例中起作用,您需要:
你缺少的是对以下含义的理解:
^{pr2}$[控制台脚本]
在
command_line_name=foobar:cli
中有三件事:command_line_name
)foobar
)cli
)在设置.py
对于您的github示例,我建议:
命令处理程序
在github repo的引用分支中,没有cli.py文件文件。您的问题中的[代码]需要保存在
sacremoses/cli.py
中,然后与对您的设置.py,一切都会好起来的。在相关问题 更多 >
编程相关推荐