Jeff Janes <jeff.ja...@gmail.com> writes:
> On Fri, Oct 23, 2015 at 5:11 PM, Jeff Janes <jeff.ja...@gmail.com> wrote:
>> Why swidth for border 2 is three greater than it is with border 1, I
>> don't really know.

> Now I see why.  Border 2 doesn't just add a '|' on either end of the line,
> but also adds a space to the left end, so that the "column" name is not
> hard up against the preceding '|'

I looked this over and concluded that the real problem was that the logic
that added space for newline/wrap marker columns was many bricks shy of a
load.  For example it had

        if ((opt_border < 2) &&
            ((hmultiline &&
              (format == &pg_asciiformat_old)) ||
             (dmultiline &&
              (format != &pg_asciiformat_old))))
            iwidth++;            /* for newline indicators */

which aside from being nearly unreadable conflated the header wrap column
with the data wrap column; and even if those had identical conditions for
being added, which they don't, you'd need to count two more columns here
not just one.

I rewrote it to correspond more accurately to what the printing logic
actually does, and pushed it as 0e0776bc9.  Let me know if you still see
any problems here.

                        regards, tom lane


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to