2017-05-05 57 views
0

我正嘗試使用點擊庫將幫助添加到命令行應用程序中。如official documentation中提到的,如何向CommandCollection click的命令添加幫助?

對於命令,會生成一個簡短幫助代碼片段。默認情況下,該命令的幫助消息的第一句話是 ,除非它太長了 。這也可以覆蓋

通過簡單的@ click.command一切正常:

import click 

@click.command() 
def cli(): 
    """This is sample description of script.""" 

if __name__ == '__main__': 
    cli() 

運行,這將用於從方法的doscstring腳本顯示說明:

Usage: example.py [OPTIONS] 

    This is sample description of script. 

Options: 
    --help Show this message and exit. 

但我需要使用CommandCollection,因爲我正在創建一個由多個命令組成的腳本。下面是official help一個例子:

import click 


@click.group() 
def cli1(): 
    pass 


@cli1.command() 
def cmd1(): 
    """Command on cli1""" 


@click.group() 
def cli2(): 
    pass 


@cli2.command() 
def cmd2(): 
    """Command on cli2""" 


cli = click.CommandCollection(sources=[cli1, cli2]) 

if __name__ == '__main__': 
    cli() 

我不知道怎麼描述添加到整個命令集合。我試過到目前爲止:

  • 提供額外short_help參數
  • 設置__doc__論據CLI參數,創建CommandCollection
  • 添加文檔字符串CLI1方法之後的幫助,飾以@ click.group

任何幫助,非常感謝。

回答

2

只需使用幫助參數:

cli = click.CommandCollection(sources=[cli1, cli2], help="This would be your description, dude!")