On Thu, Aug 7, 2014 at 6:26 AM, Pavel Stehule <pavel.stehule@gmail.com> wrote:
> Hello
>
> updated version patch in attachment
Thanks! But ISTM you forgot to attached the patch.
>> + /* all psql known variables are included in list by default */
>> + for (known_varname = known_varnames; *known_varname; known_varname++)
>> + varnames[nvars++] = pg_strdup(*known_varname);
>>
>> Don't we need to append both prefix and suffix to even known variables?
>
>
> ??? I am not sure if I understand well - probably system "read only"
> variables as DBNAME, USER, VERSION should not be there
I had that question because complete_from_variables() is also called by the
tab-completion of "\echo :" and it shows half-baked variables list. So
I thought probably we need to change complete_from_variables() more to
fix the problem.
>> + else if (strcmp(prev2_wd, "\\set") == 0)
>> + {
>> + if (strcmp(prev_wd, "AUTOCOMMIT") == 0)
>>
>> ISTM that some psql variables like IGNOREEOF are not there. Why not?
>
>
> yes, there are not complete for DBNAME, ENCODING, FETCH_COUNT, HISTCONTROL,
> HISTFILE, HISTSIZE, HOST, IGNOREEOFF, PROMPT*,USER, VERSION
>
> There are more reasons:
>
> * paremeter is not a enum (string, number or both): FETCH_COUNT, PROMPT,
> HISTSIZE, ..
>
> * variable is pseudo read only - change has not any effect: DBNAME,
> ENCODING, VERSION
So HISTCONTROL should be there because it doesn't have such reasons at all?
Regards,
--
Fujii Masao