summaryrefslogtreecommitdiff
path: root/cmd2/argparse_completer.py
diff options
context:
space:
mode:
authorkotfu <kotfu@kotfu.net>2020-02-14 20:51:21 -0700
committerkotfu <kotfu@kotfu.net>2020-02-14 20:51:21 -0700
commitc8ba8b94950edcad47f791cceec949f174ea7c71 (patch)
treedbae3fa7482c24d6cca9a52d597f498c61d18be0 /cmd2/argparse_completer.py
parent9c6f1304816707e38c74926c93f62e48836b95c9 (diff)
parent013b9e0a2c75e17f8aa0e0f7cbe50d84d2f657d8 (diff)
downloadcmd2-git-c8ba8b94950edcad47f791cceec949f174ea7c71.tar.gz
Merge branch 'master' into api_docs
# Conflicts: # cmd2/ansi.py # docs/features/completion.rst
Diffstat (limited to 'cmd2/argparse_completer.py')
-rw-r--r--cmd2/argparse_completer.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/cmd2/argparse_completer.py b/cmd2/argparse_completer.py
index 6513fe13..185e01a2 100644
--- a/cmd2/argparse_completer.py
+++ b/cmd2/argparse_completer.py
@@ -444,7 +444,9 @@ class AutoCompleter:
completions.sort(key=self._cmd2_app.default_sort_key)
self._cmd2_app.matches_sorted = True
- token_width = ansi.style_aware_wcswidth(action.dest)
+ # If a metavar was defined, use that instead of the dest field
+ destination = action.metavar if action.metavar else action.dest
+ token_width = ansi.style_aware_wcswidth(destination)
completions_with_desc = []
for item in completions:
@@ -463,7 +465,7 @@ class AutoCompleter:
desc_header = getattr(action, ATTR_DESCRIPTIVE_COMPLETION_HEADER, None)
if desc_header is None:
desc_header = DEFAULT_DESCRIPTIVE_HEADER
- header = '\n{: <{token_width}}{}'.format(action.dest.upper(), desc_header, token_width=token_width + 2)
+ header = '\n{: <{token_width}}{}'.format(destination.upper(), desc_header, token_width=token_width + 2)
self._cmd2_app.completion_header = header
self._cmd2_app.display_matches = completions_with_desc