Add some missing backslash commands to psql's tab-completion knowledge.
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 3 Jun 2017 21:10:25 +0000 (17:10 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 3 Jun 2017 21:10:25 +0000 (17:10 -0400)
\if and related commands were overlooked here, as were \dRp and \dRs
from the logical-replication patch, as was \?.

While here, reformat the list to put each new first command letter on
a separate line; perhaps that will limit the need to reflow the whole
list when we add more commands in future.

Masahiko Sawada (reformatting by me)

Discussion: https://postgr.es/m/CAD21AoDW1QHtBsM33hV+Fg2mYEs+FWj4qtoCU72AwHAXQ3U6ZQ@mail.gmail.com

src/bin/psql/tab-complete.c

index 2abd08758df51b93210d76e11e290130df7fc42c..d4b6976ad3bbeee7c21cb9bdbe4cb749674f6bf9 100644 (file)
@@ -1421,19 +1421,33 @@ psql_completion(const char *text, int start, int end)
 
    /* psql's backslash commands. */
    static const char *const backslash_commands[] = {
-       "\\a", "\\connect", "\\conninfo", "\\C", "\\cd", "\\copy",
+       "\\a",
+       "\\connect", "\\conninfo", "\\C", "\\cd", "\\copy",
        "\\copyright", "\\crosstabview",
        "\\d", "\\da", "\\dA", "\\db", "\\dc", "\\dC", "\\dd", "\\ddp", "\\dD",
        "\\des", "\\det", "\\deu", "\\dew", "\\dE", "\\df",
        "\\dF", "\\dFd", "\\dFp", "\\dFt", "\\dg", "\\di", "\\dl", "\\dL",
-       "\\dm", "\\dn", "\\do", "\\dO", "\\dp", "\\drds", "\\ds", "\\dS",
+       "\\dm", "\\dn", "\\do", "\\dO", "\\dp",
+       "\\drds", "\\dRs", "\\dRp", "\\ds", "\\dS",
        "\\dt", "\\dT", "\\dv", "\\du", "\\dx", "\\dy",
-       "\\e", "\\echo", "\\ef", "\\encoding", "\\errverbose", "\\ev",
-       "\\f", "\\g", "\\gexec", "\\gset", "\\gx", "\\h", "\\help", "\\H",
-       "\\i", "\\ir", "\\l", "\\lo_import", "\\lo_export", "\\lo_list",
-       "\\lo_unlink", "\\o", "\\p", "\\password", "\\prompt", "\\pset", "\\q",
-       "\\qecho", "\\r", "\\s", "\\set", "\\setenv", "\\sf", "\\sv", "\\t",
-       "\\T", "\\timing", "\\unset", "\\x", "\\w", "\\watch", "\\z", "\\!",
+       "\\e", "\\echo", "\\ef", "\\elif", "\\else", "\\encoding",
+       "\\endif", "\\errverbose", "\\ev",
+       "\\f",
+       "\\g", "\\gexec", "\\gset", "\\gx",
+       "\\h", "\\help", "\\H",
+       "\\i", "\\if", "\\ir",
+       "\\l", "\\lo_import", "\\lo_export", "\\lo_list", "\\lo_unlink",
+       "\\o",
+       "\\p", "\\password", "\\prompt", "\\pset",
+       "\\q", "\\qecho",
+       "\\r",
+       "\\s", "\\set", "\\setenv", "\\sf", "\\sv",
+       "\\t", "\\T", "\\timing",
+       "\\unset",
+       "\\x",
+       "\\w", "\\watch",
+       "\\z",
+       "\\!", "\\?",
        NULL
    };