Treat case of tab-completion keywords a bit more carefully.
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 1 Feb 2022 22:05:09 +0000 (17:05 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 1 Feb 2022 22:05:09 +0000 (17:05 -0500)
commit020258fbd30d37ddd03d0ec68264d1544f8d2838
treef9ecdc08b5dcc76b6caefaea7f24e97dfa18b653
parenta5a9d77b8b4ea636ca5f8ae115c00a031c94c56c
Treat case of tab-completion keywords a bit more carefully.

When completing keywords that are offered alongside names obtained
from a query, preserve the user's choice of keyword case.  This
would have been messy to do before 02b8048ba, but now it's fairly
simple.  A complication is that we want keywords to be shown in
upper case in any tab-completion menus that include both keywords
and non-keywords, so we can't switch their case until enough has
been typed that only keyword(s) remain to be chosen.

Also, adjust some places where 02b8048ba thoughtlessly held over
a previous choice to display keywords in lower case.  (I think
I got confused as to whether those words were keywords or variable
names, but they're the former.)

Dagfinn Ilmari MannsÃ¥ker and Tom Lane

Discussion: https://postgr.es/m/8735l41ynm.fsf@wibble.ilmari.org
src/bin/psql/t/010_tab_completion.pl
src/bin/psql/tab-complete.c