Tset-jv-0.9.6 for linux
-----------------------

New in tset-jv-0.9.6:

Quoting of few shell special characters, namely !, ', " and `.
Included ttytype.5 manual page (from man-pages-1.5.tar.gz).
Changed default installation directory from /usr/bin to
/usr/local/bin.
Checked that tset compiles in new ELF environment (gcc-2.6.3,
libc.so.5.0.9).

New in tset-jv-0.9.5:

Patches from Ed Doolittle: Fixed some special character
hadling. Added -w option to force terminal to be reset as defined
in /etc/termcap.
Me: Implemented /etc/ttytype matching as described in manpage
(yes, really and finally). Added -h option for usage info and -V
option for version info. Added setting of COLUMNS and LINES
environment variables.


Rest of (old) README

This tset source is based on bsd4.3 net-2 distribution. Someone else
has done most of the porting. Thanks to him/her for that. I have
done only some cleanup and small fixes.


With tset you can change the termcap entry you are currently using.
This is needed especially when logging in from different kind of
terminals and autodetection doesn't work correctly. For example, I
usually use vt100 or con80x60 terminal type on VCs, but occasionally I
log in thru a terminal using tvi920 terminal type. Of course I must
also have a termcap entry for that in my /etc/termcap file. Tset can
be also used to change currently used terminal type on the fly if the
terminal(emulator) allows that by supporting several types (most do
so).

Tset can automatically determine and set the correct terminal
type accordingly. And if the terminal type tset determined is not
on the mapping list (given with -m option on the command line) or
isn't set in /etc/ttytype file, will tset prompt for setting that
properly. For additional information, see the manual page
included.

Tset doesn't require you to use (t)csh as your shell. It can also be
used with ash, bash and zsh (at least it works with all of these
shells).

Here is an example from my .login how to use tset:

set noglob
eval `tset -Q -s -m 'vt100:vt100' -m 'screen:vt100' -m 'unknown:?vt100' -m 'network:?vt100' -m 'tvi920:?tvi920'`
unset noglob

And here is a tcsh alias which can be used to change terminal type on
the fly:

alias ts 'set noglob; eval `tset -Q -s ?\!*`; unset noglob; set term=$TERM'


I had to do some fixes to command line argument handling to get tset
work like described in manpage and then I fixed the manpage to tell
what tset does :-). I also set up simple *.h files and in some files I
changed the order of certain functions to get rid of declaration
warnings during compilation. Now it compiles quite cleanly and works
fine--at least for me.


INSTALLATION

Before compiling tset check Makefile and change whatever is
needed to fit it for your system. Makefile should be FSSTND
compliant :-|. Then say 'make' or 'make install'. That's it.

In ./sample subdirectory of sources is an ttytype file as an
example.

Bugfixes and suggestions (possibly with patches) are welcome.


Juha Virtanen, email: Juha.Virtanen@hut.fi.
