20110401_psql_tab.patch

application/octet-stream

Filename: 20110401_psql_tab.patch
Type: application/octet-stream
Part: 3
Message: Re: Comments on SQL/Med objects

Patch

Same data as JSON: GET /api/v1/attachments/:id/patch the parsed metadata as JSON — format, series position, per-file stats; never the diff bytes. API reference →
Format: unified
File+
src/bin/psql/tab-complete.c 0 0
diff --git a/src/bin/psql/tab-complete.c b/src/bin/psql/tab-complete.c
index e72c5b9..994c053 100644
*** a/src/bin/psql/tab-complete.c
--- b/src/bin/psql/tab-complete.c
*************** psql_completion(char *text, int start, i
*** 714,720 ****
  			   *prev2_wd,
  			   *prev3_wd,
  			   *prev4_wd,
! 			   *prev5_wd;
  
  	static const char *const sql_commands[] = {
  		"ABORT", "ALTER", "ANALYZE", "BEGIN", "CHECKPOINT", "CLOSE", "CLUSTER",
--- 714,721 ----
  			   *prev2_wd,
  			   *prev3_wd,
  			   *prev4_wd,
! 			   *prev5_wd,
! 			   *prev6_wd;
  
  	static const char *const sql_commands[] = {
  		"ABORT", "ALTER", "ANALYZE", "BEGIN", "CHECKPOINT", "CLOSE", "CLUSTER",
*************** psql_completion(char *text, int start, i
*** 762,767 ****
--- 763,769 ----
  	prev3_wd = previous_word(start, 2);
  	prev4_wd = previous_word(start, 3);
  	prev5_wd = previous_word(start, 4);
+ 	prev6_wd = previous_word(start, 5);
  
  	/* If a backslash command was started, continue */
  	if (text[0] == '\\')
*************** psql_completion(char *text, int start, i
*** 1547,1559 ****
  			 pg_strcasecmp(prev_wd, "ON") == 0)
  	{
  		static const char *const list_COMMENT[] =
! 		{"CAST", "COLLATION", "CONVERSION", "DATABASE", "FOREIGN TABLE", "INDEX", "LANGUAGE", "RULE", "SCHEMA",
  			"SEQUENCE", "TABLE", "TYPE", "VIEW", "COLUMN", "AGGREGATE", "FUNCTION",
  			"OPERATOR", "TRIGGER", "CONSTRAINT", "DOMAIN", "LARGE OBJECT",
  		"TABLESPACE", "TEXT SEARCH", "ROLE", NULL};
  
  		COMPLETE_WITH_LIST(list_COMMENT);
  	}
  	else if (pg_strcasecmp(prev4_wd, "COMMENT") == 0 &&
  			 pg_strcasecmp(prev3_wd, "ON") == 0 &&
  			 pg_strcasecmp(prev2_wd, "TEXT") == 0 &&
--- 1549,1571 ----
  			 pg_strcasecmp(prev_wd, "ON") == 0)
  	{
  		static const char *const list_COMMENT[] =
! 		{"CAST", "COLLATION", "CONVERSION", "DATABASE", "FOREIGN DATA WRAPPER",
! 			"SERVER", "FOREIGN TABLE", "INDEX", "LANGUAGE", "RULE", "SCHEMA",
  			"SEQUENCE", "TABLE", "TYPE", "VIEW", "COLUMN", "AGGREGATE", "FUNCTION",
  			"OPERATOR", "TRIGGER", "CONSTRAINT", "DOMAIN", "LARGE OBJECT",
  		"TABLESPACE", "TEXT SEARCH", "ROLE", NULL};
  
  		COMPLETE_WITH_LIST(list_COMMENT);
  	}
+ 	else if (pg_strcasecmp(prev3_wd, "COMMENT") == 0 &&
+ 			 pg_strcasecmp(prev2_wd, "ON") == 0 &&
+ 			 pg_strcasecmp(prev_wd, "FOREIGN") == 0)
+ 	{
+ 		static const char *const list_TRANS2[] =
+ 		{"DATA WRAPPER", "TABLE", NULL};
+ 
+ 		COMPLETE_WITH_LIST(list_TRANS2);
+ 	}
  	else if (pg_strcasecmp(prev4_wd, "COMMENT") == 0 &&
  			 pg_strcasecmp(prev3_wd, "ON") == 0 &&
  			 pg_strcasecmp(prev2_wd, "TEXT") == 0 &&
*************** psql_completion(char *text, int start, i
*** 1566,1571 ****
--- 1578,1585 ----
  	}
  	else if ((pg_strcasecmp(prev4_wd, "COMMENT") == 0 &&
  			  pg_strcasecmp(prev3_wd, "ON") == 0) ||
+ 			 (pg_strcasecmp(prev6_wd, "COMMENT") == 0 &&
+ 			  pg_strcasecmp(prev5_wd, "ON") == 0) ||
  			 (pg_strcasecmp(prev5_wd, "ON") == 0 &&
  			  pg_strcasecmp(prev4_wd, "TEXT") == 0 &&
  			  pg_strcasecmp(prev3_wd, "SEARCH") == 0))