\set \e and newline - Mailing list pgsql-general

From Wim Bertels
Subject \set \e and newline
Date
Msg-id 75f2f22ccefef9ae79e550a660083b3fe6be038b.camel@ucll.be
Whole thread Raw
Responses Re: \set \e and newline  (Laurenz Albe <laurenz.albe@cybertec.at>)
List pgsql-general
Hello,

a quick question about
https://www.postgresql.org/docs/current/app-psql.html
and the \set option

it seems that \set does not interpret an 'enter' interactively the same
as an 'enter' in a short script made with \e 

###
* case 1:
postgres=# \set x 1
postgres=# select :x;
 ?column? 
----------
        1
###


###
* case 2:
postgres=# \e

-- enter the following the editor (the same code as above)

\set x 1
select :x;

-- save and quit

postgres=#

-- no output
-- curiosly: again \e

postgres=#\e

-- shows select 1; in the editor in v14
-- shows nothing in the editor in v13 (or recursive the content being
cut off)
###


###
variation of case 2:
postgres=# \e

-- enter the following the editor (the same code as above)

\set x 1
select :x;

-- save and quit

postgres=# select :x;
 select1select1 
----------------
              1

###


Doing the same thing with \i instead of \e does behave like i would
expect, ie the same as case 1.

This is referred to as meta-commands in de manual which are to be
affected when using \e, but \g instead of ; seems to work (while it
should be the same?)


###
variation of case 2 using \g instead of ; :
postgres=# \e

-- enter the following the editor (the same code as above)

\set x 1
select :x \g

-- save and quit

 ?column? 
----------
        1
(1 row)

postgres=# 
###


-- 
mvg,
Wim





pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: tsvector string representation and parsing
Next
From: Hu Bert
Date:
Subject: After upgrade pg12 -> pg14 import time increased