Re: [PATCH] Improve autocompletion for SELECT statements

From: Dave Page <dpage(at)pgadmin(dot)org>
To: Guillaume Lelarge <guillaume(at)lelarge(dot)info>
Cc: Wander Winkelhorst <w(dot)winkelhorst(at)gmail(dot)com>, "pgadmin-hackers(at)postgresql(dot)org" <pgadmin-hackers(at)postgresql(dot)org>
Subject: Re: [PATCH] Improve autocompletion for SELECT statements
Date: 2011-11-13 22:10:47
Message-ID: CA+OCxoy_Dthc0joV688decKHE3uhSnVTRD45qRAaDL1K4LNymA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

I just noticed this thread. Does the patch update the tab completion code
(tab-complete.inc, iirc) to the latest from PG 9.1? I don't think we
remembered to do that this release, so it probably should.

On Sunday, November 13, 2011, Guillaume Lelarge <guillaume(at)lelarge(dot)info>
wrote:
> On Thu, 2011-11-10 at 22:51 +0100, Wander Winkelhorst wrote:
>>
>> On Tue, Nov 1, 2011 at 4:31 PM, Guillaume Lelarge
>> <guillaume(at)lelarge(dot)info> wrote:
>>
>>
>>
>> OK, it works now. I understand a lot of improvements could
>> come later,
>> but there is one thing that bugs me. And I think it should be
>> fixed
>> before applying.
>>
>> Let's say I wrote this:
>>
>> SELECT * FROM person JOIN company ON
>>
>> and try autocompletion afterwards. I get the list of columns
>> in person
>> and company, which is great. The issue is that you only have
>> the
>> column's name, not the table's name. So you don't know if the
>> column
>> refers to the first table or the second. We could say it's not
>> an issue
>> if we were sure they were all different. But if I have two
>> times the id
>> column, it gets kinda weird. Maybe you should show the table's
>> name in
>> front of the column's name.
>>
>> Allright, another week, another patch :-)
>>
>>
>> Changes since last time:
>> - Support for aliasses (autocompletion on "select * from person p join
>> company c on ...) will present a list of "p.id, p.name, c.id, c.name
>> etc.)
>> - Support for queries without aliasses (select * from person
>> where ...)
>> - Support for queries without aliasses but with joins (select * from
>> person join company on ...)
>> - Support for queries with mixed versions (select * from person p join
>> company on ...)
>> - Support for update statements (update person set ...)
>> - Support for autocompletion after SELECT (select ... from person)
>> - Fixed a crash
>>
>
> Quite interesting, but alas I found two bugs:
>
> 1. select from fbb_categories , fbb_posts
> I put my cursor between select and from, and ask for autocomplete,
> and I get
>
> ,.catname
> ,.disp_position
> ,.id
>
> They all are part of fbb_categories. Unfortunately, that doesn't explain
> the comma
>
> * select from fbb_categories, fbb_posts
> I put my cursor between select and from, and ask for autocomplete,
> and I get nothing (but it works with only one table).
>
> * select * from fbb_topics c left join fbb_posts p on p.
> I put my cursor right after "p.". I was expecting to get the columns
> of fbb_posts, but got nothing.
>
> * select * from fbb_topics c left join fbb_posts p on p
> I put my cursor right after "p". I was expecting to get the columns
> of fbb_posts, but got columns from p (as long as they contain a p
> themselves, and columns from c when they contain a p in their name.
> I was only expecting columns of fbb_posts.
>
> Can you get a look at those? Thanks.
>
>
> --
> Guillaume
> http://blog.guillaume.lelarge.info
> http://www.dalibo.com
>
>
> --
> Sent via pgadmin-hackers mailing list (pgadmin-hackers(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgadmin-hackers
>

--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Responses

Browse pgadmin-hackers by date

  From Date Subject
Next Message Guillaume Lelarge 2011-11-14 08:19:43 Re: [PATCH] Improve autocompletion for SELECT statements
Previous Message Guillaume Lelarge 2011-11-13 22:06:00 Re: [PATCH] Improve autocompletion for SELECT statements