mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-12-03 08:00:21 +08:00
psql: publication/subscription tab completion fixes
This commit is contained in:
parent
c079673dcb
commit
0fbfb65d4b
@ -1514,33 +1514,53 @@ psql_completion(const char *text, int start, int end)
|
||||
else
|
||||
COMPLETE_WITH_FUNCTION_ARG(prev2_wd);
|
||||
}
|
||||
/* ALTER PUBLICATION <name> ...*/
|
||||
else if (Matches3("ALTER","PUBLICATION",MatchAny))
|
||||
/* ALTER PUBLICATION <name> */
|
||||
else if (Matches3("ALTER", "PUBLICATION", MatchAny))
|
||||
{
|
||||
COMPLETE_WITH_LIST6("WITH (", "ADD TABLE", "SET TABLE", "DROP TABLE",
|
||||
"OWNER TO", "RENAME TO");
|
||||
COMPLETE_WITH_LIST5("ADD TABLE", "DROP TABLE", "OWNER TO", "RENAME TO", "SET");
|
||||
}
|
||||
/* ALTER PUBLICATION <name> .. SET ( ... */
|
||||
else if (HeadMatches3("ALTER", "PUBLICATION",MatchAny) && TailMatches2("SET", "("))
|
||||
/* ALTER PUBLICATION <name> SET */
|
||||
else if (Matches4("ALTER", "PUBLICATION", MatchAny, "SET"))
|
||||
{
|
||||
COMPLETE_WITH_LIST2("(", "TABLE");
|
||||
}
|
||||
/* ALTER PUBLICATION <name> SET ( */
|
||||
else if (HeadMatches3("ALTER", "PUBLICATION", MatchAny) && TailMatches2("SET", "("))
|
||||
{
|
||||
COMPLETE_WITH_CONST("publish");
|
||||
}
|
||||
/* ALTER SUBSCRIPTION <name> ... */
|
||||
else if (Matches3("ALTER","SUBSCRIPTION",MatchAny))
|
||||
/* ALTER SUBSCRIPTION <name> */
|
||||
else if (Matches3("ALTER", "SUBSCRIPTION", MatchAny))
|
||||
{
|
||||
COMPLETE_WITH_LIST8("SET (", "CONNECTION", "SET PUBLICATION", "ENABLE",
|
||||
"DISABLE", "OWNER TO", "RENAME TO", "REFRESH PUBLICATION WITH (");
|
||||
COMPLETE_WITH_LIST7("CONNECTION", "ENABLE", "DISABLE", "OWNER TO",
|
||||
"RENAME TO", "REFRESH PUBLICATION", "SET");
|
||||
}
|
||||
/* ALTER SUBSCRIPTION <name> REFRESH PUBLICATION WITH ( ... */
|
||||
/* ALTER SUBSCRIPTION <name> REFRESH PUBLICATION */
|
||||
else if (HeadMatches3("ALTER", "SUBSCRIPTION", MatchAny) &&
|
||||
TailMatches2("REFRESH", "PUBLICATION"))
|
||||
{
|
||||
COMPLETE_WITH_CONST("WITH (");
|
||||
}
|
||||
/* ALTER SUBSCRIPTION <name> REFRESH PUBLICATION WITH ( */
|
||||
else if (HeadMatches3("ALTER", "SUBSCRIPTION", MatchAny) &&
|
||||
TailMatches4("REFRESH", "PUBLICATION", "WITH", "("))
|
||||
{
|
||||
COMPLETE_WITH_CONST("copy_data");
|
||||
}
|
||||
/* ALTER SUBSCRIPTION <name> .. SET ( ... */
|
||||
/* ALTER SUBSCRIPTION <name> SET */
|
||||
else if (Matches4("ALTER", "SUBSCRIPTION", MatchAny, "SET"))
|
||||
{
|
||||
COMPLETE_WITH_LIST2("(", "PUBLICATION");
|
||||
}
|
||||
/* ALTER SUBSCRIPTION <name> SET ( */
|
||||
else if (HeadMatches3("ALTER", "SUBSCRIPTION", MatchAny) && TailMatches2("SET", "("))
|
||||
{
|
||||
COMPLETE_WITH_CONST("slot_name");
|
||||
COMPLETE_WITH_LIST2("slot_name", "synchronous_commit");
|
||||
}
|
||||
/* ALTER SUBSCRIPTION <name> SET PUBLICATION */
|
||||
else if (HeadMatches3("ALTER", "SUBSCRIPTION", MatchAny) && TailMatches2("SET", "PUBLICATION"))
|
||||
{
|
||||
/* complete with nothing here as this refers to remote publications */
|
||||
}
|
||||
/* ALTER SCHEMA <name> */
|
||||
else if (Matches3("ALTER", "SCHEMA", MatchAny))
|
||||
@ -2458,8 +2478,8 @@ psql_completion(const char *text, int start, int end)
|
||||
COMPLETE_WITH_CONST("WITH (");
|
||||
/* Complete "CREATE SUBSCRIPTION <name> ... WITH ( <opt>" */
|
||||
else if (HeadMatches2("CREATE", "SUBSCRIPTION") && TailMatches2("WITH", "("))
|
||||
COMPLETE_WITH_LIST5("enabled", "create_slot", "slot_name",
|
||||
"copy_data", "connect");
|
||||
COMPLETE_WITH_LIST6("copy_data", "connect", "create_slot", "enabled",
|
||||
"slot_name", "synchronous_commit");
|
||||
|
||||
/* CREATE TRIGGER --- is allowed inside CREATE SCHEMA, so use TailMatches */
|
||||
/* complete CREATE TRIGGER <name> with BEFORE,AFTER,INSTEAD OF */
|
||||
|
Loading…
Reference in New Issue
Block a user