psql: fix variable existence tab completion
authorAlexander Korotkov <[email protected]>
Sat, 16 Mar 2024 21:49:10 +0000 (23:49 +0200)
committerAlexander Korotkov <[email protected]>
Sat, 16 Mar 2024 21:49:10 +0000 (23:49 +0200)
commit927332b95e778c0d15a9fbf96e3efeab0d3d937c
tree58152a0cd8f796a76752a10dfcba5f66829dc73f
parent605062227fdc8331f2ffa0f60e7a8724b6e56480
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
src/bin/psql/t/010_tab_completion.pl
src/bin/psql/tab-complete.c