Re: Tab completion for CREATE SCHEMAAUTHORIZATION - Mailing list pgsql-hackers

From Michael Paquier
Subject Re: Tab completion for CREATE SCHEMAAUTHORIZATION
Date
Msg-id ZFXCY0s1D1KtJi+5@paquier.xyz
Whole thread Raw
In response to Re: Tab completion for CREATE SCHEMAAUTHORIZATION  (Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>)
Responses Re: Tab completion for CREATE SCHEMAAUTHORIZATION
List pgsql-hackers
On Tue, May 02, 2023 at 01:19:49PM +0100, Dagfinn Ilmari Mannsåker wrote:
> Dagfinn Ilmari Mannsåker <ilmari@ilmari.org> writes:
>> This is for completing the word CREATE itself after CREATE SCHEMA
>> [[<name>] AUTHORIZATION] <name>.  The things that can come after that
>> are already handled generically earlier in the function:
>>
>> /* CREATE */
>>     /* complete with something you can create */
>>     else if (TailMatches("CREATE"))
>>         matches = rl_completion_matches(text, create_command_generator);
>>
>> create_command_generator uses the words_after_create array, which lists
>> all the things that can be created.

You are right.  I have completely forgotten that this code path would
append everything that supports CREATE for a CREATE SCHEMA command :)

> But, looking closer at the docs, only tables, views, indexes, sequences
> and triggers can be created as part of a CREATE SCHEMA statement. Maybe
> we should add a HeadMatches("CREATE", "SCHEMA") exception in the above?

Yes, it looks like we are going to need an exception and append only
the keywords that are supported, or we will end up recommending mostly
things that are not accepted by the parser.
--
Michael

Attachment

pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: Add LZ4 compression in pg_dump
Next
From: Michael Paquier
Date:
Subject: Re: [PATCH] Add native windows on arm64 support