Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!watmath!clyde!floyd!harpo!utah-cs!utah-gr!thomas
From: thomas@utah-gr.UUCP (Spencer W. Thomas)
Newsgroups: net.unix-wizards
Subject: Re: more startup time - (nf)
Message-ID: <1075@utah-gr.UUCP>
Date: Thu, 9-Feb-84 18:10:27 EST
Article-I.D.: utah-gr.1075
Posted: Thu Feb  9 18:10:27 1984
Date-Received: Fri, 10-Feb-84 07:13:36 EST
References: fortune.2478
Lines: 30

Well, Rob Warnock poked my curiousity button.  Why does it work for him
and not for me?  I didn't just randomly stick an extra 'set noglob' in
front of my 'eval `tset -s`' for paranoia, I put it there because a tset
failed on me without it.  SO, I did some experimentation.  We are
running 4.2 csh, but this did the same in 4.1, as far as I know.  Try
the following experiment:
	% unset noglob
	% echo `echo "'['"`
Notice how you get NOTHING echoed?  Now, try
	% set noglob
	% echo `echo "'['"`
	% unset noglob
Worked this time, didn't it?  Now, try
	% eval `echo echo "'['"`
Still get nothing (as expected from case 1 above).  But
	% eval `echo set noglob \; echo "'['"`
doesn't either (but does leave noglob set!  If you say !!, you'll get
the right output).  Now, the problem with tset is that some (any ANSI)
terminals have lots of [s in their termcap entry.  The string spit out
by tset looks like (ignoring unimportant stuff)
	set noglob ; setenv TERMCAP 'lots of stuff'; unset noglob
With the 'lots of stuff' disappearing because of the [ bug (and the
semicolon going with it!) the setenv command is
	setenv TERMCAP unset noglob
which fails (too many arguments).  Thus, not only is your TERMCAP not
set, but your shell is left in noglob state.  Not good.  Moral is until
the bug is fixed, put that unset noglob in.  You never know when you'll
be on a VT100 :-(.

=Spencer