Re: Invisible PROMPT2

Thomas Munro <thomas.munro@gmail.com>

From: Thomas Munro <thomas.munro@gmail.com>
To: Alvaro Herrera <alvherre@2ndquadrant.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Kyotaro Horiguchi <horikyota.ntt@gmail.com>, David Fetter <david@fetter.org>, ilmari@ilmari.org, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2019-11-18T01:40:50Z
Lists: pgsql-hackers
On Mon, Nov 18, 2019 at 1:49 PM Alvaro Herrera <alvherre@2ndquadrant.com> wrote:
> On 2019-Nov-18, Thomas Munro wrote:
> > Nice idea.  Here's one like that, that just does the counting at the
> > end and looks out for readline control codes.  It's pretty naive about
> > what "width" means though: you'll get two spaces for UTF-8 encoded é,
> > and I suppose a complete implementation would know about the half
> > width/full width thing for Chinese and Japanese etc.
>
> Hmm ... is this related to what Juan José posted at
> https://postgr.es/m/CAC+AXB28ADgwdNRA=aAoWDYPqO1DZR+5NTO8iXGSsFrXyVpqYQ@mail.gmail.com
> ?  That's backend code of course, though.

Yeah.  Maybe pg_wcswidth() would be OK though, and it's available in
psql, though I guess you'd have to make a copy with the escaped bits
stripped out.



Commits

  1. psql: Fix %w length in PROMPT2 when PROMPT1 contains a newline.

  2. Allow invisible PROMPT2 in psql.