This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: Resizing a terminal window
David,
This took me forever to figure out!
'expect' does not forward SIGWINCH
(http://en.wikipedia.org/wiki/SIGWINCH) unless told to do so.
Add the following snippet (between lines marked with
###################) to the beginning of your 'expect' script:
#!/bin/sh
# \
exec expect -f "$0" ${1+"$@"}
###################
trap { # trap sigwinch and pass it to the child we spawned
set rows [stty rows]
set cols [stty columns]
stty rows $rows columns $cols < $spawn_out(slave,name)
} WINCH
###################
set host [lindex $argv 0]
...
I use this to log on from cygwin to various AIX and LINUX machines.
Good luck and let me know how goes,
Hans
On 5/7/2010 10:09 AM, J. David Boyd wrote:
Hans Horn<hannes@2horns.com> writes:
On 5/5/2010 8:28 AM, J. David Boyd wrote:
Thomas Wolff<towo@towo.net> writes:
Am 04.05.2010 16:03, schrieb J. David Boyd:
...
Locally, I can use the mouse to resize a window, and the $COLUMNS and
$LINES variables are automatically filled in.
On many remote xterm sessions, they aren't.
Does anyone have any idea where to start figuring out what is wrong, and
what I can do to correct it?
LINES and COLUMNS are legacy mechanisms which may serve as a
workaround if the system doesn't otherwise handle screen size changes
properly. They should not be needed on modern systems where the tty
driver maintains the information.
(You may note that mintty has not set them initially but they get set
on resize - by whatever means... - while in a cygwin console they are
not used at all.)
So if you happen to have these variables set on a system which does
not maintain them, they don't get changed on resize and confuse your
environment. In most cases the best remedy is to just unset them -
does that help?
------
Thomas
Sadly enough, the system I am connecting to, SUSE Linux, does use them,
and the checkwinsize shopt BASH function, but, somehow, not
correctly....
Just for curiosity: are you using 'expect' to log to the remote system?
If so, you'd need you modify your expect script to handle SIGWINCH
properly. Let me know...
H.
Yes I am. I use expect to login, then go interactive. There is a
flag/setting to monitor SIGWINCH?
Tell me, please!!!
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple