From: Alvaro Herrera Date: Fri, 28 Jan 2022 20:08:40 +0000 (-0300) Subject: Tab-complete ALTER PUBLICATION ADD TABLE with list of tables X-Git-Tag: REL_15_BETA1~806 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=95787e849b9c3cb047751400c8bc49a8bf0f4133;p=thirdparty%2Fpostgresql.git Tab-complete ALTER PUBLICATION ADD TABLE with list of tables This has been posted as part of the column-list feature for logical replication since [1], but it's not really related to that. [1] https://postgr.es/m/202112131747.cmlstdewm4kh@alvherre.pgsql --- diff --git a/src/bin/psql/tab-complete.c b/src/bin/psql/tab-complete.c index 4c62e7b1b41..e09221d63db 100644 --- a/src/bin/psql/tab-complete.c +++ b/src/bin/psql/tab-complete.c @@ -1692,6 +1692,12 @@ psql_completion(const char *text, int start, int end) /* ALTER PUBLICATION ADD */ else if (Matches("ALTER", "PUBLICATION", MatchAny, "ADD")) COMPLETE_WITH("ALL TABLES IN SCHEMA", "TABLE"); + else if (Matches("ALTER", "PUBLICATION", MatchAny, "ADD|SET", "TABLE") || + (HeadMatches("ALTER", "PUBLICATION", MatchAny, "ADD|SET", "TABLE") && + ends_with(prev_wd, ','))) + COMPLETE_WITH_SCHEMA_QUERY(Query_for_list_of_tables, NULL); + else if (HeadMatches("ALTER", "PUBLICATION", MatchAny, "ADD|SET", "TABLE")) + COMPLETE_WITH(","); /* ALTER PUBLICATION DROP */ else if (Matches("ALTER", "PUBLICATION", MatchAny, "DROP")) COMPLETE_WITH("ALL TABLES IN SCHEMA", "TABLE");