Allow tab-completion of :variable even as first word on a line.
Christoph Berg
This commit is contained in:
parent
d309acf201
commit
5917574539
@ -761,6 +761,17 @@ psql_completion(char *text, int start, int end)
|
|||||||
if (text[0] == '\\')
|
if (text[0] == '\\')
|
||||||
COMPLETE_WITH_LIST(backslash_commands);
|
COMPLETE_WITH_LIST(backslash_commands);
|
||||||
|
|
||||||
|
/* Variable interpolation */
|
||||||
|
else if (text[0] == ':' && text[1] != ':')
|
||||||
|
{
|
||||||
|
if (text[1] == '\'')
|
||||||
|
matches = complete_from_variables(text, ":'", "'");
|
||||||
|
else if (text[1] == '"')
|
||||||
|
matches = complete_from_variables(text, ":\"", "\"");
|
||||||
|
else
|
||||||
|
matches = complete_from_variables(text, ":", "");
|
||||||
|
}
|
||||||
|
|
||||||
/* If no previous word, suggest one of the basic sql commands */
|
/* If no previous word, suggest one of the basic sql commands */
|
||||||
else if (!prev_wd)
|
else if (!prev_wd)
|
||||||
COMPLETE_WITH_LIST(sql_commands);
|
COMPLETE_WITH_LIST(sql_commands);
|
||||||
@ -2772,17 +2783,6 @@ psql_completion(char *text, int start, int end)
|
|||||||
)
|
)
|
||||||
matches = completion_matches(text, filename_completion_function);
|
matches = completion_matches(text, filename_completion_function);
|
||||||
|
|
||||||
/* Variable interpolation */
|
|
||||||
else if (text[0] == ':' && text[1] != ':')
|
|
||||||
{
|
|
||||||
if (text[1] == '\'')
|
|
||||||
matches = complete_from_variables(text, ":'", "'");
|
|
||||||
else if (text[1] == '"')
|
|
||||||
matches = complete_from_variables(text, ":\"", "\"");
|
|
||||||
else
|
|
||||||
matches = complete_from_variables(text, ":", "");
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Finally, we look through the list of "things", such as TABLE, INDEX and
|
* Finally, we look through the list of "things", such as TABLE, INDEX and
|
||||||
* check if that was the previous word. If so, execute the query to get a
|
* check if that was the previous word. If so, execute the query to get a
|
||||||
|
Loading…
x
Reference in New Issue
Block a user