def shell_complete_option(f):
def callback(ctx, param, value):
if not value or ctx.resilient_parsing:
return
if value == 'BASH':
do_bash_complete()
elif value == 'ZSH':
do_zsh_complete()
else:
raise ValueError('Unsupported shell completion')
click.get_current_context().exit(0)
f = click.option('--shell-complete', cls=HiddenOption,
is_eager=True, expose_value=False,
type=click.Choice(SUPPORTED_SHELLS),
callback=callback)(f)
return f
评论列表
文章目录