Fix psql tab completion for CREATE USER MAPPING.
authorTom Lane
Thu, 27 Jul 2017 18:13:15 +0000 (14:13 -0400)
committerTom Lane
Thu, 27 Jul 2017 18:13:15 +0000 (14:13 -0400)
After typing CREATE USER M..., it would not fill in MAPPING FOR,
even though that was clearly intended behavior.

Jeff Janes

Discussion: https://postgr.es/m/CAMkU=1wo2iQ6jWnN=egqOb5NxEPn0PpANEtKHr3uPooQ+nYPtw@mail.gmail.com

src/bin/psql/tab-complete.c

index b9aac29b73098313dbf8fbe5436e2dfc6c3b41b7..f40abf3e70546ae19c55a91d2f725cf7975a5bb8 100644 (file)
@@ -802,7 +802,7 @@ static const pgsql_thing_t words_after_create[] = {
    {"UNIQUE", NULL, NULL, THING_NO_DROP},      /* for CREATE UNIQUE INDEX ... */
    {"UNLOGGED", NULL, NULL, THING_NO_DROP},    /* for CREATE UNLOGGED TABLE
                                                 * ... */
-   {"USER", Query_for_list_of_roles},
+   {"USER", Query_for_list_of_roles " UNION SELECT 'MAPPING FOR'"},
    {"USER MAPPING FOR", NULL, NULL},
    {"VIEW", NULL, &Query_for_list_of_views},
    {NULL}                      /* end of list */