diff options
author | Nicholas Wiles <nwiles@google.com> | 2017-03-29 18:23:34 -0700 |
---|---|---|
committer | Nicholas Wiles <nwiles@google.com> | 2017-03-29 18:23:34 -0700 |
commit | 33cd8696cb88bcdaa6d16d506bf468f275770ace (patch) | |
tree | 363b5ebd169e18fe2de97d331d83b8d16e3e867a /examples | |
parent | 014ce7cc07ece8c5be1d7406377ee824184c66ec (diff) | |
download | click-33cd8696cb88bcdaa6d16d506bf468f275770ace.tar.gz |
Update completion example
Diffstat (limited to 'examples')
-rw-r--r-- | examples/bashcompletion/bashcompletion.py | 21 |
1 files changed, 7 insertions, 14 deletions
diff --git a/examples/bashcompletion/bashcompletion.py b/examples/bashcompletion/bashcompletion.py index 0a8d4d9..8aaf174 100644 --- a/examples/bashcompletion/bashcompletion.py +++ b/examples/bashcompletion/bashcompletion.py @@ -1,6 +1,5 @@ import click import os -from netifaces import interfaces, ifaddresses, AF_INET @click.group() def cli(): @@ -15,24 +14,18 @@ def cmd1(envvar): click.echo('Environment variable: %s' % envvar) click.echo('Value: %s' % os.environ[envvar]) -@cli.command() -def cmd3(): - pass - @click.group() def group(): pass -def ip4_addresses(): - ip_list = [] - for interface in interfaces(): - for link in ifaddresses(interface)[AF_INET]: - ip_list.append(link['addr']) - return ip_list +def list_users(ctx, args, incomplete): + # Here you can generate completions dynamically + users = ['bob', 'alice'] + return users @group.command() -@click.argument("ip", type=click.STRING, autocompletion=ip4_addresses) -def subcmd(ip): - click.echo('Chosen IP is %s' % color) +@click.argument("user", type=click.STRING, autocompletion=list_users) +def subcmd(user): + click.echo('Chosen user is %s' % user) cli.add_command(group) |