Georgios Kokolatos <gkokolatos@pm.me> writes:
> One minor nitpick I feel I should add is that for completeness and
> balance the equivalent `CREATE TEXT SEARCH DICTIONARY` should
> get the same treatment.
> Maybe something along the lines of:
> - else if (Matches("CREATE", "TEXT", "SEARCH", "CONFIGURATION", MatchAny))
> + else if (Matches("CREATE", "TEXT", "SEARCH", "DICTIONARY|CONFIGURATION", MatchAny))
Agreed; actually all four CREATE TEXT SEARCH commands could do that.
I pushed it as attached.
regards, tom lane
diff --git a/src/bin/psql/tab-complete.c b/src/bin/psql/tab-complete.c
index 54d0317..17b1f29 100644
--- a/src/bin/psql/tab-complete.c
+++ b/src/bin/psql/tab-complete.c
@@ -2140,7 +2140,7 @@ psql_completion(const char *text, int start, int end)
else if (Matches("ALTER", "TEXT", "SEARCH", "TEMPLATE|PARSER", MatchAny))
COMPLETE_WITH("RENAME TO", "SET SCHEMA");
else if (Matches("ALTER", "TEXT", "SEARCH", "DICTIONARY", MatchAny))
- COMPLETE_WITH("OWNER TO", "RENAME TO", "SET SCHEMA");
+ COMPLETE_WITH("(", "OWNER TO", "RENAME TO", "SET SCHEMA");
else if (Matches("ALTER", "TEXT", "SEARCH", "CONFIGURATION", MatchAny))
COMPLETE_WITH("ADD MAPPING FOR", "ALTER MAPPING",
"DROP MAPPING FOR",
@@ -2635,7 +2635,7 @@ psql_completion(const char *text, int start, int end)
/* CREATE TEXT SEARCH */
else if (Matches("CREATE", "TEXT", "SEARCH"))
COMPLETE_WITH("CONFIGURATION", "DICTIONARY", "PARSER", "TEMPLATE");
- else if (Matches("CREATE", "TEXT", "SEARCH", "CONFIGURATION", MatchAny))
+ else if (Matches("CREATE", "TEXT", "SEARCH", "CONFIGURATION|DICTIONARY|PARSER|TEMPLATE", MatchAny))
COMPLETE_WITH("(");
/* CREATE SUBSCRIPTION */