aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/lib/gdb-utils.exp
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2020-05-23 09:23:09 -0600
committerTom Tromey <tom@tromey.com>2020-05-23 14:53:33 -0600
commiteca1f90cf47a2edc1a1cd22e12c6c0f3b900654e (patch)
tree78a5fffcd39bab954df305868e98f774c749f01e /gdb/testsuite/lib/gdb-utils.exp
parent51e2cfa2dc2dd600727c91701c747c28fa67a5df (diff)
downloadbinutils-eca1f90cf47a2edc1a1cd22e12c6c0f3b900654e.zip
binutils-eca1f90cf47a2edc1a1cd22e12c6c0f3b900654e.tar.gz
binutils-eca1f90cf47a2edc1a1cd22e12c6c0f3b900654e.tar.bz2
Add completion styling
Readline has a styling feature for completion -- if it is enabled, the common prefix of completions will be displayed in a different style. This doesn't work in gdb, because gdb implements its own completer. This patch implements the feature. However, it doesn't directly use the Readline feature, because gdb can do a bit better: it can let the user control the styling using the existing mechanisms. This version incorporates an Emacs idea, via Eli: style the prefix, the "difference character", and the suffix differently. gdb/ChangeLog 2020-05-23 Tom Tromey <tom@tromey.com> * NEWS: Add entry for completion styling. * completer.c (_rl_completion_prefix_display_length): Move declaration earlier. (gdb_fnprint): Use completion_style. (gdb_display_match_list_1): Likewise. * cli/cli-style.c (completion_prefix_style) (completion_difference_style, completion_suffix_style): New globals. (_initialize_cli_style): Register new globals. * cli/cli-style.h (completion_prefix_style) (completion_difference_style, completion_suffix_style): Declare. gdb/doc/ChangeLog 2020-05-23 Tom Tromey <tom@tromey.com> * gdb.texinfo (Output Styling): Mention completion styling. (Editing): Mention readline completion styling. gdb/testsuite/ChangeLog 2020-05-23 Tom Tromey <tom@tromey.com> * gdb.base/style.exp: Add completion styling test. * lib/gdb-utils.exp (style): Add completion styles.
Diffstat (limited to 'gdb/testsuite/lib/gdb-utils.exp')
-rw-r--r--gdb/testsuite/lib/gdb-utils.exp2
1 files changed, 2 insertions, 0 deletions
diff --git a/gdb/testsuite/lib/gdb-utils.exp b/gdb/testsuite/lib/gdb-utils.exp
index 9741f0a..98bdd72 100644
--- a/gdb/testsuite/lib/gdb-utils.exp
+++ b/gdb/testsuite/lib/gdb-utils.exp
@@ -55,6 +55,8 @@ proc style {str style} {
variable { set style 36 }
address { set style 34 }
metadata { set style 2 }
+ completion-prefix { set style 2 }
+ completion-difference { set style 35 }
}
return "\033\\\[${style}m${str}\033\\\[m"
}