Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit0fbfb65

Browse files
committed
psql: publication/subscription tab completion fixes
1 parentc079673 commit0fbfb65

File tree

1 file changed

+35
-15
lines changed

1 file changed

+35
-15
lines changed

‎src/bin/psql/tab-complete.c

Lines changed: 35 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1514,33 +1514,53 @@ psql_completion(const char *text, int start, int end)
15141514
else
15151515
COMPLETE_WITH_FUNCTION_ARG(prev2_wd);
15161516
}
1517-
/* ALTER PUBLICATION <name>...*/
1518-
elseif (Matches3("ALTER","PUBLICATION",MatchAny))
1517+
/* ALTER PUBLICATION <name> */
1518+
elseif (Matches3("ALTER","PUBLICATION",MatchAny))
15191519
{
1520-
COMPLETE_WITH_LIST6("WITH (","ADD TABLE","SET TABLE","DROP TABLE",
1521-
"OWNER TO","RENAME TO");
1520+
COMPLETE_WITH_LIST5("ADD TABLE","DROP TABLE","OWNER TO","RENAME TO","SET");
15221521
}
1523-
/* ALTER PUBLICATION <name> .. SET ( ... */
1524-
elseif (HeadMatches3("ALTER","PUBLICATION",MatchAny)&&TailMatches2("SET","("))
1522+
/* ALTER PUBLICATION <name> SET */
1523+
elseif (Matches4("ALTER","PUBLICATION",MatchAny,"SET"))
1524+
{
1525+
COMPLETE_WITH_LIST2("(","TABLE");
1526+
}
1527+
/* ALTER PUBLICATION <name> SET ( */
1528+
elseif (HeadMatches3("ALTER","PUBLICATION",MatchAny)&&TailMatches2("SET","("))
15251529
{
15261530
COMPLETE_WITH_CONST("publish");
15271531
}
1528-
/* ALTER SUBSCRIPTION <name> ... */
1529-
elseif (Matches3("ALTER","SUBSCRIPTION",MatchAny))
1532+
/* ALTER SUBSCRIPTION <name> */
1533+
elseif (Matches3("ALTER","SUBSCRIPTION",MatchAny))
1534+
{
1535+
COMPLETE_WITH_LIST7("CONNECTION","ENABLE","DISABLE","OWNER TO",
1536+
"RENAME TO","REFRESH PUBLICATION","SET");
1537+
}
1538+
/* ALTER SUBSCRIPTION <name> REFRESH PUBLICATION */
1539+
elseif (HeadMatches3("ALTER","SUBSCRIPTION",MatchAny)&&
1540+
TailMatches2("REFRESH","PUBLICATION"))
15301541
{
1531-
COMPLETE_WITH_LIST8("SET (","CONNECTION","SET PUBLICATION","ENABLE",
1532-
"DISABLE","OWNER TO","RENAME TO","REFRESH PUBLICATION WITH (");
1542+
COMPLETE_WITH_CONST("WITH (");
15331543
}
1534-
/* ALTER SUBSCRIPTION <name> REFRESH PUBLICATION WITH (...*/
1544+
/* ALTER SUBSCRIPTION <name> REFRESH PUBLICATION WITH ( */
15351545
elseif (HeadMatches3("ALTER","SUBSCRIPTION",MatchAny)&&
15361546
TailMatches4("REFRESH","PUBLICATION","WITH","("))
15371547
{
15381548
COMPLETE_WITH_CONST("copy_data");
15391549
}
1540-
/* ALTER SUBSCRIPTION <name> .. SET ( ... */
1550+
/* ALTER SUBSCRIPTION <name> SET */
1551+
elseif (Matches4("ALTER","SUBSCRIPTION",MatchAny,"SET"))
1552+
{
1553+
COMPLETE_WITH_LIST2("(","PUBLICATION");
1554+
}
1555+
/* ALTER SUBSCRIPTION <name> SET ( */
15411556
elseif (HeadMatches3("ALTER","SUBSCRIPTION",MatchAny)&&TailMatches2("SET","("))
15421557
{
1543-
COMPLETE_WITH_CONST("slot_name");
1558+
COMPLETE_WITH_LIST2("slot_name","synchronous_commit");
1559+
}
1560+
/* ALTER SUBSCRIPTION <name> SET PUBLICATION */
1561+
elseif (HeadMatches3("ALTER","SUBSCRIPTION",MatchAny)&&TailMatches2("SET","PUBLICATION"))
1562+
{
1563+
/* complete with nothing here as this refers to remote publications */
15441564
}
15451565
/* ALTER SCHEMA <name> */
15461566
elseif (Matches3("ALTER","SCHEMA",MatchAny))
@@ -2458,8 +2478,8 @@ psql_completion(const char *text, int start, int end)
24582478
COMPLETE_WITH_CONST("WITH (");
24592479
/* Complete "CREATE SUBSCRIPTION <name> ... WITH ( <opt>" */
24602480
elseif (HeadMatches2("CREATE","SUBSCRIPTION")&&TailMatches2("WITH","("))
2461-
COMPLETE_WITH_LIST5("enabled","create_slot","slot_name",
2462-
"copy_data","connect");
2481+
COMPLETE_WITH_LIST6("copy_data","connect","create_slot","enabled",
2482+
"slot_name","synchronous_commit");
24632483

24642484
/* CREATE TRIGGER --- is allowed inside CREATE SCHEMA, so use TailMatches */
24652485
/* complete CREATE TRIGGER <name> with BEFORE,AFTER,INSTEAD OF */

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp