2017-02-02 4 views
0
Usage: ics example [OPTIONS] COMMAND [ARGS]... 

docstrings을 통해 내 사용 문자열로 바꾸길 원합니다. 그것은 가능한가?python 클릭 : 도움말 화면의 기본 사용 텍스트를 숨길 수 있습니까

+0

당신은 당신이 제공 할 수 있도록 노력하겠습니다 어떤 정보에 대해 더 구체적 일 수 있습니다

여기
import click CONTEXT_SETTINGS = dict(help_option_names=['--oldhelp']) def monkeypatch_method(cls): def decorator(func): setattr(cls, func.__name__, func) return func return decorator @monkeypatch_method(click.UsageError) def show(self, file=None): print "You really shouldn't use the program this way!" @click.command(context_settings=CONTEXT_SETTINGS, add_help_option=False) @click.option('--help', is_flag=True) def hello(help): if help: print "Custom help here." else: click.echo('Hello World!') if __name__ == '__main__': hello() 

프로그램이 응답하는 방법입니다 : 아래

사용자 지정 도움말 및 사용자 정의 사용 메시지 예입니다 문서화 문자열, 그리고 그 정보가 어떻게 나타날 것이라고 기대할 수 있습니까? 지금이 질문은 불분명하다. –

답변

0

코드에서 볼 수있는 한 python-click은 현재 사용자 정의 문자열을 지원하지 않습니다. 하지만 직접 --help 옵션을 처리 할 수 ​​있습니다. 좋은 해결책은 아니지만 할 수 있습니다.

--help 옵션을 대신 사용하려면이 기본 옵션의 이름을 바꾸거나 숨기고 이에 대한 자체 처리기를 추가해야합니다. 이 작업이 끝나면 사용자가 CLI에 잘못된 입력을하면 사용 오류가 계속 발생합니다. 이들은 코드에서 here으로 정의됩니다. 몇 가지 유형의 예외가 있습니다. 우리는 monkeypatching을 사용하여 이것을 아주 잘 받아 들일 수 있습니다.

: python clickmonkeypatch.py 
Hello World! 
: python clickmonkeypatch.py test 
You really shouldn't use the program this way! 
: python clickmonkeypatch.py --help 
Custom help here.