[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: terminal clear/refresh after detach

From: Ben Love
Subject: Re: terminal clear/refresh after detach
Date: Tue, 13 Sep 2011 21:46:53 -0400
User-agent: mutt

* Lonni J Friedman wrote on [2011-09-13 12:36:43 -0700]:
> On Tue, Sep 13, 2011 at 10:56 AM, Ben Love <address@hidden> wrote:
> > * Lonni J Friedman wrote on [2011-09-12 12:17:08 -0700]:
> >> Greetings,
> >> I recently upgraded from Fedora14 to Fedora15.  As part of the
> >> upgrade, I moved from screen-4.0.3 to screen-4.1.0, and inherited an
> >> annoying behavior.  Prior to the upgrade, whenever I detached from a
> >> screen session, everything that was present on my terminal prior to
> >> attaching to a screen session was restored.  Since the upgrade,
> >> whenever I detach, my terminal is automatically cleared, thereby
> >> losing all content that was present.
> >>
> >> I've googled and looked through the screen man page, but I can't find
> >> any mention of this behavior (or a means of preventing it).  Is this
> >> expected behavior, or a bug?
> >
> > I think you are intersted in the altscreen option.  I believe it does
> > what you want.
> This option doesn't seem to have any impact regardless of whether I
> set it to off or on in /etc/screenrc .

I think this means your termcap/terminfo settings have changed.  First,
make sure you aren't using something weird in $TERM (in the shell that
launches screen, not the shell within screen, which should simply have
TERM=screen).  Then, try reading man terminfo and man termcap.
Unfortunately, I've not messed with either enough to know where to
actually look.  And generally, I think it's a bad idea to try
customizing that stuff as I would expect most distributions to already
have sane values for all sane TERM entries.

For comparison, my $TERM prior to launching screen is rxvt-unicode.

> >
> > Alternatively, you could look into hacks as described here:
> >
> >
> >
> > using tput smcup and tput rmcup to save and restore the screen manually,
> > though this is probably not what you're looking for.
> If there was some way to get screen to invoke them automatically, then
> that would likely serve as a good workaround.  However, I can't figure
> out any way to accomplish that.

If you're talking about having this run when you're attaching/detaching,
then I think a simple shell script around screen would be fine:

tput smcup
screen "$@"
tput rmcup

If you're talking about how to do this from within shells that are
started by screen, I would probably put something in .bashrc that tests
for TERM=screen to detemine that it is executing within screen, and make
the tput smcup and tput rmcup entries within there.  There's probably
another way to do this that is more elegant, but all my hacks are in
.bashrc anyway.


> thanks.

Ben Love

Attachment: signature.asc
Description: Digital signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]