December 28th, 2009 by depesz | Tags: , , , , , , | No comments »
Did it help? If yes - maybe you can help me?

On 22nd of November Tom Lane committed patch by Roger Leigh which fixes my pet peeve:

Log Message:
-----------
Improve psql's tabular display of wrapped-around data by inserting markers
in the formerly-always-blank columns just to left and right of the data.
Different marking is used for a line break caused by a newline in the data
than for a straight wraparound. A newline break is signaled by a "+" in the
right margin column in ASCII mode, or a carriage return arrow in UNICODE mode.
Wraparound is signaled by a dot in the right margin as well as the following
left margin in ASCII mode, or an ellipsis symbol in the same places in UNICODE
mode. "\pset linestyle old-ascii" is added to make the previous behavior
available if anyone really wants it.
 
In passing, this commit also cleans up a few regression test files that
had unintended spacing differences from the current actual output.
 
Roger Leigh, reviewed by Gabrielle Roth and other members of PDXPUG.

Let's imagine, you have a record that contains new line characters, and also long lines, which get wrapped. In 8.4 it looks like this:

# \pset format wrapped
Output format is wrapped.
 
# select '1st', 'line', 'of text'
union all
select '2nd', E'much longer\nand containing multiple lines, including, but not limiting to - a single long line - this one.\nand then something at the end', 'just a filler';
?column? | ?column? | ?column?
----------+-----------------------------------------------------+---------------
1st | line | of text
2nd | much longer | just a filler
: and containing multiple lines, including, but not l
; imiting to - a single long line - this one.
: and then something at the end
(2 rows)

This lack of column separator always annoyed me. But now, thanks to Roger, output of this query looks like this:

?column? | ?column? | ?column?
----------+-----------------------------------------------------+---------------
1st | line | of text
2nd | much longer +| just a filler
| and containing multiple lines, including, but not l.|
|.imiting to - a single long line - this one. +|
| and then something at the end |

I don't know how about you, but I like it much better.

Of course the problem is non-existant if you use less for page, but if you don't like it, or you have problems with it – wrapped output with Roger patch is simply great.

Leave a comment