psql: tab-completion fails SET var=

Started by Erik Rijkersabout 14 years ago2 messageshackers
Jump to latest
#1Erik Rijkers
er@xs4all.nl

(in hopes that the current changes to tab-completion will help to get this fixed)

tab-completion goes wrong on SET setting=...

example:

If you want to input "set search_path=myschema;" without spaces around '=',
and you try tab-completion halfway the schemaname:

set search_path=mysch
^tab

then the initial part of the schema name ('mysch') gets removed and replaced with 'TO'.

So that you now have:

set search_path=TO <cursor>

You lose the part of the schema name that was already input.

With spaces that doesn't happen, but after all tabcompletion is about avoiding keystrokes and errors.

Tab-completion is great and this search_path-annoyance happens to me all the time; my fingers
can't seem to learn this exception.

(pgsql 9.2devel, problem also in latest 9.1.3)

Thanks,

Erik Rijkers

#2Bruce Momjian
bruce@momjian.us
In reply to: Erik Rijkers (#1)
Re: psql: tab-completion fails SET var=

On Fri, Mar 30, 2012 at 08:15:22PM +0200, Erik Rijkers wrote:

(in hopes that the current changes to tab-completion will help to get this fixed)

tab-completion goes wrong on SET setting=...

example:

If you want to input "set search_path=myschema;" without spaces around '=',
and you try tab-completion halfway the schemaname:

set search_path=mysch
^tab

then the initial part of the schema name ('mysch') gets removed and replaced with 'TO'.

So that you now have:

set search_path=TO <cursor>

You lose the part of the schema name that was already input.

With spaces that doesn't happen, but after all tabcompletion is about avoiding keystrokes and errors.

Tab-completion is great and this search_path-annoyance happens to me all the time; my fingers
can't seem to learn this exception.

(pgsql 9.2devel, problem also in latest 9.1.3)

I have fixed this with the attached patch. It does not do any further
competion of DEFAULT or other known settings if the equal sign has no
space before it.

--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ It's impossible for everything to be true. +

Attachments:

psql.difftext/x-diff; charset=us-asciiDownload+1-0