|From:||Artur Zakirov <a(dot)zakirov(at)postgrespro(dot)ru>|
|To:||Kyotaro HORIGUCHI <horiguchi(dot)kyotaro(at)lab(dot)ntt(dot)co(dot)jp>, pgsql-hackers(at)postgresql(dot)org|
|Subject:||Re: IF (NOT) EXISTS in psql-completion|
|Views:||Raw Message | Whole Thread | Download mbox | Resend email|
On 05.02.2016 11:09, Kyotaro HORIGUCHI wrote:
> I considered how to make tab-completion robust for syntactical
> noises, in other words, optional words in syntax. Typically "IF
> (NOT) EXISTS", UNIQUE and TEMPORARY are words that don't affect
> further completion. However, the current delimit-matching
> mechanism is not so capable (or is complexty-prone) to live with
> such noises. I have proposed to use regular expressions or
> simplified one for the robustness but it was too complex to be
> This is another answer for the problem. Removal of such words
> on-the-fly makes further matching more robust.
> Next, currently some CREATE xxx subsyntaxes of CREATE SCHEMA are
> matched using TailMatching but it makes difficult the
> options-removal operations, which needs forward matching.
> So I introduced two things to resolve them by this patch.
I did some tests with your patch. But I am not confident in tab-complete.c.
And I have some notes:
1 - I execute git apply command and get the following warning:
warning: 1 line adds whitespace errors.
This is because of superfluous whitespace I think.
2 - In psql I write "create table if" and press <TAB>. psql adds the
create table IF NOT EXISTS
I think psql should continue with lower case if user wrote query with
loser case text:
create table if not exists
3 - Same with "IF EXISTS". If a write "alter view if" and press <TAB>
alter view IF EXISTS
Postgres Professional: http://www.postgrespro.com
Russian Postgres Company
|Next Message||Eugene Kazakov||2016-02-15 12:50:48||Re: Small PATCH: check of 2 Perl modules|
|Previous Message||Ashutosh Bapat||2016-02-15 12:33:31||Re: postgres_fdw join pushdown (was Re: Custom/Foreign-Join-APIs)|