スクリプトを記録する¶
クリックすることでコマンドラインツールを非常に簡単に記録することができます。まず、それは自動的にヘルプページを生成します。現在,これらのテキストはレイアウト面ではカスタマイズできないが,すべてのテキストを変更することができる.
ヘルプテキスト.¶
コマンドとオプションはヘルプパラメータを受け取ります。命令に対しては,関数の文書文字列が提供されると自動的に使用される.
簡単な例:
@click.command()
@click.option('--count', default=1, help='number of greetings')
@click.argument('name')
def hello(count, name):
"""This script prints hello NAME COUNT times."""
for x in range(count):
click.echo(f"Hello {name}!")
どのように見えるのでしょうか
$ hello --help
Usage: hello [OPTIONS] NAME
This script prints hello NAME COUNT times.
Options:
--count INTEGER number of greetings
--help Show this message and exit.
論点を記録する¶
click.argument()
一つはいらない help
パラメータこれは,Unixツールの一般的な慣例,すなわちパラメータのみを最も必要な内容に用い,それらを名前順に引用することで命令ヘルプテキストに記録するためである.
説明でパラメータを引用するのが好きかもしれません
@click.command()
@click.argument('filename')
def touch(filename):
"""Print FILENAME."""
click.echo(filename)
どのように見えるのでしょうか
$ touch --help
Usage: touch [OPTIONS] FILENAME
Print FILENAME.
Options:
--help Show this message and exit.
代替的に、パラメータの説明を明示的に提供することがより好きになるかもしれません。
@click.command()
@click.argument('filename')
def touch(filename):
"""Print FILENAME.
FILENAME is the name of the file to check.
"""
click.echo(filename)
どのように見えるのでしょうか
$ touch --help
Usage: touch [OPTIONS] FILENAME
Print FILENAME.
FILENAME is the name of the file to check.
Options:
--help Show this message and exit.
より多くの例については、中の例を参照してください 立論. それがそうです。
再包装を防ぐ¶
Clickのデフォルトアクションは,端子の幅に応じてテキストを書き換えることである.場合によっては、これが問題になるかもしれない。主な問題は,コード例を表示する際に改行が重要であることである.
各段落に基づいて行の再変換を無効にすることができ、方法は使用のみです。 \b
逃走マークが入っています。この旅行はヘルプテキストから削除され、再改行は無効になるだろう。
例:
@click.command()
def cli():
"""First paragraph.
This is a very long second paragraph and as you
can see wrapped very early in the source text
but will be rewrapped to the terminal width in
the final output.
\b
This is
a paragraph
without rewrapping.
And this is a paragraph
that will be rewrapped again.
"""
どのように見えるのでしょうか
$ cli --help
Usage: cli [OPTIONS]
First paragraph.
This is a very long second paragraph and as you can see wrapped very early
in the source text but will be rewrapped to the terminal width in the final
output.
This is
a paragraph
without rewrapping.
And this is a paragraph that will be rewrapped again.
Options:
--help Show this message and exit.
ヘルプテキストを遮断しています¶
関数文書文字列からコマンドヘルプテキストを取得するのをクリックします。しかし、文書文字列レコード関数パラメータを使用している場合、param:および:return:行をヘルプテキストで見ることを望まないかもしれません。
ご利用いただけます \f
変換タグは,そのタグをクリックしたヘルプテキストが切断される.
例:
@click.command()
@click.pass_context
def cli(ctx):
"""First paragraph.
This is a very long second
paragraph and not correctly
wrapped but it will be rewrapped.
\f
:param click.core.Context ctx: Click context.
"""
どのように見えるのでしょうか
$ cli --help
Usage: cli [OPTIONS]
First paragraph.
This is a very long second paragraph and not correctly wrapped but it will
be rewrapped.
Options:
--help Show this message and exit.
メタ変数.¶
オプションとパラメータ受け入れ metavar
ヘルプページ中のメタ変数を変更できるパラメータ.デフォルトバージョンは下線付き大文字名であるが,必要であれば異なる方法でアノテーションを行うことができる.これはすべてのレベルでカスタマイズすることができます:
@click.command(options_metavar='<options>')
@click.option('--count', default=1, help='number of greetings',
metavar='<int>')
@click.argument('name', metavar='<name>')
def hello(count, name):
"""This script prints hello <name> <int> times."""
for x in range(count):
click.echo(f"Hello {name}!")
例:
$ hello --help
Usage: hello <options> <name>
This script prints hello <name> <int> times.
Options:
--count <int> number of greetings
--help Show this message and exit.
簡単な助けを命令する¶
コマンドに対して、短いヘルプクリップが生成されます。デフォルトでは、それが長すぎない限り、ヘルプメッセージを命令する最初の言葉である。このオプションをカバーすることもできます:
@click.group()
def cli():
"""A simple command line tool."""
@cli.command('init', short_help='init the repo')
def init():
"""Initializes the repository."""
@cli.command('delete', short_help='delete the repo')
def delete():
"""Deletes the repository."""
どのように見えるのでしょうか
$ repo.py
Usage: repo.py [OPTIONS] COMMAND [ARGS]...
A simple command line tool.
Options:
--help Show this message and exit.
Commands:
delete delete the repo
init init the repo
ヘルプパラメータのカスタマイズ¶
Changelog
バージョン 2.0 で追加.
ヘルプパラメータはClickにおいて非常に特殊な方法で実現される.従来のパラメータとは異なり、任意のコマンドをクリックすることで自動的に追加され、自動衝突解決が実行される。デフォルトでは --help
しかし、これは変更できます。命令自体が同名のパラメータを実現していれば,デフォルトのヘルプパラメータはそのパラメータの受け取りを停止する.名前を上書きするために使用可能なヘルプパラメータの名前をコンテキスト設定することができる help_option_names
それがそうです。
この例では、デフォルト·パラメータをさらに変更します。 -h
そして --help
ただ…。 --help
:
CONTEXT_SETTINGS = dict(help_option_names=['-h', '--help'])
@click.command(context_settings=CONTEXT_SETTINGS)
def cli():
pass
どのように見えるのでしょうか
$ cli -h
Usage: cli [OPTIONS]
Options:
-h, --help Show this message and exit.