Re: [PATCH] Tab complete EXECUTE FUNCTION for CREATE (EVENT) TRIGGER

Поиск
Список
Период
Сортировка
От ilmari@ilmari.org (Dagfinn Ilmari Mannsåker)
Тема Re: [PATCH] Tab complete EXECUTE FUNCTION for CREATE (EVENT) TRIGGER
Дата
Msg-id d8ja7n2p8sy.fsf@dalvik.ping.uio.no
обсуждение исходный текст
Ответ на Re: [PATCH] Tab complete EXECUTE FUNCTION for CREATE (EVENT) TRIGGER  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: [PATCH] Tab complete EXECUTE FUNCTION for CREATE (EVENT) TRIGGER
Re: [PATCH] Tab complete EXECUTE FUNCTION for CREATE (EVENT) TRIGGER
Список pgsql-hackers
Tom Lane <tgl@sss.pgh.pa.us> writes:

> Michael Paquier <michael@paquier.xyz> writes:
>> On Wed, Oct 24, 2018 at 10:36:41AM +0100, Dagfinn Ilmari Mannsåker wrote:
>>> Fair point. I was unsure about whether to complete every supported
>>> variant or just the new one.  Updated patches attached.
>
>> One problem with this approach is that a user needs to use twice tab.
>> The first time is to show "EXECUTE", and the second time is to show
>> automatically "PROCEDURE" or "FUNCTION" automatically.
>
> Yeah.  Why don't we keep the existing behavior of completing both
> words at once, but make it server-version-dependent which completion
> you get?

I did that initially, but because COMPLETE_WITH() requres constant
arguments, I had to repeat the whole list with just changing PROCEDURE
to FUNCTION, which I thought was undesirably repetitive.  If there's a
more concise alternative to the below, or the consensus is that saving
one TAB press is worth it, I'll change it.

    else if (HeadMatches("CREATE", "TRIGGER") && TailMatches("ON", MatchAny))
        if (pset.sversion >= 110000)
            COMPLETE_WITH("NOT DEFERRABLE", "DEFERRABLE", "INITIALLY",
                          "REFERENCING", "FOR", "WHEN (", "EXECUTE FUNCTION");
        else
            COMPLETE_WITH("NOT DEFERRABLE", "DEFERRABLE", "INITIALLY",
                          "REFERENCING", "FOR", "WHEN (", "EXECUTE PROCEDURE");

- ilmari
-- 
"The surreality of the universe tends towards a maximum" -- Skud's Law
"Never formulate a law or axiom that you're not prepared to live with
 the consequences of."                              -- Skud's Meta-Law


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Dilip Kumar
Дата:
Сообщение: Re: CVE-2017-7484-induced bugs, or, btree cmp functions are not leakproof?
Следующее
От: Christian Ullrich
Дата:
Сообщение: Re: Problem with EDB 11.0 Windows x64 distributions