クリック ライブラリを使用して、コマンド ライン アプリケーションにヘルプを追加しようとしています。公式ドキュメントに記載されているように、
コマンドについては、短いヘルプ スニペットが生成されます。デフォルトでは、長すぎない限り、コマンドのヘルプ メッセージの最初の文です。これはオーバーライドすることもできます
単純な @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 を使用する必要があります。公式ヘルプの例を次に示します。
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パラメータでヘルプを提供
- CommandCollection を作成した後、cli パラメーターに__doc__引数を設定します
- @click.group で装飾されたdocstring をcli1メソッドに追加します
どんな助けでも大歓迎です。