psql: fix variable existence tab completion

Alexander Korotkov <akorotkov@postgresql.org>

Commit: 927332b95e778c0d15a9fbf96e3efeab0d3d937c
Author: Alexander Korotkov <akorotkov@postgresql.org>
Date: 2024-03-16T21:49:10Z
Releases: 17.0
psql: fix variable existence tab completion

psql has the :{?name} syntax for testing for a psql variable existence.  This
commit implements a tab completion for this syntax.  Notably, in order to
implement this we have to remove '{' from WORD_BREAKS.  It appears that
'{' here from the very beginning and it comes from the default value of
rl_basic_word_break_characters.  And :{?name} is the only psql syntax using
the '{' sign.  So, removing it from WORD_BREAKS shouldn't break anything.

Discussion: https://postgr.es/m/CAGRrpzZU48F2oV3d8eDLr%3D4TU9xFH5Jt9ED%2BqU1%2BX91gMH68Sw%40mail.gmail.com
Author: Steve Chavez
Reviewed-by: Erik Wienhold

Files

PathChange+/−
src/bin/psql/t/010_tab_completion.pl modified +8 −0
src/bin/psql/tab-complete.c modified +3 −1

Discussion