Re: Proposed patch - psql wraps at window width
От | Bryce Nesbitt |
---|---|
Тема | Re: Proposed patch - psql wraps at window width |
Дата | |
Msg-id | 480849BE.4050409@obviously.com обсуждение исходный текст |
Ответ на | Re: Proposed patch - psql wraps at window width (Peter Eisentraut <peter_e@gmx.net>) |
Список | pgsql-patches |
Peter Eisentraut wrote: > 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). > 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: http://www.experts-exchange.com/Programming/Open_Source/Q_23243646.html 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. -Bryce
В списке pgsql-patches по дате отправления: