dformatsize = 0;
struct lineptr *hlineptr,
*dlineptr;
- bool is_pager = false;
+ bool is_pager = false,
+ hmultiline = false,
+ dmultiline = false;
int output_columns = 0; /* Width of interactive console */
if (cancel_pressed)
if (width > hwidth)
hwidth = width;
if (height > hheight)
+ {
hheight = height;
+ hmultiline = true;
+ }
if (fs > hformatsize)
hformatsize = fs;
}
if (width > dwidth)
dwidth = width;
if (height > dheight)
+ {
dheight = height;
+ dmultiline = true;
+ }
if (fs > dformatsize)
dformatsize = fs;
}
if (cont->opt->format == PRINT_WRAPPED)
{
/*
- * Calculate the available width to wrap the columns to after
- * subtracting the maximum header width and separators. At a minimum
- * enough to print "[ RECORD N ]"
+ * Separators width
*/
unsigned int width,
- swidth;
+ min_width,
+ swidth,
+ iwidth = 0;
if (opt_border == 0)
- swidth = 1; /* "header data" */
+ {
+ /*
+ * For border = 0, one space in the middle.
+ */
+ swidth = 1;
+ }
else if (opt_border == 1)
- swidth = 3; /* "header | data" */
- else
- swidth = 7; /* "| header | data |" */
-
- /* Wrap to maximum width */
- width = dwidth + swidth + hwidth;
- if ((output_columns > 0) && (width > output_columns))
{
- dwidth = output_columns - hwidth - swidth;
- width = output_columns;
+ /*
+ * For border = 1, one for the pipe (|) in the middle
+ * between the two spaces.
+ */
+ swidth = 3;
}
+ else
+ /*
+ * For border = 2, two more for the pipes (|) at the begging and
+ * at the end of the lines.
+ */
+ swidth = 7;
- /* Wrap to minimum width */
+ if ((opt_border < 2) &&
+ ((hmultiline &&
+ (format == &pg_asciiformat_old)) ||
+ (dmultiline &&
+ (format != &pg_asciiformat_old))))
+ iwidth++; /* for newline indicators */
+
+ min_width = hwidth + iwidth + swidth + 3;
+
+ /*
+ * Record header width
+ */
if (!opt_tuples_only)
{
- int delta = 1 + log10(cont->nrows) - width;
-
+ /*
+ * Record number
+ */
+ unsigned int rwidth = 1 + log10(cont->nrows);
if (opt_border == 0)
- delta += 6; /* "* RECORD " */
+ rwidth += 9; /* "* RECORD " */
else if (opt_border == 1)
- delta += 10; /* "-[ RECORD ]" */
+ rwidth += 12; /* "-[ RECORD ]" */
else
- delta += 15; /* "+-[ RECORD ]-+" */
+ rwidth += 15; /* "+-[ RECORD ]-+" */
- if (delta > 0)
- dwidth += delta;
+ if (rwidth > min_width)
+ min_width = rwidth;
}
- else if (dwidth < 3)
- dwidth = 3;
+
+ /* Wrap to minimum width */
+ width = hwidth + iwidth + swidth + dwidth;
+ if ((width < min_width) || (output_columns < min_width))
+ width = min_width - hwidth - iwidth - swidth;
+ else if (output_columns > 0)
+ /*
+ * Wrap to maximum width
+ */
+ width = output_columns - hwidth - iwidth - swidth;
+
+ if ((width < dwidth) || (dheight > 1))
+ {
+ dmultiline = true;
+ if ((opt_border == 0) &&
+ (format != &pg_asciiformat_old))
+ width--; /* for wrap indicators */
+ }
+ dwidth = width;
}
/* print records */
/* Print record header (e.g. "[ RECORD N ]") above each record */
if (i % cont->ncolumns == 0)
{
+ unsigned int lhwidth = hwidth;
+ if ((opt_border < 2) &&
+ (hmultiline) &&
+ (format == &pg_asciiformat_old))
+ lhwidth++; /* for newline indicators */
+
if (!opt_tuples_only)
- print_aligned_vertical_line(cont, record++, hwidth, dwidth,
- pos, fout);
+ print_aligned_vertical_line(cont, record++, lhwidth,
+ dwidth, pos, fout);
else if (i != 0 || !cont->opt->start_table || opt_border == 2)
- print_aligned_vertical_line(cont, 0, hwidth, dwidth,
+ print_aligned_vertical_line(cont, 0, lhwidth, dwidth,
pos, fout);
}
/* Header (never wrapped so just need to deal with newlines) */
if (!hcomplete)
{
- int swidth,
- twidth = hwidth + 1;
-
- fputs(hline ? format->header_nl_left : " ", fout);
- strlen_max_width(hlineptr[hline].ptr, &twidth,
+ int swidth = hwidth,
+ target_width = hwidth;
+ /*
+ * Left spacer or new line indicator
+ */
+ if ((opt_border == 2) ||
+ (hmultiline && (format == &pg_asciiformat_old)))
+ fputs(hline ? format->header_nl_left : " ", fout);
+ /*
+ * Header text
+ */
+ strlen_max_width(hlineptr[hline].ptr, &target_width,
encoding);
fprintf(fout, "%-s", hlineptr[hline].ptr);
- swidth = hwidth - twidth;
- if (swidth > 0) /* spacer */
+ /*
+ * Spacer
+ */
+ swidth -= target_width;
+ if (swidth > 0)
fprintf(fout, "%*s", swidth, " ");
+ /*
+ * New line indicator or separator's space
+ */
if (hlineptr[hline + 1].ptr)
{
/* More lines after this one due to a newline */
- fputs(format->header_nl_right, fout);
+ if ((opt_border > 0) ||
+ (hmultiline && (format != &pg_asciiformat_old)))
+ fputs(format->header_nl_right, fout);
hline++;
}
else
{
/* This was the last line of the header */
- fputs(" ", fout);
+ if ((opt_border > 0) ||
+ (hmultiline && (format != &pg_asciiformat_old)))
+ fputs(" ", fout);
hcomplete = 1;
}
}
else
{
- /* Header exhausted but more data for column */
- fprintf(fout, "%*s", hwidth + 2, "");
+ unsigned int swidth = hwidth + opt_border;
+ if ((opt_border < 2) &&
+ (hmultiline) &&
+ (format == &pg_asciiformat_old))
+ swidth++;
+
+ if ((opt_border == 0) &&
+ (format != &pg_asciiformat_old) &&
+ (hmultiline))
+ swidth++;
+
+ fprintf(fout, "%*s", swidth, " ");
}
/* Separator */
/* Data */
if (!dcomplete)
{
- int target_width,
+ int target_width = dwidth,
bytes_to_output,
- swidth;
+ swidth = dwidth;
+ /*
+ * Left spacer on wrap indicator
+ */
fputs(!dcomplete && !offset ? " " : format->wrap_left, fout);
- target_width = dwidth;
+ /*
+ * Data text
+ */
bytes_to_output = strlen_max_width(dlineptr[dline].ptr + offset,
&target_width, encoding);
fputnbytes(fout, (char *) (dlineptr[dline].ptr + offset),
chars_to_output -= target_width;
offset += bytes_to_output;
- /* spacer */
- swidth = dwidth - target_width;
- if (swidth > 0)
- fprintf(fout, "%*s", swidth, "");
+ /* Spacer */
+ swidth -= target_width;
if (chars_to_output)
{
/* continuing a wrapped column */
- fputs(format->wrap_right, fout);
+ if ((opt_border > 1) ||
+ (dmultiline && (format != &pg_asciiformat_old)))
+ {
+ if (swidth > 0)
+ fprintf(fout, "%*s", swidth, " ");
+ fputs(format->wrap_right, fout);
+ }
}
else if (dlineptr[dline + 1].ptr)
{
/* reached a newline in the column */
- fputs(format->nl_right, fout);
+ if ((opt_border > 1) ||
+ (dmultiline && (format != &pg_asciiformat_old)))
+ {
+ if (swidth > 0)
+ fprintf(fout, "%*s", swidth, " ");
+ fputs(format->nl_right, fout);
+ }
dline++;
offset = 0;
chars_to_output = dlineptr[dline].width;
else
{
/* reached the end of the cell */
- fputs(" ", fout);
+ if (opt_border > 1)
+ {
+ if (swidth > 0)
+ fprintf(fout, "%*s", swidth, " ");
+ fputs(" ", fout);
+ }
dcomplete = 1;
}
+ /* Right border */
if (opt_border == 2)
fputs(dformat->rightvrule, fout);
Title (title) unset.
Tuples only (tuples_only) is off.
-- test multi-line headers, wrapping, and newline indicators
-prepare q as select array_to_string(array_agg(repeat('x',2*n)),E'\n') as "a
+prepare q as select array_to_string(array_agg(repeat('x',2*n)),E'\n') as "ab
-b", array_to_string(array_agg(repeat('y',20-2*n)),E'\n') as "a
-b" from generate_series(1,10) as n(n) group by n>1 ;
+c", array_to_string(array_agg(repeat('y',20-2*n)),E'\n') as "a
+bc" from generate_series(1,10) as n(n) group by n>1 ;
\pset linestyle ascii
\pset expanded off
\pset columns 40
\pset border 0
\pset format unaligned
execute q;
-a
+ab
-b|a
-b
+c|a
+bc
xx|yyyyyyyyyyyyyyyyyy
xxxx
xxxxxx
(2 rows)
\pset format aligned
execute q;
- a + a +
- + b
- b
+ ab + a +
+ + bc
+ c
-------------------- ------------------
xx yyyyyyyyyyyyyyyyyy
xxxx +yyyyyyyyyyyyyyyy +
\pset format wrapped
execute q;
- a + a +
- + b
- b
+ ab + a +
+ + bc
+ c
-------------------- ------------------
xx yyyyyyyyyyyyyyyyyy
xxxx +yyyyyyyyyyyyyyyy +
\pset border 1
\pset format unaligned
execute q;
-a
+ab
-b|a
-b
+c|a
+bc
xx|yyyyyyyyyyyyyyyyyy
xxxx
xxxxxx
(2 rows)
\pset format aligned
execute q;
- a +| a +
- +| b
- b |
+ ab +| a +
+ +| bc
+ c |
----------------------+--------------------
xx | yyyyyyyyyyyyyyyyyy
xxxx +| yyyyyyyyyyyyyyyy +
\pset format wrapped
execute q;
- a +| a +
- +| b
- b |
+ ab +| a +
+ +| bc
+ c |
-------------------+--------------------
xx | yyyyyyyyyyyyyyyyyy
xxxx +| yyyyyyyyyyyyyyyy +
\pset border 2
\pset format unaligned
execute q;
-a
+ab
-b|a
-b
+c|a
+bc
xx|yyyyyyyyyyyyyyyyyy
xxxx
xxxxxx
\pset format aligned
execute q;
+----------------------+--------------------+
-| a +| a +|
-| +| b |
-| b | |
+| ab +| a +|
+| +| bc |
+| c | |
+----------------------+--------------------+
| xx | yyyyyyyyyyyyyyyyyy |
| xxxx +| yyyyyyyyyyyyyyyy +|
\pset format wrapped
execute q;
+-----------------+--------------------+
-| a +| a +|
-| +| b |
-| b | |
+| ab +| a +|
+| +| bc |
+| c | |
+-----------------+--------------------+
| xx | yyyyyyyyyyyyyyyyyy |
| xxxx +| yyyyyyyyyyyyyyyy +|
\pset border 0
\pset format unaligned
execute q;
-a
+ab
-b|xx
+c|xx
a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
-a
+ab
-b|xxxx
+c|xxxx
xxxxxx
xxxxxxxx
xxxxxxxxxx
xxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx
a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
yyyyyyyyyyyyyy
yyyyyyyyyyyy
yyyyyyyyyy
\pset format aligned
execute q;
-* Record 1
- a+ xx
+* Record 1
+ab+ xx
+
- b
- a+ yyyyyyyyyyyyyyyyyy
- b
-* Record 2
- a+ xxxx +
+c
+a + yyyyyyyyyyyyyyyyyy
+bc
+* Record 2
+ab+ xxxx +
+ xxxxxx +
- b xxxxxxxx +
+c xxxxxxxx +
xxxxxxxxxx +
xxxxxxxxxxxx +
xxxxxxxxxxxxxx +
xxxxxxxxxxxxxxxx +
xxxxxxxxxxxxxxxxxx +
- xxxxxxxxxxxxxxxxxxxx
- a+ yyyyyyyyyyyyyyyy +
- b yyyyyyyyyyyyyy +
+ xxxxxxxxxxxxxxxxxxxx
+a + yyyyyyyyyyyyyyyy +
+bc yyyyyyyyyyyyyy +
yyyyyyyyyyyy +
yyyyyyyyyy +
yyyyyyyy +
yyyyyy +
yyyy +
yy +
-
+
\pset format wrapped
execute q;
-* Record 1
- a+ xx
+* Record 1
+ab+ xx
+
- b
- a+ yyyyyyyyyyyyyyyyyy
- b
-* Record 2
- a+ xxxx +
- + xxxxxx +
- b xxxxxxxx +
- xxxxxxxxxx +
- xxxxxxxxxxxx +
- xxxxxxxxxxxxxx +
- xxxxxxxxxxxxxxxx +
- xxxxxxxxxxxxxxxxxx+
- xxxxxxxxxxxxxxxxxx.
- .xx
- a+ yyyyyyyyyyyyyyyy +
- b yyyyyyyyyyyyyy +
- yyyyyyyyyyyy +
- yyyyyyyyyy +
- yyyyyyyy +
- yyyyyy +
- yyyy +
- yy +
-
+c
+a + yyyyyyyyyyyyyyy.
+bc .yyy
+* Record 2
+ab+ xxxx +
+ + xxxxxx +
+c xxxxxxxx +
+ xxxxxxxxxx +
+ xxxxxxxxxxxx +
+ xxxxxxxxxxxxxx +
+ xxxxxxxxxxxxxxx.
+ .x +
+ xxxxxxxxxxxxxxx.
+ .xxx +
+ xxxxxxxxxxxxxxx.
+ .xxxxx
+a + yyyyyyyyyyyyyyy.
+bc .y +
+ yyyyyyyyyyyyyy +
+ yyyyyyyyyyyy +
+ yyyyyyyyyy +
+ yyyyyyyy +
+ yyyyyy +
+ yyyy +
+ yy +
+
\pset border 1
\pset format unaligned
execute q;
-a
+ab
-b|xx
+c|xx
a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
-a
+ab
-b|xxxx
+c|xxxx
xxxxxx
xxxxxxxx
xxxxxxxxxx
xxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx
a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
yyyyyyyyyyyyyy
yyyyyyyyyyyy
yyyyyyyyyy
\pset format aligned
execute q;
--[ RECORD 1 ]-----------
- a+| xx
+-[ RECORD 1 ]------------
+ab+| xx
+|
- b |
- a+| yyyyyyyyyyyyyyyyyy
- b |
--[ RECORD 2 ]-----------
- a+| xxxx +
+c |
+a +| yyyyyyyyyyyyyyyyyy
+bc |
+-[ RECORD 2 ]------------
+ab+| xxxx +
+| xxxxxx +
- b | xxxxxxxx +
+c | xxxxxxxx +
| xxxxxxxxxx +
| xxxxxxxxxxxx +
| xxxxxxxxxxxxxx +
| xxxxxxxxxxxxxxxx +
| xxxxxxxxxxxxxxxxxx +
- | xxxxxxxxxxxxxxxxxxxx
- a+| yyyyyyyyyyyyyyyy +
- b | yyyyyyyyyyyyyy +
+ | xxxxxxxxxxxxxxxxxxxx
+a +| yyyyyyyyyyyyyyyy +
+bc | yyyyyyyyyyyyyy +
| yyyyyyyyyyyy +
| yyyyyyyyyy +
| yyyyyyyy +
| yyyyyy +
| yyyy +
| yy +
- |
+ |
\pset format wrapped
execute q;
--[ RECORD 1 ]-------
- a+| xx
+-[ RECORD 1 ]------
+ab+| xx
+|
- b |
- a+| yyyyyyyyyyyyyyyy.
- b |.yy
--[ RECORD 2 ]-------
- a+| xxxx +
- +| xxxxxx +
- b | xxxxxxxx +
- | xxxxxxxxxx +
- | xxxxxxxxxxxx +
- | xxxxxxxxxxxxxx +
- | xxxxxxxxxxxxxxxx+
- | xxxxxxxxxxxxxxxx.
- |.xx +
- | xxxxxxxxxxxxxxxx.
- |.xxxx
- a+| yyyyyyyyyyyyyyyy+
- b | yyyyyyyyyyyyyy +
- | yyyyyyyyyyyy +
- | yyyyyyyyyy +
- | yyyyyyyy +
- | yyyyyy +
- | yyyy +
- | yy +
- |
+c |
+a +| yyyyyyyyyyyyyy.
+bc |.yyyy
+-[ RECORD 2 ]------
+ab+| xxxx +
+ +| xxxxxx +
+c | xxxxxxxx +
+ | xxxxxxxxxx +
+ | xxxxxxxxxxxx +
+ | xxxxxxxxxxxxxx+
+ | xxxxxxxxxxxxxx.
+ |.xx +
+ | xxxxxxxxxxxxxx.
+ |.xxxx +
+ | xxxxxxxxxxxxxx.
+ |.xxxxxx
+a +| yyyyyyyyyyyyyy.
+bc |.yy +
+ | yyyyyyyyyyyyyy+
+ | yyyyyyyyyyyy +
+ | yyyyyyyyyy +
+ | yyyyyyyy +
+ | yyyyyy +
+ | yyyy +
+ | yy +
+ |
\pset border 2
\pset format unaligned
execute q;
-a
+ab
-b|xx
+c|xx
a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
-a
+ab
-b|xxxx
+c|xxxx
xxxxxx
xxxxxxxx
xxxxxxxxxx
xxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx
a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
yyyyyyyyyyyyyy
yyyyyyyyyyyy
yyyyyyyyyy
\pset format aligned
execute q;
-+-[ RECORD 1 ]-------------+
-| a+| xx |
-| +| |
-| b | |
-| a+| yyyyyyyyyyyyyyyyyy |
-| b | |
-+-[ RECORD 2 ]-------------+
-| a+| xxxx +|
-| +| xxxxxx +|
-| b | xxxxxxxx +|
-| | xxxxxxxxxx +|
-| | xxxxxxxxxxxx +|
-| | xxxxxxxxxxxxxx +|
-| | xxxxxxxxxxxxxxxx +|
-| | xxxxxxxxxxxxxxxxxx +|
-| | xxxxxxxxxxxxxxxxxxxx |
-| a+| yyyyyyyyyyyyyyyy +|
-| b | yyyyyyyyyyyyyy +|
-| | yyyyyyyyyyyy +|
-| | yyyyyyyyyy +|
-| | yyyyyyyy +|
-| | yyyyyy +|
-| | yyyy +|
-| | yy +|
-| | |
-+---+----------------------+
++-[ RECORD 1 ]--------------+
+| ab+| xx |
+| +| |
+| c | |
+| a +| yyyyyyyyyyyyyyyyyy |
+| bc | |
++-[ RECORD 2 ]--------------+
+| ab+| xxxx +|
+| +| xxxxxx +|
+| c | xxxxxxxx +|
+| | xxxxxxxxxx +|
+| | xxxxxxxxxxxx +|
+| | xxxxxxxxxxxxxx +|
+| | xxxxxxxxxxxxxxxx +|
+| | xxxxxxxxxxxxxxxxxx +|
+| | xxxxxxxxxxxxxxxxxxxx |
+| a +| yyyyyyyyyyyyyyyy +|
+| bc | yyyyyyyyyyyyyy +|
+| | yyyyyyyyyyyy +|
+| | yyyyyyyyyy +|
+| | yyyyyyyy +|
+| | yyyyyy +|
+| | yyyy +|
+| | yy +|
+| | |
++----+----------------------+
\pset format wrapped
execute q;
+-[ RECORD 1 ]-----+
-| a+| xx |
-| +| |
-| b | |
-| a+| yyyyyyyyyyyy.|
-| b |.yyyyyy |
+| ab+| xx |
+| +| |
+| c | |
+| a +| yyyyyyyyyyy.|
+| bc |.yyyyyyy |
+-[ RECORD 2 ]-----+
-| a+| xxxx +|
-| +| xxxxxx +|
-| b | xxxxxxxx +|
-| | xxxxxxxxxx +|
-| | xxxxxxxxxxxx+|
-| | xxxxxxxxxxxx.|
-| |.xx +|
-| | xxxxxxxxxxxx.|
-| |.xxxx +|
-| | xxxxxxxxxxxx.|
-| |.xxxxxx +|
-| | xxxxxxxxxxxx.|
-| |.xxxxxxxx |
-| a+| yyyyyyyyyyyy.|
-| b |.yyyy +|
-| | yyyyyyyyyyyy.|
-| |.yy +|
-| | yyyyyyyyyyyy+|
-| | yyyyyyyyyy +|
-| | yyyyyyyy +|
-| | yyyyyy +|
-| | yyyy +|
-| | yy +|
-| | |
-+---+--------------+
+| ab+| xxxx +|
+| +| xxxxxx +|
+| c | xxxxxxxx +|
+| | xxxxxxxxxx +|
+| | xxxxxxxxxxx.|
+| |.x +|
+| | xxxxxxxxxxx.|
+| |.xxx +|
+| | xxxxxxxxxxx.|
+| |.xxxxx +|
+| | xxxxxxxxxxx.|
+| |.xxxxxxx +|
+| | xxxxxxxxxxx.|
+| |.xxxxxxxxx |
+| a +| yyyyyyyyyyy.|
+| bc |.yyyyy +|
+| | yyyyyyyyyyy.|
+| |.yyy +|
+| | yyyyyyyyyyy.|
+| |.y +|
+| | yyyyyyyyyy +|
+| | yyyyyyyy +|
+| | yyyyyy +|
+| | yyyy +|
+| | yy +|
+| | |
++----+-------------+
\pset linestyle old-ascii
\pset expanded off
\pset border 0
\pset format unaligned
execute q;
-a
+ab
-b|a
-b
+c|a
+bc
xx|yyyyyyyyyyyyyyyyyy
xxxx
xxxxxx
(2 rows)
\pset format aligned
execute q;
- a a
- + b
- b +
+ ab a
+ + bc
+ c +
-------------------- ------------------
xx yyyyyyyyyyyyyyyyyy
xxxx yyyyyyyyyyyyyyyy
\pset format wrapped
execute q;
- a a
- + b
- b +
+ ab a
+ + bc
+ c +
-------------------- ------------------
xx yyyyyyyyyyyyyyyyyy
xxxx yyyyyyyyyyyyyyyy
\pset border 1
\pset format unaligned
execute q;
-a
+ab
-b|a
-b
+c|a
+bc
xx|yyyyyyyyyyyyyyyyyy
xxxx
xxxxxx
(2 rows)
\pset format aligned
execute q;
- a | a
-+ |+ b
-+ b |+
+ ab | a
++ |+ bc
++ c |+
----------------------+--------------------
xx | yyyyyyyyyyyyyyyyyy
xxxx | yyyyyyyyyyyyyyyy
\pset format wrapped
execute q;
- a | a
-+ |+ b
-+ b |+
+ ab | a
++ |+ bc
++ c |+
-------------------+--------------------
xx | yyyyyyyyyyyyyyyyyy
xxxx | yyyyyyyyyyyyyyyy
\pset border 2
\pset format unaligned
execute q;
-a
+ab
-b|a
-b
+c|a
+bc
xx|yyyyyyyyyyyyyyyyyy
xxxx
xxxxxx
\pset format aligned
execute q;
+----------------------+--------------------+
-| a | a |
-|+ |+ b |
-|+ b |+ |
+| ab | a |
+|+ |+ bc |
+|+ c |+ |
+----------------------+--------------------+
| xx | yyyyyyyyyyyyyyyyyy |
| xxxx | yyyyyyyyyyyyyyyy |
\pset format wrapped
execute q;
+-----------------+--------------------+
-| a | a |
-|+ |+ b |
-|+ b |+ |
+| ab | a |
+|+ |+ bc |
+|+ c |+ |
+-----------------+--------------------+
| xx | yyyyyyyyyyyyyyyyyy |
| xxxx | yyyyyyyyyyyyyyyy |
\pset border 0
\pset format unaligned
execute q;
-a
+ab
-b|xx
+c|xx
a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
-a
+ab
-b|xxxx
+c|xxxx
xxxxxx
xxxxxxxx
xxxxxxxxxx
xxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx
a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
yyyyyyyyyyyyyy
yyyyyyyyyyyy
yyyyyyyyyy
\pset format aligned
execute q;
-* Record 1
- a xx
+* Record 1
+ ab xx
+
-+b
- a yyyyyyyyyyyyyyyyyy
-+b
-* Record 2
- a xxxx
-+ xxxxxx
-+b xxxxxxxx
- xxxxxxxxxx
- xxxxxxxxxxxx
- xxxxxxxxxxxxxx
- xxxxxxxxxxxxxxxx
- xxxxxxxxxxxxxxxxxx
- xxxxxxxxxxxxxxxxxxxx
- a yyyyyyyyyyyyyyyy
-+b yyyyyyyyyyyyyy
- yyyyyyyyyyyy
- yyyyyyyyyy
- yyyyyyyy
- yyyyyy
- yyyy
- yy
-
++c
+ a yyyyyyyyyyyyyyyyyy
++bc
+* Record 2
+ ab xxxx
++ xxxxxx
++c xxxxxxxx
+ xxxxxxxxxx
+ xxxxxxxxxxxx
+ xxxxxxxxxxxxxx
+ xxxxxxxxxxxxxxxx
+ xxxxxxxxxxxxxxxxxx
+ xxxxxxxxxxxxxxxxxxxx
+ a yyyyyyyyyyyyyyyy
++bc yyyyyyyyyyyyyy
+ yyyyyyyyyyyy
+ yyyyyyyyyy
+ yyyyyyyy
+ yyyyyy
+ yyyy
+ yy
+
\pset format wrapped
execute q;
* Record 1
- a xx
+ ab xx
+
-+b
- a yyyyyyyyyyyyyyyyyy
-+b
++c
+ a yyyyyyyyyyyyyyyy
++bc yy
* Record 2
- a xxxx
-+ xxxxxx
-+b xxxxxxxx
- xxxxxxxxxx
- xxxxxxxxxxxx
- xxxxxxxxxxxxxx
- xxxxxxxxxxxxxxxx
- xxxxxxxxxxxxxxxxxx
- xxxxxxxxxxxxxxxxxx
- xx
- a yyyyyyyyyyyyyyyy
-+b yyyyyyyyyyyyyy
- yyyyyyyyyyyy
- yyyyyyyyyy
- yyyyyyyy
- yyyyyy
- yyyy
- yy
-
+ ab xxxx
++ xxxxxx
++c xxxxxxxx
+ xxxxxxxxxx
+ xxxxxxxxxxxx
+ xxxxxxxxxxxxxx
+ xxxxxxxxxxxxxxxx
+ xxxxxxxxxxxxxxxx
+ xx
+ xxxxxxxxxxxxxxxx
+ xxxx
+ a yyyyyyyyyyyyyyyy
++bc yyyyyyyyyyyyyy
+ yyyyyyyyyyyy
+ yyyyyyyyyy
+ yyyyyyyy
+ yyyyyy
+ yyyy
+ yy
+
\pset border 1
\pset format unaligned
execute q;
-a
+ab
-b|xx
+c|xx
a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
-a
+ab
-b|xxxx
+c|xxxx
xxxxxx
xxxxxxxx
xxxxxxxxxx
xxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx
a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
yyyyyyyyyyyyyy
yyyyyyyyyyyy
yyyyyyyyyy
\pset format aligned
execute q;
--[ RECORD 1 ]-----------
- a | xx
-+ ;
-+b ;
- a | yyyyyyyyyyyyyyyyyy
-+b ;
--[ RECORD 2 ]-----------
- a | xxxx
-+ : xxxxxx
-+b : xxxxxxxx
- : xxxxxxxxxx
- : xxxxxxxxxxxx
- : xxxxxxxxxxxxxx
- : xxxxxxxxxxxxxxxx
- : xxxxxxxxxxxxxxxxxx
- : xxxxxxxxxxxxxxxxxxxx
- a | yyyyyyyyyyyyyyyy
-+b : yyyyyyyyyyyyyy
- : yyyyyyyyyyyy
- : yyyyyyyyyy
- : yyyyyyyy
- : yyyyyy
- : yyyy
- : yy
- :
+-[ RECORD 1 ]-------------
+ ab | xx
++ ;
++c ;
+ a | yyyyyyyyyyyyyyyyyy
++bc ;
+-[ RECORD 2 ]-------------
+ ab | xxxx
++ : xxxxxx
++c : xxxxxxxx
+ : xxxxxxxxxx
+ : xxxxxxxxxxxx
+ : xxxxxxxxxxxxxx
+ : xxxxxxxxxxxxxxxx
+ : xxxxxxxxxxxxxxxxxx
+ : xxxxxxxxxxxxxxxxxxxx
+ a | yyyyyyyyyyyyyyyy
++bc : yyyyyyyyyyyyyy
+ : yyyyyyyyyyyy
+ : yyyyyyyyyy
+ : yyyyyyyy
+ : yyyyyy
+ : yyyy
+ : yy
+ :
\pset format wrapped
execute q;
-[ RECORD 1 ]-------
- a | xx
-+ ;
-+b ;
- a | yyyyyyyyyyyyyyyy
-+b ; yy
+ ab | xx
++ ;
++c ;
+ a | yyyyyyyyyyyyyy
++bc ; yyyy
-[ RECORD 2 ]-------
- a | xxxx
-+ : xxxxxx
-+b : xxxxxxxx
- : xxxxxxxxxx
- : xxxxxxxxxxxx
- : xxxxxxxxxxxxxx
- : xxxxxxxxxxxxxxxx
- : xxxxxxxxxxxxxxxx
- ; xx
- : xxxxxxxxxxxxxxxx
- ; xxxx
- a | yyyyyyyyyyyyyyyy
-+b : yyyyyyyyyyyyyy
- : yyyyyyyyyyyy
- : yyyyyyyyyy
- : yyyyyyyy
- : yyyyyy
- : yyyy
- : yy
- :
+ ab | xxxx
++ : xxxxxx
++c : xxxxxxxx
+ : xxxxxxxxxx
+ : xxxxxxxxxxxx
+ : xxxxxxxxxxxxxx
+ : xxxxxxxxxxxxxx
+ ; xx
+ : xxxxxxxxxxxxxx
+ ; xxxx
+ : xxxxxxxxxxxxxx
+ ; xxxxxx
+ a | yyyyyyyyyyyyyy
++bc ; yy
+ : yyyyyyyyyyyyyy
+ : yyyyyyyyyyyy
+ : yyyyyyyyyy
+ : yyyyyyyy
+ : yyyyyy
+ : yyyy
+ : yy
+ :
\pset border 2
\pset format unaligned
execute q;
-a
+ab
-b|xx
+c|xx
a
-b|yyyyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyyyy
-a
+ab
-b|xxxx
+c|xxxx
xxxxxx
xxxxxxxx
xxxxxxxxxx
xxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxx
a
-b|yyyyyyyyyyyyyyyy
+bc|yyyyyyyyyyyyyyyy
yyyyyyyyyyyyyy
yyyyyyyyyyyy
yyyyyyyyyy
\pset format aligned
execute q;
-+-[ RECORD 1 ]-------------+
-| a | xx |
-|+ ; |
-|+b ; |
-| a | yyyyyyyyyyyyyyyyyy |
-|+b ; |
-+-[ RECORD 2 ]-------------+
-| a | xxxx |
-|+ : xxxxxx |
-|+b : xxxxxxxx |
-| : xxxxxxxxxx |
-| : xxxxxxxxxxxx |
-| : xxxxxxxxxxxxxx |
-| : xxxxxxxxxxxxxxxx |
-| : xxxxxxxxxxxxxxxxxx |
-| : xxxxxxxxxxxxxxxxxxxx |
-| a | yyyyyyyyyyyyyyyy |
-|+b : yyyyyyyyyyyyyy |
-| : yyyyyyyyyyyy |
-| : yyyyyyyyyy |
-| : yyyyyyyy |
-| : yyyyyy |
-| : yyyy |
-| : yy |
-| : |
-+---+----------------------+
++-[ RECORD 1 ]--------------+
+| ab | xx |
+|+ ; |
+|+c ; |
+| a | yyyyyyyyyyyyyyyyyy |
+|+bc ; |
++-[ RECORD 2 ]--------------+
+| ab | xxxx |
+|+ : xxxxxx |
+|+c : xxxxxxxx |
+| : xxxxxxxxxx |
+| : xxxxxxxxxxxx |
+| : xxxxxxxxxxxxxx |
+| : xxxxxxxxxxxxxxxx |
+| : xxxxxxxxxxxxxxxxxx |
+| : xxxxxxxxxxxxxxxxxxxx |
+| a | yyyyyyyyyyyyyyyy |
+|+bc : yyyyyyyyyyyyyy |
+| : yyyyyyyyyyyy |
+| : yyyyyyyyyy |
+| : yyyyyyyy |
+| : yyyyyy |
+| : yyyy |
+| : yy |
+| : |
++----+----------------------+
\pset format wrapped
execute q;
+-[ RECORD 1 ]-----+
-| a | xx |
-|+ ; |
-|+b ; |
-| a | yyyyyyyyyyyy |
-|+b ; yyyyyy |
+| ab | xx |
+|+ ; |
+|+c ; |
+| a | yyyyyyyyyyy |
+|+bc ; yyyyyyy |
+-[ RECORD 2 ]-----+
-| a | xxxx |
-|+ : xxxxxx |
-|+b : xxxxxxxx |
-| : xxxxxxxxxx |
-| : xxxxxxxxxxxx |
-| : xxxxxxxxxxxx |
-| ; xx |
-| : xxxxxxxxxxxx |
-| ; xxxx |
-| : xxxxxxxxxxxx |
-| ; xxxxxx |
-| : xxxxxxxxxxxx |
-| ; xxxxxxxx |
-| a | yyyyyyyyyyyy |
-|+b ; yyyy |
-| : yyyyyyyyyyyy |
-| ; yy |
-| : yyyyyyyyyyyy |
-| : yyyyyyyyyy |
-| : yyyyyyyy |
-| : yyyyyy |
-| : yyyy |
-| : yy |
-| : |
-+---+--------------+
+| ab | xxxx |
+|+ : xxxxxx |
+|+c : xxxxxxxx |
+| : xxxxxxxxxx |
+| : xxxxxxxxxxx |
+| ; x |
+| : xxxxxxxxxxx |
+| ; xxx |
+| : xxxxxxxxxxx |
+| ; xxxxx |
+| : xxxxxxxxxxx |
+| ; xxxxxxx |
+| : xxxxxxxxxxx |
+| ; xxxxxxxxx |
+| a | yyyyyyyyyyy |
+|+bc ; yyyyy |
+| : yyyyyyyyyyy |
+| ; yyy |
+| : yyyyyyyyyyy |
+| ; y |
+| : yyyyyyyyyy |
+| : yyyyyyyy |
+| : yyyyyy |
+| : yyyy |
+| : yy |
+| : |
++----+-------------+
+
+deallocate q;
+-- test single-line header and data
+prepare q as select repeat('x',2*n) as "0123456789abcdef", repeat('y',20-2*n) as "0123456789" from generate_series(1,10) as n;
+\pset linestyle ascii
+\pset expanded off
+\pset columns 40
+\pset border 0
+\pset format unaligned
+execute q;
+0123456789abcdef|0123456789
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
+ 0123456789abcdef 0123456789
+-------------------- ------------------
+xx yyyyyyyyyyyyyyyyyy
+xxxx yyyyyyyyyyyyyyyy
+xxxxxx yyyyyyyyyyyyyy
+xxxxxxxx yyyyyyyyyyyy
+xxxxxxxxxx yyyyyyyyyy
+xxxxxxxxxxxx yyyyyyyy
+xxxxxxxxxxxxxx yyyyyy
+xxxxxxxxxxxxxxxx yyyy
+xxxxxxxxxxxxxxxxxx yy
+xxxxxxxxxxxxxxxxxxxx
+(10 rows)
+
+\pset format wrapped
+execute q;
+ 0123456789abcdef 0123456789
+-------------------- ------------------
+xx yyyyyyyyyyyyyyyyyy
+xxxx yyyyyyyyyyyyyyyy
+xxxxxx yyyyyyyyyyyyyy
+xxxxxxxx yyyyyyyyyyyy
+xxxxxxxxxx yyyyyyyyyy
+xxxxxxxxxxxx yyyyyyyy
+xxxxxxxxxxxxxx yyyyyy
+xxxxxxxxxxxxxxxx yyyy
+xxxxxxxxxxxxxxxxxx yy
+xxxxxxxxxxxxxxxxxxxx
+(10 rows)
+
+\pset border 1
+\pset format unaligned
+execute q;
+0123456789abcdef|0123456789
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
+ 0123456789abcdef | 0123456789
+----------------------+--------------------
+ xx | yyyyyyyyyyyyyyyyyy
+ xxxx | yyyyyyyyyyyyyyyy
+ xxxxxx | yyyyyyyyyyyyyy
+ xxxxxxxx | yyyyyyyyyyyy
+ xxxxxxxxxx | yyyyyyyyyy
+ xxxxxxxxxxxx | yyyyyyyy
+ xxxxxxxxxxxxxx | yyyyyy
+ xxxxxxxxxxxxxxxx | yyyy
+ xxxxxxxxxxxxxxxxxx | yy
+ xxxxxxxxxxxxxxxxxxxx |
+(10 rows)
+
+\pset format wrapped
+execute q;
+ 0123456789abcdef | 0123456789
+---------------------+------------------
+ xx | yyyyyyyyyyyyyyyy.
+ |.yy
+ xxxx | yyyyyyyyyyyyyyyy
+ xxxxxx | yyyyyyyyyyyyyy
+ xxxxxxxx | yyyyyyyyyyyy
+ xxxxxxxxxx | yyyyyyyyyy
+ xxxxxxxxxxxx | yyyyyyyy
+ xxxxxxxxxxxxxx | yyyyyy
+ xxxxxxxxxxxxxxxx | yyyy
+ xxxxxxxxxxxxxxxxxx | yy
+ xxxxxxxxxxxxxxxxxxx.|
+.x |
+(10 rows)
+
+\pset border 2
+\pset format unaligned
+execute q;
+0123456789abcdef|0123456789
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
++----------------------+--------------------+
+| 0123456789abcdef | 0123456789 |
++----------------------+--------------------+
+| xx | yyyyyyyyyyyyyyyyyy |
+| xxxx | yyyyyyyyyyyyyyyy |
+| xxxxxx | yyyyyyyyyyyyyy |
+| xxxxxxxx | yyyyyyyyyyyy |
+| xxxxxxxxxx | yyyyyyyyyy |
+| xxxxxxxxxxxx | yyyyyyyy |
+| xxxxxxxxxxxxxx | yyyyyy |
+| xxxxxxxxxxxxxxxx | yyyy |
+| xxxxxxxxxxxxxxxxxx | yy |
+| xxxxxxxxxxxxxxxxxxxx | |
++----------------------+--------------------+
+(10 rows)
+
+\pset format wrapped
+execute q;
++--------------------+-----------------+
+| 0123456789abcdef | 0123456789 |
++--------------------+-----------------+
+| xx | yyyyyyyyyyyyyyy.|
+| |.yyy |
+| xxxx | yyyyyyyyyyyyyyy.|
+| |.y |
+| xxxxxx | yyyyyyyyyyyyyy |
+| xxxxxxxx | yyyyyyyyyyyy |
+| xxxxxxxxxx | yyyyyyyyyy |
+| xxxxxxxxxxxx | yyyyyyyy |
+| xxxxxxxxxxxxxx | yyyyyy |
+| xxxxxxxxxxxxxxxx | yyyy |
+| xxxxxxxxxxxxxxxxxx | yy |
+| xxxxxxxxxxxxxxxxxx.| |
+|.xx | |
++--------------------+-----------------+
+(10 rows)
+
+\pset expanded on
+\pset columns 20
+\pset border 0
+\pset format unaligned
+execute q;
+0123456789abcdef|xx
+0123456789|yyyyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxx
+0123456789|yyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxx
+0123456789|yyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxx
+0123456789|yyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxx
+0123456789|yyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxx
+0123456789|yyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxx
+0123456789|yyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxx
+0123456789|yyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxx
+0123456789|yy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxxxx
+0123456789|
+\pset format aligned
+execute q;
+* Record 1
+0123456789abcdef xx
+0123456789 yyyyyyyyyyyyyyyyyy
+* Record 2
+0123456789abcdef xxxx
+0123456789 yyyyyyyyyyyyyyyy
+* Record 3
+0123456789abcdef xxxxxx
+0123456789 yyyyyyyyyyyyyy
+* Record 4
+0123456789abcdef xxxxxxxx
+0123456789 yyyyyyyyyyyy
+* Record 5
+0123456789abcdef xxxxxxxxxx
+0123456789 yyyyyyyyyy
+* Record 6
+0123456789abcdef xxxxxxxxxxxx
+0123456789 yyyyyyyy
+* Record 7
+0123456789abcdef xxxxxxxxxxxxxx
+0123456789 yyyyyy
+* Record 8
+0123456789abcdef xxxxxxxxxxxxxxxx
+0123456789 yyyy
+* Record 9
+0123456789abcdef xxxxxxxxxxxxxxxxxx
+0123456789 yy
+* Record 10
+0123456789abcdef xxxxxxxxxxxxxxxxxxxx
+0123456789
+
+\pset format wrapped
+execute q;
+* Record 1
+0123456789abcdef xx
+0123456789 yy.
+ .yy.
+ .yy.
+ .yy.
+ .yy.
+ .yy.
+ .yy.
+ .yy.
+ .yy
+* Record 2
+0123456789abcdef xx.
+ .xx
+0123456789 yy.
+ .yy.
+ .yy.
+ .yy.
+ .yy.
+ .yy.
+ .yy.
+ .yy
+* Record 3
+0123456789abcdef xx.
+ .xx.
+ .xx
+0123456789 yy.
+ .yy.
+ .yy.
+ .yy.
+ .yy.
+ .yy.
+ .yy
+* Record 4
+0123456789abcdef xx.
+ .xx.
+ .xx.
+ .xx
+0123456789 yy.
+ .yy.
+ .yy.
+ .yy.
+ .yy.
+ .yy
+* Record 5
+0123456789abcdef xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx
+0123456789 yy.
+ .yy.
+ .yy.
+ .yy.
+ .yy
+* Record 6
+0123456789abcdef xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx
+0123456789 yy.
+ .yy.
+ .yy.
+ .yy
+* Record 7
+0123456789abcdef xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx
+0123456789 yy.
+ .yy.
+ .yy
+* Record 8
+0123456789abcdef xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx
+0123456789 yy.
+ .yy
+* Record 9
+0123456789abcdef xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx
+0123456789 yy
+* Record 10
+0123456789abcdef xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx.
+ .xx
+0123456789
+
+\pset border 1
+\pset format unaligned
+execute q;
+0123456789abcdef|xx
+0123456789|yyyyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxx
+0123456789|yyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxx
+0123456789|yyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxx
+0123456789|yyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxx
+0123456789|yyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxx
+0123456789|yyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxx
+0123456789|yyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxx
+0123456789|yyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxx
+0123456789|yy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxxxx
+0123456789|
+\pset format aligned
+execute q;
+-[ RECORD 1 ]----+---------------------
+0123456789abcdef | xx
+0123456789 | yyyyyyyyyyyyyyyyyy
+-[ RECORD 2 ]----+---------------------
+0123456789abcdef | xxxx
+0123456789 | yyyyyyyyyyyyyyyy
+-[ RECORD 3 ]----+---------------------
+0123456789abcdef | xxxxxx
+0123456789 | yyyyyyyyyyyyyy
+-[ RECORD 4 ]----+---------------------
+0123456789abcdef | xxxxxxxx
+0123456789 | yyyyyyyyyyyy
+-[ RECORD 5 ]----+---------------------
+0123456789abcdef | xxxxxxxxxx
+0123456789 | yyyyyyyyyy
+-[ RECORD 6 ]----+---------------------
+0123456789abcdef | xxxxxxxxxxxx
+0123456789 | yyyyyyyy
+-[ RECORD 7 ]----+---------------------
+0123456789abcdef | xxxxxxxxxxxxxx
+0123456789 | yyyyyy
+-[ RECORD 8 ]----+---------------------
+0123456789abcdef | xxxxxxxxxxxxxxxx
+0123456789 | yyyy
+-[ RECORD 9 ]----+---------------------
+0123456789abcdef | xxxxxxxxxxxxxxxxxx
+0123456789 | yy
+-[ RECORD 10 ]---+---------------------
+0123456789abcdef | xxxxxxxxxxxxxxxxxxxx
+0123456789 |
+
+\pset format wrapped
+execute q;
+-[ RECORD 1 ]----+----
+0123456789abcdef | xx
+0123456789 | yyy.
+ |.yyy.
+ |.yyy.
+ |.yyy.
+ |.yyy.
+ |.yyy
+-[ RECORD 2 ]----+----
+0123456789abcdef | xxx.
+ |.x
+0123456789 | yyy.
+ |.yyy.
+ |.yyy.
+ |.yyy.
+ |.yyy.
+ |.y
+-[ RECORD 3 ]----+----
+0123456789abcdef | xxx.
+ |.xxx
+0123456789 | yyy.
+ |.yyy.
+ |.yyy.
+ |.yyy.
+ |.yy
+-[ RECORD 4 ]----+----
+0123456789abcdef | xxx.
+ |.xxx.
+ |.xx
+0123456789 | yyy.
+ |.yyy.
+ |.yyy.
+ |.yyy
+-[ RECORD 5 ]----+----
+0123456789abcdef | xxx.
+ |.xxx.
+ |.xxx.
+ |.x
+0123456789 | yyy.
+ |.yyy.
+ |.yyy.
+ |.y
+-[ RECORD 6 ]----+----
+0123456789abcdef | xxx.
+ |.xxx.
+ |.xxx.
+ |.xxx
+0123456789 | yyy.
+ |.yyy.
+ |.yy
+-[ RECORD 7 ]----+----
+0123456789abcdef | xxx.
+ |.xxx.
+ |.xxx.
+ |.xxx.
+ |.xx
+0123456789 | yyy.
+ |.yyy
+-[ RECORD 8 ]----+----
+0123456789abcdef | xxx.
+ |.xxx.
+ |.xxx.
+ |.xxx.
+ |.xxx.
+ |.x
+0123456789 | yyy.
+ |.y
+-[ RECORD 9 ]----+----
+0123456789abcdef | xxx.
+ |.xxx.
+ |.xxx.
+ |.xxx.
+ |.xxx.
+ |.xxx
+0123456789 | yy
+-[ RECORD 10 ]---+----
+0123456789abcdef | xxx.
+ |.xxx.
+ |.xxx.
+ |.xxx.
+ |.xxx.
+ |.xxx.
+ |.xx
+0123456789 |
+
+\pset border 2
+\pset format unaligned
+execute q;
+0123456789abcdef|xx
+0123456789|yyyyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxx
+0123456789|yyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxx
+0123456789|yyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxx
+0123456789|yyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxx
+0123456789|yyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxx
+0123456789|yyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxx
+0123456789|yyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxx
+0123456789|yyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxx
+0123456789|yy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxxxx
+0123456789|
+\pset format aligned
+execute q;
++-[ RECORD 1 ]-----+----------------------+
+| 0123456789abcdef | xx |
+| 0123456789 | yyyyyyyyyyyyyyyyyy |
++-[ RECORD 2 ]-----+----------------------+
+| 0123456789abcdef | xxxx |
+| 0123456789 | yyyyyyyyyyyyyyyy |
++-[ RECORD 3 ]-----+----------------------+
+| 0123456789abcdef | xxxxxx |
+| 0123456789 | yyyyyyyyyyyyyy |
++-[ RECORD 4 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxx |
+| 0123456789 | yyyyyyyyyyyy |
++-[ RECORD 5 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxx |
+| 0123456789 | yyyyyyyyyy |
++-[ RECORD 6 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxx |
+| 0123456789 | yyyyyyyy |
++-[ RECORD 7 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxx |
+| 0123456789 | yyyyyy |
++-[ RECORD 8 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxx |
+| 0123456789 | yyyy |
++-[ RECORD 9 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxxxx |
+| 0123456789 | yy |
++-[ RECORD 10 ]----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxxxxxx |
+| 0123456789 | |
++------------------+----------------------+
+
+\pset format wrapped
+execute q;
++-[ RECORD 1 ]-----+-----+
+| 0123456789abcdef | xx |
+| 0123456789 | yyy.|
+| |.yyy.|
+| |.yyy.|
+| |.yyy.|
+| |.yyy.|
+| |.yyy |
++-[ RECORD 2 ]-----+-----+
+| 0123456789abcdef | xxx.|
+| |.x |
+| 0123456789 | yyy.|
+| |.yyy.|
+| |.yyy.|
+| |.yyy.|
+| |.yyy.|
+| |.y |
++-[ RECORD 3 ]-----+-----+
+| 0123456789abcdef | xxx.|
+| |.xxx |
+| 0123456789 | yyy.|
+| |.yyy.|
+| |.yyy.|
+| |.yyy.|
+| |.yy |
++-[ RECORD 4 ]-----+-----+
+| 0123456789abcdef | xxx.|
+| |.xxx.|
+| |.xx |
+| 0123456789 | yyy.|
+| |.yyy.|
+| |.yyy.|
+| |.yyy |
++-[ RECORD 5 ]-----+-----+
+| 0123456789abcdef | xxx.|
+| |.xxx.|
+| |.xxx.|
+| |.x |
+| 0123456789 | yyy.|
+| |.yyy.|
+| |.yyy.|
+| |.y |
++-[ RECORD 6 ]-----+-----+
+| 0123456789abcdef | xxx.|
+| |.xxx.|
+| |.xxx.|
+| |.xxx |
+| 0123456789 | yyy.|
+| |.yyy.|
+| |.yy |
++-[ RECORD 7 ]-----+-----+
+| 0123456789abcdef | xxx.|
+| |.xxx.|
+| |.xxx.|
+| |.xxx.|
+| |.xx |
+| 0123456789 | yyy.|
+| |.yyy |
++-[ RECORD 8 ]-----+-----+
+| 0123456789abcdef | xxx.|
+| |.xxx.|
+| |.xxx.|
+| |.xxx.|
+| |.xxx.|
+| |.x |
+| 0123456789 | yyy.|
+| |.y |
++-[ RECORD 9 ]-----+-----+
+| 0123456789abcdef | xxx.|
+| |.xxx.|
+| |.xxx.|
+| |.xxx.|
+| |.xxx.|
+| |.xxx |
+| 0123456789 | yy |
++-[ RECORD 10 ]----+-----+
+| 0123456789abcdef | xxx.|
+| |.xxx.|
+| |.xxx.|
+| |.xxx.|
+| |.xxx.|
+| |.xxx.|
+| |.xx |
+| 0123456789 | |
++------------------+-----+
+
+\pset linestyle old-ascii
+\pset expanded off
+\pset columns 40
+\pset border 0
+\pset format unaligned
+execute q;
+0123456789abcdef|0123456789
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
+ 0123456789abcdef 0123456789
+-------------------- ------------------
+xx yyyyyyyyyyyyyyyyyy
+xxxx yyyyyyyyyyyyyyyy
+xxxxxx yyyyyyyyyyyyyy
+xxxxxxxx yyyyyyyyyyyy
+xxxxxxxxxx yyyyyyyyyy
+xxxxxxxxxxxx yyyyyyyy
+xxxxxxxxxxxxxx yyyyyy
+xxxxxxxxxxxxxxxx yyyy
+xxxxxxxxxxxxxxxxxx yy
+xxxxxxxxxxxxxxxxxxxx
+(10 rows)
+
+\pset format wrapped
+execute q;
+ 0123456789abcdef 0123456789
+-------------------- ------------------
+xx yyyyyyyyyyyyyyyyyy
+xxxx yyyyyyyyyyyyyyyy
+xxxxxx yyyyyyyyyyyyyy
+xxxxxxxx yyyyyyyyyyyy
+xxxxxxxxxx yyyyyyyyyy
+xxxxxxxxxxxx yyyyyyyy
+xxxxxxxxxxxxxx yyyyyy
+xxxxxxxxxxxxxxxx yyyy
+xxxxxxxxxxxxxxxxxx yy
+xxxxxxxxxxxxxxxxxxxx
+(10 rows)
+
+\pset border 1
+\pset format unaligned
+execute q;
+0123456789abcdef|0123456789
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
+ 0123456789abcdef | 0123456789
+----------------------+--------------------
+ xx | yyyyyyyyyyyyyyyyyy
+ xxxx | yyyyyyyyyyyyyyyy
+ xxxxxx | yyyyyyyyyyyyyy
+ xxxxxxxx | yyyyyyyyyyyy
+ xxxxxxxxxx | yyyyyyyyyy
+ xxxxxxxxxxxx | yyyyyyyy
+ xxxxxxxxxxxxxx | yyyyyy
+ xxxxxxxxxxxxxxxx | yyyy
+ xxxxxxxxxxxxxxxxxx | yy
+ xxxxxxxxxxxxxxxxxxxx |
+(10 rows)
+
+\pset format wrapped
+execute q;
+ 0123456789abcdef | 0123456789
+---------------------+------------------
+ xx | yyyyyyyyyyyyyyyy
+ ; yy
+ xxxx | yyyyyyyyyyyyyyyy
+ xxxxxx | yyyyyyyyyyyyyy
+ xxxxxxxx | yyyyyyyyyyyy
+ xxxxxxxxxx | yyyyyyyyyy
+ xxxxxxxxxxxx | yyyyyyyy
+ xxxxxxxxxxxxxx | yyyyyy
+ xxxxxxxxxxxxxxxx | yyyy
+ xxxxxxxxxxxxxxxxxx | yy
+ xxxxxxxxxxxxxxxxxxx |
+ x
+(10 rows)
+
+\pset border 2
+\pset format unaligned
+execute q;
+0123456789abcdef|0123456789
+xx|yyyyyyyyyyyyyyyyyy
+xxxx|yyyyyyyyyyyyyyyy
+xxxxxx|yyyyyyyyyyyyyy
+xxxxxxxx|yyyyyyyyyyyy
+xxxxxxxxxx|yyyyyyyyyy
+xxxxxxxxxxxx|yyyyyyyy
+xxxxxxxxxxxxxx|yyyyyy
+xxxxxxxxxxxxxxxx|yyyy
+xxxxxxxxxxxxxxxxxx|yy
+xxxxxxxxxxxxxxxxxxxx|
+(10 rows)
+\pset format aligned
+execute q;
++----------------------+--------------------+
+| 0123456789abcdef | 0123456789 |
++----------------------+--------------------+
+| xx | yyyyyyyyyyyyyyyyyy |
+| xxxx | yyyyyyyyyyyyyyyy |
+| xxxxxx | yyyyyyyyyyyyyy |
+| xxxxxxxx | yyyyyyyyyyyy |
+| xxxxxxxxxx | yyyyyyyyyy |
+| xxxxxxxxxxxx | yyyyyyyy |
+| xxxxxxxxxxxxxx | yyyyyy |
+| xxxxxxxxxxxxxxxx | yyyy |
+| xxxxxxxxxxxxxxxxxx | yy |
+| xxxxxxxxxxxxxxxxxxxx | |
++----------------------+--------------------+
+(10 rows)
+
+\pset format wrapped
+execute q;
++--------------------+-----------------+
+| 0123456789abcdef | 0123456789 |
++--------------------+-----------------+
+| xx | yyyyyyyyyyyyyyy |
+| ; yyy |
+| xxxx | yyyyyyyyyyyyyyy |
+| ; y |
+| xxxxxx | yyyyyyyyyyyyyy |
+| xxxxxxxx | yyyyyyyyyyyy |
+| xxxxxxxxxx | yyyyyyyyyy |
+| xxxxxxxxxxxx | yyyyyyyy |
+| xxxxxxxxxxxxxx | yyyyyy |
+| xxxxxxxxxxxxxxxx | yyyy |
+| xxxxxxxxxxxxxxxxxx | yy |
+| xxxxxxxxxxxxxxxxxx | |
+| xx |
++--------------------+-----------------+
+(10 rows)
+
+\pset expanded on
+\pset border 0
+\pset format unaligned
+execute q;
+0123456789abcdef|xx
+0123456789|yyyyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxx
+0123456789|yyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxx
+0123456789|yyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxx
+0123456789|yyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxx
+0123456789|yyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxx
+0123456789|yyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxx
+0123456789|yyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxx
+0123456789|yyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxx
+0123456789|yy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxxxx
+0123456789|
+\pset format aligned
+execute q;
+* Record 1
+0123456789abcdef xx
+0123456789 yyyyyyyyyyyyyyyyyy
+* Record 2
+0123456789abcdef xxxx
+0123456789 yyyyyyyyyyyyyyyy
+* Record 3
+0123456789abcdef xxxxxx
+0123456789 yyyyyyyyyyyyyy
+* Record 4
+0123456789abcdef xxxxxxxx
+0123456789 yyyyyyyyyyyy
+* Record 5
+0123456789abcdef xxxxxxxxxx
+0123456789 yyyyyyyyyy
+* Record 6
+0123456789abcdef xxxxxxxxxxxx
+0123456789 yyyyyyyy
+* Record 7
+0123456789abcdef xxxxxxxxxxxxxx
+0123456789 yyyyyy
+* Record 8
+0123456789abcdef xxxxxxxxxxxxxxxx
+0123456789 yyyy
+* Record 9
+0123456789abcdef xxxxxxxxxxxxxxxxxx
+0123456789 yy
+* Record 10
+0123456789abcdef xxxxxxxxxxxxxxxxxxxx
+0123456789
+
+\pset format wrapped
+execute q;
+* Record 1
+0123456789abcdef xx
+0123456789 yyyyyyyyyyyyyyyyyy
+* Record 2
+0123456789abcdef xxxx
+0123456789 yyyyyyyyyyyyyyyy
+* Record 3
+0123456789abcdef xxxxxx
+0123456789 yyyyyyyyyyyyyy
+* Record 4
+0123456789abcdef xxxxxxxx
+0123456789 yyyyyyyyyyyy
+* Record 5
+0123456789abcdef xxxxxxxxxx
+0123456789 yyyyyyyyyy
+* Record 6
+0123456789abcdef xxxxxxxxxxxx
+0123456789 yyyyyyyy
+* Record 7
+0123456789abcdef xxxxxxxxxxxxxx
+0123456789 yyyyyy
+* Record 8
+0123456789abcdef xxxxxxxxxxxxxxxx
+0123456789 yyyy
+* Record 9
+0123456789abcdef xxxxxxxxxxxxxxxxxx
+0123456789 yy
+* Record 10
+0123456789abcdef xxxxxxxxxxxxxxxxxxxx
+0123456789
+
+\pset border 1
+\pset format unaligned
+execute q;
+0123456789abcdef|xx
+0123456789|yyyyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxx
+0123456789|yyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxx
+0123456789|yyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxx
+0123456789|yyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxx
+0123456789|yyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxx
+0123456789|yyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxx
+0123456789|yyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxx
+0123456789|yyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxx
+0123456789|yy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxxxx
+0123456789|
+\pset format aligned
+execute q;
+-[ RECORD 1 ]----+---------------------
+0123456789abcdef | xx
+0123456789 | yyyyyyyyyyyyyyyyyy
+-[ RECORD 2 ]----+---------------------
+0123456789abcdef | xxxx
+0123456789 | yyyyyyyyyyyyyyyy
+-[ RECORD 3 ]----+---------------------
+0123456789abcdef | xxxxxx
+0123456789 | yyyyyyyyyyyyyy
+-[ RECORD 4 ]----+---------------------
+0123456789abcdef | xxxxxxxx
+0123456789 | yyyyyyyyyyyy
+-[ RECORD 5 ]----+---------------------
+0123456789abcdef | xxxxxxxxxx
+0123456789 | yyyyyyyyyy
+-[ RECORD 6 ]----+---------------------
+0123456789abcdef | xxxxxxxxxxxx
+0123456789 | yyyyyyyy
+-[ RECORD 7 ]----+---------------------
+0123456789abcdef | xxxxxxxxxxxxxx
+0123456789 | yyyyyy
+-[ RECORD 8 ]----+---------------------
+0123456789abcdef | xxxxxxxxxxxxxxxx
+0123456789 | yyyy
+-[ RECORD 9 ]----+---------------------
+0123456789abcdef | xxxxxxxxxxxxxxxxxx
+0123456789 | yy
+-[ RECORD 10 ]---+---------------------
+0123456789abcdef | xxxxxxxxxxxxxxxxxxxx
+0123456789 |
+
+\pset format wrapped
+execute q;
+-[ RECORD 1 ]----+----------------------
+0123456789abcdef | xx
+0123456789 | yyyyyyyyyyyyyyyyyy
+-[ RECORD 2 ]----+----------------------
+0123456789abcdef | xxxx
+0123456789 | yyyyyyyyyyyyyyyy
+-[ RECORD 3 ]----+----------------------
+0123456789abcdef | xxxxxx
+0123456789 | yyyyyyyyyyyyyy
+-[ RECORD 4 ]----+----------------------
+0123456789abcdef | xxxxxxxx
+0123456789 | yyyyyyyyyyyy
+-[ RECORD 5 ]----+----------------------
+0123456789abcdef | xxxxxxxxxx
+0123456789 | yyyyyyyyyy
+-[ RECORD 6 ]----+----------------------
+0123456789abcdef | xxxxxxxxxxxx
+0123456789 | yyyyyyyy
+-[ RECORD 7 ]----+----------------------
+0123456789abcdef | xxxxxxxxxxxxxx
+0123456789 | yyyyyy
+-[ RECORD 8 ]----+----------------------
+0123456789abcdef | xxxxxxxxxxxxxxxx
+0123456789 | yyyy
+-[ RECORD 9 ]----+----------------------
+0123456789abcdef | xxxxxxxxxxxxxxxxxx
+0123456789 | yy
+-[ RECORD 10 ]---+----------------------
+0123456789abcdef | xxxxxxxxxxxxxxxxxxxx
+0123456789 |
+
+\pset border 2
+\pset format unaligned
+execute q;
+0123456789abcdef|xx
+0123456789|yyyyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxx
+0123456789|yyyyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxx
+0123456789|yyyyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxx
+0123456789|yyyyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxx
+0123456789|yyyyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxx
+0123456789|yyyyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxx
+0123456789|yyyyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxx
+0123456789|yyyy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxx
+0123456789|yy
+
+0123456789abcdef|xxxxxxxxxxxxxxxxxxxx
+0123456789|
+\pset format aligned
+execute q;
++-[ RECORD 1 ]-----+----------------------+
+| 0123456789abcdef | xx |
+| 0123456789 | yyyyyyyyyyyyyyyyyy |
++-[ RECORD 2 ]-----+----------------------+
+| 0123456789abcdef | xxxx |
+| 0123456789 | yyyyyyyyyyyyyyyy |
++-[ RECORD 3 ]-----+----------------------+
+| 0123456789abcdef | xxxxxx |
+| 0123456789 | yyyyyyyyyyyyyy |
++-[ RECORD 4 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxx |
+| 0123456789 | yyyyyyyyyyyy |
++-[ RECORD 5 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxx |
+| 0123456789 | yyyyyyyyyy |
++-[ RECORD 6 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxx |
+| 0123456789 | yyyyyyyy |
++-[ RECORD 7 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxx |
+| 0123456789 | yyyyyy |
++-[ RECORD 8 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxx |
+| 0123456789 | yyyy |
++-[ RECORD 9 ]-----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxxxx |
+| 0123456789 | yy |
++-[ RECORD 10 ]----+----------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxxxxxx |
+| 0123456789 | |
++------------------+----------------------+
+
+\pset format wrapped
+execute q;
++-[ RECORD 1 ]-----+-------------------+
+| 0123456789abcdef | xx |
+| 0123456789 | yyyyyyyyyyyyyyyyy |
+| ; y |
++-[ RECORD 2 ]-----+-------------------+
+| 0123456789abcdef | xxxx |
+| 0123456789 | yyyyyyyyyyyyyyyy |
++-[ RECORD 3 ]-----+-------------------+
+| 0123456789abcdef | xxxxxx |
+| 0123456789 | yyyyyyyyyyyyyy |
++-[ RECORD 4 ]-----+-------------------+
+| 0123456789abcdef | xxxxxxxx |
+| 0123456789 | yyyyyyyyyyyy |
++-[ RECORD 5 ]-----+-------------------+
+| 0123456789abcdef | xxxxxxxxxx |
+| 0123456789 | yyyyyyyyyy |
++-[ RECORD 6 ]-----+-------------------+
+| 0123456789abcdef | xxxxxxxxxxxx |
+| 0123456789 | yyyyyyyy |
++-[ RECORD 7 ]-----+-------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxx |
+| 0123456789 | yyyyyy |
++-[ RECORD 8 ]-----+-------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxx |
+| 0123456789 | yyyy |
++-[ RECORD 9 ]-----+-------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxxx |
+| ; x |
+| 0123456789 | yy |
++-[ RECORD 10 ]----+-------------------+
+| 0123456789abcdef | xxxxxxxxxxxxxxxxx |
+| ; xxx |
+| 0123456789 | |
++------------------+-------------------+
deallocate q;