diff options
author | Michael Paquier <michael@paquier.xyz> | 2021-06-11 15:46:18 +0900 |
---|---|---|
committer | Michael Paquier <michael@paquier.xyz> | 2021-06-11 15:46:18 +0900 |
commit | d08237b5b494f96e72220bcef36a14a642969f16 (patch) | |
tree | 69980c6456eabe61092572a3b838f32af7dc8d70 | |
parent | 13a1ca160dcfc316c9f4005891a312f5a84c5ca2 (diff) | |
download | postgresql-d08237b5b494f96e72220bcef36a14a642969f16.tar.gz postgresql-d08237b5b494f96e72220bcef36a14a642969f16.zip |
Improve psql tab completion for options of subcriptions and publications
The list of options provided by the tab completion was outdated for the
following commands:
- ALTER SUBSCRIPTION
- CREATE SUBSCRIPTION
- ALTER PUBLICATION
- CREATE PUBLICATION
Author: Vignesh C
Reviewed-by: Bharath Rupireddy
Discussion: https://postgr.es/m/CALDaNm18oHDFu6SFCHE=ZbiO153Fx7E-L1MG0YyScbaDV--U+A@mail.gmail.com
-rw-r--r-- | src/bin/psql/tab-complete.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/bin/psql/tab-complete.c b/src/bin/psql/tab-complete.c index 32c1bdfdca7..bd8e9ea2f8a 100644 --- a/src/bin/psql/tab-complete.c +++ b/src/bin/psql/tab-complete.c @@ -1646,7 +1646,7 @@ psql_completion(const char *text, int start, int end) COMPLETE_WITH("(", "TABLE"); /* ALTER PUBLICATION <name> SET ( */ else if (HeadMatches("ALTER", "PUBLICATION", MatchAny) && TailMatches("SET", "(")) - COMPLETE_WITH("publish"); + COMPLETE_WITH("publish", "publish_via_partition_root"); /* ALTER SUBSCRIPTION <name> */ else if (Matches("ALTER", "SUBSCRIPTION", MatchAny)) COMPLETE_WITH("CONNECTION", "ENABLE", "DISABLE", "OWNER TO", @@ -1665,7 +1665,7 @@ psql_completion(const char *text, int start, int end) COMPLETE_WITH("(", "PUBLICATION"); /* ALTER SUBSCRIPTION <name> SET ( */ else if (HeadMatches("ALTER", "SUBSCRIPTION", MatchAny) && TailMatches("SET", "(")) - COMPLETE_WITH("slot_name", "synchronous_commit"); + COMPLETE_WITH("binary", "slot_name", "streaming", "synchronous_commit"); /* ALTER SUBSCRIPTION <name> SET PUBLICATION */ else if (HeadMatches("ALTER", "SUBSCRIPTION", MatchAny) && TailMatches("SET", "PUBLICATION")) { @@ -2638,7 +2638,7 @@ psql_completion(const char *text, int start, int end) COMPLETE_WITH_SCHEMA_QUERY(Query_for_list_of_tables, NULL); /* Complete "CREATE PUBLICATION <name> [...] WITH" */ else if (HeadMatches("CREATE", "PUBLICATION") && TailMatches("WITH", "(")) - COMPLETE_WITH("publish"); + COMPLETE_WITH("publish", "publish_via_partition_root"); /* CREATE RULE */ /* Complete "CREATE [ OR REPLACE ] RULE <sth>" with "AS ON" */ @@ -2758,8 +2758,9 @@ psql_completion(const char *text, int start, int end) COMPLETE_WITH("WITH ("); /* Complete "CREATE SUBSCRIPTION <name> ... WITH ( <opt>" */ else if (HeadMatches("CREATE", "SUBSCRIPTION") && TailMatches("WITH", "(")) - COMPLETE_WITH("copy_data", "connect", "create_slot", "enabled", - "slot_name", "synchronous_commit"); + COMPLETE_WITH("binary", "connect", "copy_data", "create_slot", + "enabled", "slot_name", "streaming", + "synchronous_commit"); /* CREATE TRIGGER --- is allowed inside CREATE SCHEMA, so use TailMatches */ |