Peter Eisentraut wrote:
I asked the folks over at "Experts Exchange" to test the behavior of the
ioctl and $COLUMNS on various platforms. I'd been told that I would
face huge problems if a console was resized. But the results were
pretty consistent, and nothing had problems with resize:
Bruce Momjian wrote:
I checked the use of COLUMNS and it seems bash updates the environment
variable when a window is resized. I added ioctl(TIOCGWINSZ) if COLUMNS
isn't set. We already had a call in print.c for detecting the
number of rows on the screen to determine if the pager should
be used. Seems COLUMNS should take precedence over ioctl(), right?
Considering that the code to determine the row count is undisputed so far, the
column count detection should work the same. That is, we might not need to
look at COLUMNS at all. Unless there is a use case for overriding the column
count (instead of just turning off the wrapping).
It appears impossible to override $COLUMNS, on some platforms as the
readline call sets it.
On many platforms $COLUMNS is null until the call to readline.
OSX does not set $COLUMNS at all.
In short, I recommend the ioctl instead. In order to provide a way to
wrap output to a pipe, I think a different mechanism will have to be found.
Sent via pgsql-patches mailing list (firstname.lastname@example.org)
To make changes to your subscription: