backup terminal title

Dominic Fandrey kamikaze at bsdforen.de
Sun Feb 7 08:49:58 UTC 2010


Dominic Fandrey wrote:
> perryh at pluto.rain.com wrote:
>>> I wish to use  the "\033]0;%s\007" sequence in a shell-script to
>>> set the title of a terminal. But only if I am able to undo it.
>>>
>>> My requirement is that this must be done without using anything
>>> outside the base system.
>> There is an escape sequence which will cause the terminal to echo
>> back its current title, but it's a bit tricky to use given only
>> base-system tools because the echo ends with, IIRC, \007 rather
>> than \n.  It may be possible in some shells to temporarily set the
>> line-end character to \007.  You probably also want to (somehow)
>> cover problematic cases like terminals that don't reply to the
>> inquiry even though TERMCAP implies that they should.
> 
> That actually doesn't sound tricky at all, remember that the
> original sequence to change the title also ends with \007.
> Where can I find this magical sequence?
> 
> I've been trying to read:
> http://www.xfree86.org/current/ctlseqs.html
> 
> But the Syntax is really cryptic.

I finally got it:

printf "\033[22;0t"
	This stores the current icon and window titles on a stack.
printf "\033[23;0t"
	This restores them from the stack.

It works fine with xterm, has no effect on rxvt-unicode (which I
am using), though.

That might well be a termcap problem. I've got to look into this.

-- 
A: Because it fouls the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail? 


More information about the freebsd-questions mailing list