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

Commite6b8e83

Browse files
committed
Add psql completion for [ NO ] DEPENDS ON EXTENSION
ALTER INDEX was able to handle that already. This adds tab completionfor all the remaining commands that support this grammar:- ALTER FUNCTION- ALTER PROCEDURE- ALTER ROUTINE- ALTER TRIGGER- ALTER MATERIALIZED VIEWAuthor: Ian Lawrence BarwickDiscussion:https://postgr.es/m/CAB8KJ=iypYudXuMOAMOP4BpkaYbXxk=a2cdJppX0e9mJXWtuig@mail.gmail.com
1 parent38bb3ae commite6b8e83

File tree

1 file changed

+18
-9
lines changed

1 file changed

+18
-9
lines changed

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

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1614,14 +1614,24 @@ psql_completion(const char *text, int start, int end)
16141614
/* ALTER AGGREGATE,FUNCTION,PROCEDURE,ROUTINE <name> */
16151615
elseif (Matches("ALTER","AGGREGATE|FUNCTION|PROCEDURE|ROUTINE",MatchAny))
16161616
COMPLETE_WITH("(");
1617-
/* ALTER AGGREGATE,FUNCTION,PROCEDURE,ROUTINE <name> (...) */
1618-
elseif (Matches("ALTER","AGGREGATE|FUNCTION|PROCEDURE|ROUTINE",MatchAny,MatchAny))
1617+
/* ALTER AGGREGATE <name> (...) */
1618+
elseif (Matches("ALTER","AGGREGATE",MatchAny,MatchAny))
16191619
{
16201620
if (ends_with(prev_wd,')'))
16211621
COMPLETE_WITH("OWNER TO","RENAME TO","SET SCHEMA");
16221622
else
16231623
COMPLETE_WITH_FUNCTION_ARG(prev2_wd);
16241624
}
1625+
/* ALTER FUNCTION,PROCEDURE,ROUTINE <name> (...) */
1626+
elseif (Matches("ALTER","FUNCTION|PROCEDURE|ROUTINE",MatchAny,MatchAny))
1627+
{
1628+
if (ends_with(prev_wd,')'))
1629+
COMPLETE_WITH("OWNER TO","RENAME TO","SET SCHEMA",
1630+
"DEPENDS ON EXTENSION","NO DEPENDS ON EXTENSION");
1631+
else
1632+
COMPLETE_WITH_FUNCTION_ARG(prev2_wd);
1633+
}
1634+
16251635
/* ALTER PUBLICATION <name> */
16261636
elseif (Matches("ALTER","PUBLICATION",MatchAny))
16271637
COMPLETE_WITH("ADD TABLE","DROP TABLE","OWNER TO","RENAME TO","SET");
@@ -1735,7 +1745,8 @@ psql_completion(const char *text, int start, int end)
17351745
/* ALTER INDEX <name> */
17361746
elseif (Matches("ALTER","INDEX",MatchAny))
17371747
COMPLETE_WITH("ALTER COLUMN","OWNER TO","RENAME TO","SET",
1738-
"RESET","ATTACH PARTITION","DEPENDS","NO DEPENDS",
1748+
"RESET","ATTACH PARTITION",
1749+
"DEPENDS ON EXTENSION","NO DEPENDS ON EXTENSION",
17391750
"ALTER COLLATION");
17401751
elseif (Matches("ALTER","INDEX",MatchAny,"ATTACH"))
17411752
COMPLETE_WITH("PARTITION");
@@ -1782,10 +1793,6 @@ psql_completion(const char *text, int start, int end)
17821793
"buffering =",/* GiST */
17831794
"pages_per_range =","autosummarize ="/* BRIN */
17841795
);
1785-
elseif (Matches("ALTER","INDEX",MatchAny,"NO","DEPENDS"))
1786-
COMPLETE_WITH("ON EXTENSION");
1787-
elseif (Matches("ALTER","INDEX",MatchAny,"DEPENDS"))
1788-
COMPLETE_WITH("ON EXTENSION");
17891796
/* ALTER INDEX <name> ALTER COLLATION */
17901797
elseif (Matches("ALTER","INDEX",MatchAny,"ALTER","COLLATION"))
17911798
{
@@ -1920,7 +1927,8 @@ psql_completion(const char *text, int start, int end)
19201927
/* ALTER MATERIALIZED VIEW <name> */
19211928
elseif (Matches("ALTER","MATERIALIZED","VIEW",MatchAny))
19221929
COMPLETE_WITH("ALTER COLUMN","CLUSTER ON","DEPENDS ON EXTENSION",
1923-
"OWNER TO","RENAME","RESET (","SET");
1930+
"NO DEPENDS ON EXTENSION","OWNER TO","RENAME",
1931+
"RESET (","SET");
19241932
/* ALTER MATERIALIZED VIEW xxx RENAME */
19251933
elseif (Matches("ALTER","MATERIALIZED","VIEW",MatchAny,"RENAME"))
19261934
COMPLETE_WITH_ATTR(prev2_wd," UNION SELECT 'COLUMN' UNION SELECT 'TO'");
@@ -1997,7 +2005,8 @@ psql_completion(const char *text, int start, int end)
19972005

19982006
/* ALTER TRIGGER <name> ON <name> */
19992007
elseif (Matches("ALTER","TRIGGER",MatchAny,"ON",MatchAny))
2000-
COMPLETE_WITH("RENAME TO");
2008+
COMPLETE_WITH("RENAME TO","DEPENDS ON EXTENSION",
2009+
"NO DEPENDS ON EXTENSION");
20012010

20022011
/*
20032012
* If we detect ALTER TABLE <name>, suggest sub commands

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp