home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-02-22 | 51.0 KB | 1,762 lines |
- Newsgroups: comp.sources.misc
- From: iain%estevax.uucp@unido.Informatik.Uni-Dortmund.DE
- Subject: v28i045: tin - threaded full screen newsreader v1.1, Part01/11
- Message-ID: <csm-v28i045=tin.222508@sparky.IMD.Sterling.COM>
- X-Md4-Signature: 225cd7cbbefa40450f3032ed5ebde5ac
- Date: Tue, 18 Feb 1992 04:26:55 GMT
- Approved: kent@sparky.imd.sterling.com
-
- Submitted-by: iain%estevax.uucp@unido.Informatik.Uni-Dortmund.DE
- Posting-number: Volume 28, Issue 45
- Archive-name: tin/part01
- Environment: BSD, SCO, ISC, SUNOS, SYSVR3, SYSVR4, ULTRIX, XENIX
- Supersedes: tin: Volume 23, Issue 15-23
-
- This is version 1.1 PL0 (patchlevel 0) of the tin newsreader.
-
- - Based more on Notes and tass than rn type newreaders.
-
- - Full screen, easy to use with on-line help at all levels.
-
- - Reads news locally (ie. /usr/spool/news) and via NNTP.
-
- - Threads on Subject: and/or Archive-name: mail headers.
-
- - Four different operating levels:
- o Group selection level
- o Thread selection level
- o Article selection level
- o Article viewer
-
- - Same interface to mail, pipe, print and save articles.
-
- - Batch mode to mail/save news when user is on holiday.
-
- Enjoy
- Iain.
-
- -- Cut here --
- #!/bin/sh
- # This is tin1.1, a shell archive (shar 3.47)
- # made 02/10/1992 06:21 UTC by iain%estevax.uucp@unido.Informatik.Uni-Dortmund.DE
- # Source directory /var/home/lea/.src/tin
- #
- # existing files will NOT be overwritten unless -c is specified
- #
- # This is part 1 of a multipart archive
- # do not concatenate these parts, unpack them in order with /bin/sh
- #
- # This shar contains:
- # length mode name
- # ------ ---------- ------------------------------------------
- # 9324 -rw------- Makefile
- # 832 -rw------- MANIFEST
- # 2483 -rw------- README
- # 6149 -rw------- CHANGES
- # 2455 -rw------- TODO
- # 3693 -rw------- INSTALL
- # 31684 -rw------- tin.1
- # 2247 -rw------- wildmat.3
- # 41067 -rw------- tin.nrf
- # 23976 -rw------- art.c
- # 7108 -rw------- curses.c
- # 3249 -rw------- debug.c
- # 12822 -rw------- feed.c
- # 11498 -rw------- getline.c
- # 20637 -rw------- group.c
- # 2466 -rw------- hashstr.c
- # 5206 -rw------- help.c
- # 9634 -rw------- init.c
- # 11196 -rw------- kill.c
- # 20471 -rw------- lang.c
- # 11249 -rw------- main.c
- # 6571 -rw------- memory.c
- # 19128 -rw------- misc.c
- # 19837 -rw------- newsrc.c
- # 7366 -rw------- open.c
- # 23335 -rw------- page.c
- # 19458 -rw------- post.c
- # 3748 -rw------- prompt.c
- # 22451 -rw------- rcfile.c
- # 24939 -rw------- save.c
- # 2661 -rw------- screen.c
- # 7006 -rw------- search.c
- # 19773 -rw------- select.c
- # 10822 -rw------- signal.c
- # 14120 -rw------- thread.c
- # 4749 -rw------- wildmat.c
- # 8937 -rw------- tin.h
- # 14178 -rw------- extern.h
- # 3669 -rw------- nntp.h
- # 23136 -rw------- proto.h
- # 548 -rw------- patchlev.h
- #
- if test -r _shar_seq_.tmp; then
- echo 'Must unpack archives in sequence!'
- echo Please unpack part `cat _shar_seq_.tmp` next
- exit 1
- fi
- # ============= Makefile ==============
- if test -f 'Makefile' -a X"$1" != X"-c"; then
- echo 'x - skipping Makefile (File already exists)'
- rm -f _shar_wnt_.tmp
- else
- > _shar_wnt_.tmp
- echo 'x - extracting Makefile (Text)'
- sed 's/^X//' << 'SHAR_EOF' > 'Makefile' &&
- # Makefile for tin - for tin compiler flag options please read INSTALL.
- X
- EXE = tin
- BINDIR = /usr/local/bin
- MANDIR = /usr/man/man1
- X
- STRIP = strip
- ROFF = + drf -F Helvetica -man3
- PRINT = -Pps0
- BASE_VER= ../110
- PATCH_VER = 110
- MAIL_ADDR = iain%estevax.uucp@unido.Informatik.Uni-Dortmund.DE
- X
- HFILES = tin.h extern.h nntp.h proto.h patchlev.h
- X
- CFILES = art.c curses.c debug.c feed.c getline.c group.c hashstr.c \
- X help.c init.c kill.c lang.c main.c memory.c misc.c newsrc.c \
- X open.c page.c post.c prompt.c rcfile.c save.c screen.c search.c \
- X select.c signal.c thread.c wildmat.c
- X
- OFILES = art.o curses.o debug.o feed.o getline.o group.o hashstr.o \
- X help.o init.o kill.o lang.o main.o memory.o misc.o newsrc.o \
- X open.o page.o post.o prompt.o rcfile.o save.o screen.o search.o \
- X select.o signal.o thread.o wildmat.o
- X
- SUPPORT = Makefile MANIFEST README CHANGES TODO INSTALL *.[13] $(EXE).nrf
- X
- LINTFLAGS=-a -c -h -n -x
- X
- CC=cc
- X
- .c.o:
- X $(CC) $(CFLAGS) $*.c
- X
- all:
- X @echo "There is no default. Specify one of the following targets."
- X @echo " make bsd (BSD/Dec/Next/Sun)"
- X @echo " make sysv (SysV)"
- X @echo " make sysvr4 (SysV R4)"
- X @echo " make sco (SCO Unix)"
- X @echo " make aix (IBM AIX)"
- X @echo " make xenix (Xenix 386)"
- X @echo " make sinix (SNI SysV)"
- X @echo " make tower (NCR Tower)"
- X @echo " make minix (Minix 386)"
- X @echo " make dgux (DG Aviion)"
- X
- # For Berkeley systems:
- # NNTPLIB=clientlib.o \
- #
- bsd:
- X @echo "Compiling for BSD/Ultrix..."
- X @$(MAKE) CFLAGS='-c -O -DBSD -DLIBDIR=\"/usr/lib/news\" -DSPOOLDIR=\"/usr/spool/news\"' \
- X LIBS="-lcurses -ltermcap" \
- X EXE=tin linkit
- X
- # For System V:
- # NNTPLIB=clientlib.o \
- # NETLIBS="-lnet -lnsl_s" \
- #
- sysv:
- X @echo "Compiling for System V..."
- X @$(MAKE) CFLAGS='-c -O -DAUTO_RESIZE -DLIBDIR=\"/usr/lib/news\" -DSPOOLDIR=\"/usr/spool/news\"' \
- X LIBS="-lcurses -ltermcap" \
- X EXE=tin linkit
- X
- # For IBM AIX:
- # NNTPLIB=clientlib.o \
- #
- aix:
- X @echo "Compiling for AIX..."
- X @$(MAKE) CFLAGS='-c -O -DSYSV -DRS6000 -DREAD_CHAR_HACK -DUSE_LONG_FILENAMES -DAUTO_RESIZE -DLIBDIR=\"/usr/lib/news\" -DSPOOLDIR=\"/usr/spool/news\"' \
- X LIBS="-lcurses -ltermcap" \
- X EXE=tin linkit
- X
- # For System V Release 4:
- # NNTPLIB=clientlib.o \
- # NETLIBS="-lnsl -lsocket" \
- #
- sysvr4:
- X @echo "Compiling for System V Release 4..."
- X @$(MAKE) CFLAGS='-c -O -DPOSIX_JOB_CONTROL -DUSE_INVERSE_HACK -DAUTO_RESIZE -DLIBDIR=\"/usr/lib/news\" -DSPOOLDIR=\"/usr/spool/news\"' \
- X LIBS="-lcurses -ltermcap -L/usr/ucblib -lucb" \
- X EXE=tin linkit
- X
- # For SCO Unix:
- # NNTPLIB=clientlib.o \
- # NETLIBS="-lnsl_s -lsocket" \
- #
- sco:
- X @echo "Compiling for SCO Unix..."
- X @$(MAKE) CFLAGS='-c -O -UM_XENIX -DUSE_INVERSE_HACK -DAUTO_RESIZE -DLIBDIR="\"/usr/lib/news\"" -DSPOOLDIR="\"/usr/spool/news\""' \
- X LIBS="-lcurses -lgen -lc_s" \
- X EXE=tin linkit
- X
- # For Xenix 386:
- # NNTPLIB=clientlib.o \
- # NETLIBS="-lsocket" \
- #
- xenix:
- X @echo "Compiling for Xenix 386..."
- X @$(MAKE) CFLAGS='-c -Zi -DSYSV -DLIBDIR="\\"/usr/lib/news\\"" -DSPOOLDIR="\\"/usr/spool/news\\""' \
- X LIBS="-lcurses -ltinfo -lx" \
- X LFLAGS=-Zi EXE=tin linkit
- X
- # For SNI Sinix:
- # NNTPLIB=clientlib.o \
- # NETLIBS="-lsocket" \
- #
- sinix:
- X @echo "Compiling for SNI Sinix..."
- X @$(MAKE) CFLAGS='-c -O -DSINIX -DLOG_USER -DUSE_MKDIR -DAUTO_RESIZE -DLIBDIR=\\"/usr/lib/news\\" -DSPOOLDIR=\\"/usr2/spool/news\\"' \
- X LIBS="-lcurses" \
- X EXE=tin linkit
- X
- # For NCR Tower:
- # NNTPLIB=clientlib.o \
- # NETLIBS="-lnet -lnsl_s" \
- #
- tower:
- X @echo "Compiling for NCR Tower..."
- X @$(MAKE) CFLAGS='-c -O -DSYSV -DNCR -DISTRING -DLIBDIR=\"/usr/lib/news\" -DSPOOLDIR=\"/usr/spool/news\"' \
- X LIBS="-lcurses -ltermcap" \
- X EXE=tin linkit
- X
- # For Minix 386:
- #
- minix:
- X @echo "Compiling for Minix 386..."
- X @$(MAKE) CFLAGS='-c -O -DMINIX -D_POSIX_SOURCE -DLIBDIR=\"/usr/lib/news\" -DSPOOLDIR=\"/usr/spool/news\"' \
- X LIBS="-lcurses" \
- X EXE=tin linkit
- X chmem +131072 $(EXE)
- X
- # For Data General Aviion
- # NNTPLIB=clientlib.o \
- #
- dgux:
- X @echo "Compiling for DG Aviion..."
- X @$(MAKE) CFLAGS='-c -O -DUSE_LONG_FILENAMES -DPOSIX_JOB_CONTROL -DUSE_INVERSE_HACK -DAUTO_RESIZE -DLIBDIR=\"/usr/lib/news\" -DSPOOLDIR=\"/usr/spool/news\"' \
- X LIBS="-lcurses" \
- X EXE=tin linkit
- X
- # THE FOLLOWING ARE SITE SPECIFIC - IGNORE
- norisc:
- X @echo "Compiling for NORISC with NNTP..."
- X @$(MAKE) CFLAGS='-c -O -DBSD -DDEBUG -DLOG_USER -DUSE_NNTP -DAUTO_RESIZE -DLIBDIR=\"/news/lib\" -DSPOOLDIR=\"/news/spool\"' \
- X NNTPLIB=/news/nntp/clientlib.o \
- X LIBS="-lcurses -ltermcap" \
- X EXE=tin linkit
- X
- sony01:
- X @echo "Compiling for SONY01..."
- X @$(MAKE) CFLAGS='-c -g -DBSD -DDEBUG -DLOG_USER -DLIBDIR=\"/a/NEWS/lib\" -DSPOOLDIR=\"/a/NEWS/news\"' \
- X LIBS="-lcurses -ltermcap" \
- X EXE=tin linkit
- X
- kommu:
- X @echo "Compiling for KOMMU with NNTP..."
- X @$(MAKE) CFLAGS='-c -O -UM_XENIX -DDEBUG -DUSE_INVERSE_HACK -DAUTO_RESIZE -DUSE_NNTP -DLIBDIR="\\"/usr/lib/news\\"" -DSPOOLDIR="\\"/usr/spool/news\\""' \
- X NNTPLIB=./clientlib.o \
- X NETLIBS="-lnsl_s -lsocket" \
- X LIBS="-lcurses -lgen -lc_s" \
- X EXE=tin linkit
- X
- # For Xenix 386:
- home:
- X @echo "Compiling for (HOME) Xenix 386..."
- X @$(MAKE) CFLAGS='-c -W2 -Zi -DSYSV -DDEBUG -DLOG_USER -DLIBDIR="\\"/usr/lib/news\\"" -DSPOOLDIR="\\"/usr/spool/news\\""' \
- X LIBS="-lcurses -ltinfo -lx" \
- X LFLAGS=-Zi EXE=tin linkit
- X
- linkit: $(OFILES)
- X @echo "Linking $(EXE)..."
- X $(CC) $(LFLAGS) -o $(EXE) $(OFILES) $(NNTPLIB) $(NETLIBS) $(LIBS)
- X @ls -l $(EXE)
- X
- install:
- X @echo "Installing $(EXE)..."
- X @$(STRIP) $(EXE)
- X @-mv $(EXE) $(BINDIR)
- X @-rm $(BINDIR)/r$(EXE)
- X @ln $(BINDIR)/$(EXE) $(BINDIR)/r$(EXE)
- X @chmod 755 $(BINDIR)/$(EXE) $(BINDIR)/r$(EXE)
- X @ls -l $(BINDIR)/$(EXE) $(BINDIR)/r$(EXE)
- X @cp $(EXE).1 $(MANDIR)
- X
- install_setuid:
- X @echo "Installing SETUID $(EXE)..."
- X @$(STRIP) $(EXE)
- X @-mv $(EXE) $(BINDIR)
- X @chown news $(BINDIR)/$(EXE)
- X @-rm $(BINDIR)/r$(EXE)
- X @ln $(BINDIR)/$(EXE) $(BINDIR)/r$(EXE)
- X @su news -c "chmod 4755 $(BINDIR)/$(EXE)"
- X @su news -c "chmod 4755 $(BINDIR)/r$(EXE)"
- X @ls -l $(BINDIR)/$(EXE) $(BINDIR)/r$(EXE)
- X @cp $(EXE).1 $(MANDIR)
- X
- proto:
- X @echo "Generating function prototypes for proto.h..."
- # @cextract -DSIGTSTP -DSIGWINCH $(CFILES) > PROTO.H
- # @-mv PROTO.H proto.h
- X @echo "#if __STDC__" > PROTO.H
- X @echo " " >> PROTO.H
- X @cproto -e $(CFILES) >> PROTO.H
- X @echo " " >> PROTO.H
- X @echo "#else" >> PROTO.H
- X @echo " " >> PROTO.H
- X @cproto -e -f1 $(CFILES) >> PROTO.H
- X @echo " " >> PROTO.H
- X @echo "#endif" >> PROTO.H
- X @-mv PROTO.H proto.h
- X
- nroff:
- X @echo "Creating nroff man page..."
- X @nroff -man $(EXE).1 > $(EXE).nrf
- X
- manifest:
- X @echo "Creating MANIFEST..."
- X @echo "MANIFEST for tin newsreader (`date`)" > MANIFEST
- X @echo "----------------------------------------------------------" >> MANIFEST
- X @wc -c $(SUPPORT) $(HFILES) $(CFILES) >> MANIFEST
- X
- shar:
- X @echo "Generating shell archive..."
- X @make nroff
- X @make manifest
- X @shar -a -n $(EXE)1.1 -s $(MAIL_ADDR) -L50 -o ../$(EXE).shar $(SUPPORT) $(CFILES) $(HFILES)
- X
- uuencode:
- X @make tar
- X @echo "Uuencoding $(EXE).tar.Z..."
- X @uuencode $(EXE).tar.Z $(EXE).tar.Z > $(EXE).tar.Z.uue
- X @ls -l $(EXE).tar.Z.uue
- X
- diff:
- X @echo "Generating diffs against $(BASE_VER)..."
- X @make nroff
- X @make manifest
- X @-mv -f $(EXE).diff $(EXE).diff-
- X @-diff -rcs $(BASE_VER) . > $(EXE).diff
- X @ls -l $(EXE).diff
- X
- patch:
- X @make diff
- X @echo "Generating patch against $(BASE_VER)..."
- X @-mv $(EXE).diff $(EXE).patch$(PATCH_VER)
- X @shar -a -n $(EXE) -s $(MAIL_ADDR) -L50 -o patch$(PATCH_VER).shar $(EXE).patch$(PATCH_VER)
- X @ls -l patch$(PATCH_VER).shar*
- X
- tar:
- X @echo "Generating compressed tar file..."
- X @-rm $(EXE).tar $(EXE).tar.Z > /dev/null 2>&1
- X @tar cvf $(EXE).tar $(SUPPORT) $(CFILES) $(HFILES)
- X @echo "Compressing $(EXE).tar..."
- X @compress $(EXE).tar
- X @ls -l $(EXE).tar.Z
- X
- zoo:
- X @echo "Generating zoo archive file..."
- X @-rm $(EXE).zoo > /dev/null 2>&1
- X @zoo ah $(EXE).zoo $(SUPPORT) $(CFILES) $(HFILES)
- X @ls -l $(EXE).zoo
- X
- tags:
- X @echo "Generating tags (results in ./tags)..."
- X @-rm tags
- X @ctags $(HFILES) $(CFILES)
- X
- lint:
- X @echo "Linting source (results in ./LINT)..."
- X @lint $(LINTFLAGS) -DUSE_NNTP $(CFILES) > LINT
- X
- clean:
- X @echo "Cleaning..."
- X @-'rm' -rf $(OFILES) '#*' $(EXE).diff*
- X
- clobber:
- X @echo "Clobbering..."
- X @-'rm' -rf $(OFILES) '#*' tags $(EXE) $(EXE).diff* patch.shar*
- X
- cflow:
- X @echo "Creating cflow for $(EXE)..."
- X @cflow $(CFILES) > cflow.$(EXE) &
- X
- man:
- X @echo "Printing $(EXE) manual to $(PRINT)..."
- X @$(ROFF) $(PRINT) $(EXE).1
- X
- print:
- X @for FILE in $(HFILES) $(CFILES) $(SUPPORT); do \
- X echo "Printing $$FILE to $(PRINT)..."; \
- X expand -4 $$FILE | enscript -2r -h -G $(PRINT) -b $$FILE; \
- X done
- X
- art.o: art.c $(HFILES)
- curses.o: curses.c $(HFILES)
- debug.o: debug.c $(HFILES)
- feed.o: feed.c $(HFILES)
- getline.o: getline.c $(HFILES)
- group.o: group.c $(HFILES)
- hashstr.o: hashstr.c $(HFILES)
- help.o: help.c $(HFILES)
- init.o: kill.c $(HFILES)
- kill.o: kill.c $(HFILES)
- lang.o: lang.c $(HFILES)
- main.o: main.c $(HFILES)
- memory.o: memory.c $(HFILES)
- misc.o: misc.c $(HFILES)
- newsrc.o: newsrc.c $(HFILES)
- open.o: open.c nntp.h
- page.o: page.c $(HFILES)
- post.o: post.c $(HFILES)
- prompt.o: prompt.c $(HFILES)
- rcfile.o: rcfile.c $(HFILES)
- save.o: save.c $(HFILES)
- screen.o: screen.c $(HFILES)
- search.o: search.c $(HFILES)
- select.o: select.c $(HFILES)
- signal.o: signal.c $(HFILES)
- thread.o: thread.c $(HFILES)
- wildmat.o: wildmat.c
- SHAR_EOF
- chmod 0600 Makefile ||
- echo 'restore of Makefile failed'
- Wc_c="`wc -c < 'Makefile'`"
- test 9324 -eq "$Wc_c" ||
- echo 'Makefile: original size 9324, current size' "$Wc_c"
- rm -f _shar_wnt_.tmp
- fi
- # ============= MANIFEST ==============
- if test -f 'MANIFEST' -a X"$1" != X"-c"; then
- echo 'x - skipping MANIFEST (File already exists)'
- rm -f _shar_wnt_.tmp
- else
- > _shar_wnt_.tmp
- echo 'x - extracting MANIFEST (Text)'
- sed 's/^X//' << 'SHAR_EOF' > 'MANIFEST' &&
- MANIFEST for tin newsreader (Mon Feb 10 07:21:06 MET 1992)
- ----------------------------------------------------------
- X 9324 Makefile
- X 118 MANIFEST
- X 2483 README
- X 6149 CHANGES
- X 2455 TODO
- X 3693 INSTALL
- X 31684 tin.1
- X 2247 wildmat.3
- X 41067 tin.nrf
- X 8937 tin.h
- X 14178 extern.h
- X 3669 nntp.h
- X 23136 proto.h
- X 548 patchlev.h
- X 23976 art.c
- X 7108 curses.c
- X 3249 debug.c
- X 12822 feed.c
- X 11498 getline.c
- X 20637 group.c
- X 2466 hashstr.c
- X 5206 help.c
- X 9634 init.c
- X 11196 kill.c
- X 20471 lang.c
- X 11249 main.c
- X 6571 memory.c
- X 19128 misc.c
- X 19837 newsrc.c
- X 7366 open.c
- X 23335 page.c
- X 19458 post.c
- X 3748 prompt.c
- X 22451 rcfile.c
- X 24939 save.c
- X 2661 screen.c
- X 7006 search.c
- X 19773 select.c
- X 10822 signal.c
- X 14120 thread.c
- X 4749 wildmat.c
- X 495164 total
- SHAR_EOF
- chmod 0600 MANIFEST ||
- echo 'restore of MANIFEST failed'
- Wc_c="`wc -c < 'MANIFEST'`"
- test 832 -eq "$Wc_c" ||
- echo 'MANIFEST: original size 832, current size' "$Wc_c"
- rm -f _shar_wnt_.tmp
- fi
- # ============= README ==============
- if test -f 'README' -a X"$1" != X"-c"; then
- echo 'x - skipping README (File already exists)'
- rm -f _shar_wnt_.tmp
- else
- > _shar_wnt_.tmp
- echo 'x - extracting README (Text)'
- sed 's/^X//' << 'SHAR_EOF' > 'README' &&
- This is version 1.1 PL0 (patchlevel 0) of the tin newsreader.
- X
- - Based more on Notes and tass than rn type newreaders.
- X
- - Full screen, easy to use with on-line help at all levels.
- X
- - Reads news locally (ie. /usr/spool/news) and via NNTP.
- X
- - Threads on Subject: and/or Archive-name: mail headers.
- X
- - Four different operating levels:
- X o Group selection level
- X o Thread selection level
- X o Article selection level
- X o Article viewer
- X
- - Same interface to mail, pipe, print and save articles.
- X
- - Batch mode to mail/save news when user is on holiday.
- X
- NOTE: PLEASE READ THE MAN PAGE tin.1 BEFORE SENDING A BUG REPORT/COMMENT.
- X
- Major improvements over tin 1.0 PL7 are the following:
- X
- o added 'l' command to manipulate threads easier.
- X
- o added 'd' command to toggle display of subject or subject and author.
- X
- o added 'u' command to toggle display of articles unthreaded/threaded.
- X
- o added -H option and also brief intro when started for the first time.
- X
- o added emacs style line editing with scrollable editing area.
- X
- o added auto unshar if group is *sources* or uudecode if *binaries*.
- X
- o added support for DG Aviion.
- X
- o fixed -M and -S options so that screen is correctly reset.
- X
- o fixed 'F' command that was using the wrong reply address.
- X
- o fixed unlink of ~/.article so that error message is not displayed.
- X
- o fixed bug that caused signal 11 when pressing 'M' command with no
- X articles in the group.
- X
- For more bug fixes, changes & additions read the CHANGES & TODO files.
- X
- For compilation and installation information read the INSTALL file.
- X
- I wish to thank all the people that sent me bug fixes and comments for
- tin v1.0. I still want to hear of any bug reports and comments.
- X
- I am still off the net, but am contactable at the following address:
- X
- X Iain J. Lea
- X BrueckenStr. 12
- X 8500 Nuernberg 90
- X Germany.
- X Phone. +49-911-331963 (home)
- X Phone. +49-911-3089-407 (work)
- X Email. iain%estevax.uucp@unido.Informatik.Uni-Dortmund.DE
- X iain@estevax.uucp (only reading mailbox weekly)
- X
- Due to above problem if anyone wants the latest released version or
- an early version of the next patchlevel I am willing to send a copy
- in unix compressed tar or msdos format 5.25 or 3.5 inch disks.
- I will make a small handling charge for this service as listed below:
- X Germany 15 Deustche Marks
- X England 5 Pounds Sterling
- X USA 10 Dollars
- Please send money/cheque with self-addressed envelope to above addess.
- X
- Enjoy
- X Iain.
- SHAR_EOF
- chmod 0600 README ||
- echo 'restore of README failed'
- Wc_c="`wc -c < 'README'`"
- test 2483 -eq "$Wc_c" ||
- echo 'README: original size 2483, current size' "$Wc_c"
- rm -f _shar_wnt_.tmp
- fi
- # ============= CHANGES ==============
- if test -f 'CHANGES' -a X"$1" != X"-c"; then
- echo 'x - skipping CHANGES (File already exists)'
- rm -f _shar_wnt_.tmp
- else
- > _shar_wnt_.tmp
- echo 'x - extracting CHANGES (Text)'
- sed 's/^X//' << 'SHAR_EOF' > 'CHANGES' &&
- CHANGES tin v1.0 PL7 -> tin 1.1 PL0
- -----------------------------------
- X
- 1) uunet!atlantis!bugs (Dan Berry)
- X BUG. Toggling inverse video with 'I' command does not switch on
- X highlighted bar when inverse is toggled on.
- X FIX. misc.c - switches highlighted bar on if USE_INVERSE_HACK is
- X not defined.
- X
- 2) iain@estevax.uucp (Iain Lea)
- X ADD. thread.c - added 'l' command to manipulate threads easier.
- X
- 3) becker@med-in.uni-sb.de (Dieter Becker)
- X BUG. define INDEWSDIR in tin.h should be INEWSDIR.
- X FIX. changed to INEWSDIR.
- X
- 4) john@iti.org (John Sauter)
- X BUG. The ! command only allows 80 characters minus the length of the
- X prompt. Frequently this is way too small!
- X FIX. prompt.c getline.c - added emacs style line editing which allows
- X horizontal scrolling of editing area.
- X
- 5) john@iti.org (John Sauter)
- X BUG. When saving threads by Archive-name: field the default is sometimes
- X wrong. ie. unshar on a binaries group should be uudecode & zoo.
- X FIX. feed.c - check whether group is sources and therefore unshar,
- X or if group is binaries uudecode it.
- X
- 6) iain@estevax.uucp (Iain Lea)
- X BUG. Artivles should be marked read if saved, printed, piped etc.
- X FIX. feed.c - saved, printed piped etc. are marked read if mark
- X saved read is set ON in 'M' menu.
- X
- 7) unido!asd.tds.philips.se!kko (Karl-Koenig Koenigsson)
- X BUG. When articles are tagged and 'K' command is done the tagged
- X article number is not redisplayed.
- X FIX. group.c - modified 'K' command to redisplay tagged art number.
- X
- 8) otto@norisc.uucp (Otto Niesser)
- X BUG. When ESC is pressed to exit 'M' menu at group selection level
- X the screen is redrawn but part of the right side of the 'M'
- X menu is still present.
- X FIX. select.c - added clear screen when -> is used.
- X
- 9) otto@norisc.uucp (Otto Niesser)
- X BUG. When ESC is pressed to abort a selected option, the option is
- X set even though you wish to abort the operation.
- X FIX. rcfile.c prompt.c - option set to original value if ESC pressed
- X
- 10) unido!asd.tds.philips.se!kko (Karl-Koenig Koenigsson)
- X BUG. Tagged articles are not automatically untagged when processed.
- X FIX. feed.c - untags all articles after post processing.
- X
- 11) hakanl@lulea.telesoft.se (Hakan Lennestal)
- X BUG. post_base() & post_response() unlink ~/.article too soon.
- X FIX. post.c - applied the supplied patch.
- X
- 12) hakanl@lulea.telesoft.se (Hakan Lennestal)
- X BUG. setuid() problems in posting routines.
- X FIX. post.c - applied the supplied patch.
- X
- 13) pgd@compuram.bbt.se (Per Lindqvist)
- X BUG. The "addr (username) writes: " when doing a 'F' command is
- X wrong.
- X FIX. page.c post.c - added extra parameter to post_response()
- X routine.
- X
- 14) pgd@compuram.bbt.se (Per Lindqvist)
- X BUG. When doing a 'f'/'F' followup to an article, when you come
- X back to the newsgroup the wrong article is displayed.
- X FIX. page.c post.c - check if followup succeeded in post_response().
- X
- 15) marc@CAM.ORG (Marc Boucher)
- X BUG. mark_unthreaded_groups() does not do a setuid() before
- X accessing ~/.tin/unthread.
- X FIX. misc.c - applied supplied patch.
- X
- 16) m31z@jupiter.sun.csd.unb.ca (Steven Cogswell)
- X BUG. When pressing 'M' menu with no articles in group at article
- X selection level a signal 11 causes the program to crash.
- X FIX. group.c - modified if() to check if top_base > 0 not top > 0.
- X
- 17) iain@estevax.uucp (Iain Lea)
- X BUG. Posted subject line is not extracted from ~/.article.
- X FIX. post.c - modified find_mail_header() to read Subject: line.
- X
- 18) otto@norisc.uucp (Otto Niesser)
- X BUG. threads are saved with 0 bytes length at article page level
- X when reading news via NNTP.
- X FIX. save.c - changed save_thread_to_file() to use save_art_to_file().
- X
- 19) robinson@mdivax1.mdd.comm.mot.com (Jim Robinson)
- X BUG. Save paths that begin with '/' should not be expanded, and
- X pathnames beginning with '$' should be treated as an enviroment
- X variable and be expanded until the first '/' is encountered.
- X FIX. save.c - applied supplied patch.
- X
- 20) otto@norisc.uucp (Otto Niesser)
- X BUG. Usage message for -r option has DEFAULT_PRINTER as output
- X parameter even though no %s is in text.
- X FIX. main.c - changed output parameter to (char *) 0.
- X
- 21) otto@norisc.uucp (Otto Niesser)
- X BUG. When a printer is specified with the -p option it should only
- X last the duration of the current session and should not be
- X written to the tinrc file.
- X FIX. main.c init.c feed.c - added cmd_line_printer varaible so that
- X tinrc printer varaible is not affected.
- X
- 22) georg@norisc.uucp (Georg Biehler)
- X BUG. When '1'<BS><TAB><CR> is pressed when prompting for a number
- X the cursor is wrongly positioned above the first entry listed.
- X FIX. select.c - added check to test if entered number is negative.
- X
- 23) robert@sys.sweden.dg.com (Robert Claeson)
- X ADD. Makefile - applied supplied patch to support DG Aviion.
- X
- 24) iain@estevax.uucp (Iain Lea)
- X ADD. group.c - added 'd' command to toggle display of subject only
- X or subject and author.
- X
- 25) iain@estevax.uucp (Iain Lea)
- X ADD. main.c - added -H option and also when tin is started for the
- X first time a brief introduction message is printed for first
- X time users.
- X
- 26) john@iti.org (John Sauter)
- X BUG. -M and -S options cause screen not to be reset correctly.
- X FIX. main.c - changed exit() call to tin_done() to reset screen.
- X
- 27) iain@estevax.uucp (Iain Lea)
- X BUG. Archive-Name: field in comp.sources.unix is not threaded.
- X FIX. art.c - added extra check for Archive-name: and Archive-name:.
- X
- 28) iain@estevax.uucp (Iain Lea)
- X ADD. group.c - added 'u' command to toggle threading/unthreading
- X of all articles within current group.
- X
- 29) tho@slxger.specialix.de (Torsten Homeyer)
- X BUG. Under SCO 3.2.2 the cal getlogin() isn't able to return the
- X expected info nor a null pointer. It returns just garbage.
- X FIX. init.c - applied supplied patch.
- SHAR_EOF
- chmod 0600 CHANGES ||
- echo 'restore of CHANGES failed'
- Wc_c="`wc -c < 'CHANGES'`"
- test 6149 -eq "$Wc_c" ||
- echo 'CHANGES: original size 6149, current size' "$Wc_c"
- rm -f _shar_wnt_.tmp
- fi
- # ============= TODO ==============
- if test -f 'TODO' -a X"$1" != X"-c"; then
- echo 'x - skipping TODO (File already exists)'
- rm -f _shar_wnt_.tmp
- else
- > _shar_wnt_.tmp
- echo 'x - extracting TODO (Text)'
- sed 's/^X//' << 'SHAR_EOF' > 'TODO' &&
- FIX FEATURES V1.1
- -----------------
- X
- o Fix 'l' thread command so 2nd page of thread is correct. Need a
- X routine to give the next response in thread.
- X
- o Fix -R option to read saved new news from <savedir>
- X
- o Fix -S option to save new news to <savedir>. Create an active file
- X when new articles are saved to <savedir>.
- X
- o Fix -n option to hash the groups read in from ~/.tin/active and
- X mark active[].flag as TRUE. then find flag=FALSE and ask user if
- X they want to subscribe to group. On xenix386 takes 15 seconds on
- X current -n option.
- X
- FIX FEATURES V2.0
- -----------------
- X
- o Fix uuscram code in uudecode.
- X
- o Fix code to sort arts. At page level funny things happen.
- X
- o Fix code to KILL articles. At page level funny things happen.
- X
- o Fix code to KILL articles with 't' command.
- X
- o Fix so that it always finds unread messages.
- X
- o Fix 'z' so that it stays unread even if a KILL is performed before
- X leaving the group.
- X
- o Fix 'z' at group selection level so whole screen is not redrawn.
- X
- o Fix code to display only groups with unread news. look at
- X setup_base() also for killing.
- X
- ADD FEATURES
- ------------
- X
- o Add -P <pattern> or -P <file> to search for in new news and to
- X notify user by mail. Should understand 'subject=text' 'from=text'
- X 'body=text' and .AND. && .OR. || for filtering purposes.
- X
- o Add elm style print command with %s in it for printing in 'M'.
- X
- o Add crossposting of articles so that read ones are marked read in
- X other groups. in rn it uses Xref: line to do this. Perhaps just
- X use update_group() to do it?
- X Needs to handle 'c' 'C' 'k' 'K' commands. Perhaps it should be an
- X option so that performance is not impaired.
- X
- o Add 'C' command at group level to catchup present group and
- X enter next group with unread news in it.
- X
- o Sort .newsrc according to preference. (sort active file as it is read)
- X
- o Add time period kill article
- X
- PIPEDREAMS
- ----------
- o Add rebindable keymaps and provide different terminal keymaps
- X (ie. keymap.ansi, keymap.wy50 etc.)
- X
- o Add Virtual newsgroups (combination of newsgroups ie. virtual.ibm
- X consists of comp.sys.ibm.* groups).
- X
- o Add threading on References like trn with mthreads database.
- X
- o Add full curses support instead of using printf()'s.
- X
- o Sub all not empty groups by looking at min max values in active array
- X and Unsub all empty groups by looking at min max values in active
- X array. have a command to do this in a toggle effect.
- SHAR_EOF
- chmod 0600 TODO ||
- echo 'restore of TODO failed'
- Wc_c="`wc -c < 'TODO'`"
- test 2455 -eq "$Wc_c" ||
- echo 'TODO: original size 2455, current size' "$Wc_c"
- rm -f _shar_wnt_.tmp
- fi
- # ============= INSTALL ==============
- if test -f 'INSTALL' -a X"$1" != X"-c"; then
- echo 'x - skipping INSTALL (File already exists)'
- rm -f _shar_wnt_.tmp
- else
- > _shar_wnt_.tmp
- echo 'x - extracting INSTALL (Text)'
- sed 's/^X//' << 'SHAR_EOF' > 'INSTALL' &&
- Compilation and installation notes for tin - 01-02-92
- -----------------------------------------------------
- X
- Tin has been compiled on a wide range of Unix machines with cc and gcc.
- A list of these machines can be found at the bottom of this file.
- X
- It can be compiled to read news in any of the following ways:
- X o locally from your machines news spool dir, usually /usr/spool/news.
- X o remotely from another machine via NNTP.
- X o locally and remotely (rtin or tin -r option).
- X
- The NNTP (NetNews Transport Protocol RFC 977) software needs to be
- installed on your machine if want to read news remotely. It is a
- SEPERATE PACKAGE that is available from many FTP and mailserver
- sites. The file that has to be linked with tin is clientlib.o.
- X
- Building Tin
- ------------
- X
- 1) type 'make' and a few system types will be displayed
- 2) edit Makefile if you want to add/change -D<dfines>
- 3) type 'make <system type>' to compile for your system
- 4) type 'make install' / 'make install_setuid' to install
- X
- Compiler flags (-D<name> define directives)
- -------------------------------------------
- News directory structure
- ------------------------
- X
- LIBDIR
- Define if news software is not in /usr/lib/news.
- X
- INEWSDIR
- Define if bnews/cnews program 'inews' is not in LIBDIR.
- X
- SPOOLDIR
- Define if news articles are not in /usr/spool/news.
- X
- X
- Reading news via NNTP
- ---------------------
- X
- USE_NNTP
- Define if reading news remotely via an NNTP server.
- X
- NNTP_SERVER_FILE
- Only define if your nntpserver file is other than /etc/nntpserver.
- X
- NNTPLIB
- Contains the path of the file clientlib.o that is part of NNTP software.
- X
- NETLIBS
- Contains the networking libraries needed to link with clientlib.o file.
- X
- X
- Miscellaneous options
- ---------------------
- X
- POSIX_JOB_CONTROL
- Define if your machine uses Posix style sigaction() signal handling.
- X
- USE_MKDIR
- Define if your machine does not have the mkdir() system call.
- X
- USE_LONG_FILENAMES
- Define if your machines filesystem supports filenames longer than 14
- chars (default for BSD type systems).
- X
- USE_INVERSE_HACK
- Define if you want inverse video and highlighted bar disabled. (default
- for SCO Unix & SysVR4). Can be toggled in tin by the 'I' command and
- highlight bar by 'M' command.
- X
- USE_CLEARSCREEN
- Define if the you wish screen to use ClearScreen() and not MoveCursor()
- and CleartoEOLN(). This is perhaps faster on slow terminals but I have
- not really run any speed tests recently.
- X
- SLOW_SCREEN_UPDATE
- Define if running over a low speed connection (ie. 2400baud). It stops
- the percentage info being shown at bottom of select and group menus and
- stops the groupname being displayed at the bottom of the screen as it is
- subscribed/unsubscribed.
- X
- NO_REGEX
- Define if you do not want to use regular expression pattern matching.
- X
- NO_START_LINE
- Do not start editor with line offset into file.
- X
- NO_SHELL_ESCAPE
- Do not allow shell escapes.
- X
- NO_POSTING
- Do not allow posting/followup of articles.
- X
- LOG_USER
- Log user info each time tin is started to /tmp/.tin_log for usage statistics.
- X
- Compiled & installed on the following machines
- ----------------------------------------------
- X
- 1) * Dec 5000/Vax & Ultrix 4.1/4.2
- 2) * Vax 11/785 & BSD 4.3
- 3) * 386 PC & Xenix 2.3/ATT SysVr4.0/SCO SysVR3.2/ISC SysVR3.2
- 3) * Sun 3/4/IPC/SS1/SS2 & SunOS 4.0.3/4.1/4.1.1
- 4) * Sony News & SysVR4/BSD 4.3
- 5) * SNI MX300/MX500 & Sinix 5.22/5.23/5.24
- 6) ICL DRS6000 & SysVR4.0
- 7) Atari STe & Minix 1.5.10.3b
- 8) Apricot VX/FT & SCO 3.2.2
- 9) DIAB DS90 & D-NIX 5.3
- 10) Amdahl & SysVR3
- 11) HP 9000/845 & HP-UX 7.0
- 12) IBM RS/6000 & AIX 3.1.5
- 13) NCR Tower & SysV
- 14) Atari STe & Minix 1.5.10.3b
- 15) 386 PC & Minix 386
- 16) DG Aviion & DG-UX
- X
- * = compiled, installed and used by author
- SHAR_EOF
- chmod 0600 INSTALL ||
- echo 'restore of INSTALL failed'
- Wc_c="`wc -c < 'INSTALL'`"
- test 3693 -eq "$Wc_c" ||
- echo 'INSTALL: original size 3693, current size' "$Wc_c"
- rm -f _shar_wnt_.tmp
- fi
- # ============= tin.1 ==============
- if test -f 'tin.1' -a X"$1" != X"-c"; then
- echo 'x - skipping tin.1 (File already exists)'
- rm -f _shar_wnt_.tmp
- else
- > _shar_wnt_.tmp
- echo 'x - extracting tin.1 (Text)'
- sed 's/^X//' << 'SHAR_EOF' > 'tin.1' &&
- .TH TIN 1 "Version 1.1 PL0"
- .SH NAME
- tin/rtin \- A threaded Netnews reader
- .SH SYNOPSIS
- .B tin/rtin
- [options] [newsgroups]
- .SH DESCRIPTION
- .I Tin
- is a full-screen threaded Netnews reader. It can read news locally
- (ie. \fI/usr/spool/news\fP) or remotely (rtin or tin -r option) via
- a NNTP (Network News Transport Protocol) server.
- .PP
- Tin has four newsreading levels:
- the newsgroup selection page, the group index page, the thread listing
- page and the article viewer.
- Use the 'h' (help) command to view a list of the commands available at a
- particular level.
- .PP
- On startup Tin will show a list of the newsgroups found in \fI$HOME/.newsrc\fP.
- An arrow '->' or highlighted bar will point to the first newsgroup.
- Move to a group by using the terminal arrow keys (ansi/at386/vt100 only) or 'j'
- and 'k'. Use PgUp/PgDn (ansi/at386/vt100 only) or Ctrl-U and Ctrl-D to
- page up/down. Enter a newsgroup by pressing RETURN.
- .PP
- The TAB key may be used to advance to the next newsgroup with unread articles
- and enter it.
- .SH OPTIONS
- .TP 10
- \fB-c\fP
- create/update index files for every group in \fI$HOME/.newsrc\fP or
- file specified by -f option and mark all articles as read.
- .TP
- \fB-d dir\fP
- save articles to directory. Default is \fI$HOME/News\fP.
- .TP
- \fB-f file\fP
- Use the specified file in place of \fI$HOME/.newsrc\fP.
- .TP
- \fB-h\fP
- help listing all command line options.
- .TP
- \fB-m dir\fP
- mailbox directory to use. Default is \fI$HOME/Mail\fP.
- .TP
- \fB-M user\fP
- mail unread articles to specified user for later reading. For more
- information read section Automatic Mailing and Saving New News.
- .TP
- \fB-n\fP
- notify the user of any newly created newsgroups since the last session.
- .TP
- \fB-p file\fP
- print program with options.\fP.
- .TP
- \fB-r\fP
- read news remotely from the default NNTP server specified in the
- environment variable NNTPSERVER or contained in the file
- \fI/etc/nntpserver\fP.
- .TP
- \fB-R\fP
- read news saved by -S option (not yet implemented).
- .TP
- \fB-s dir\fP
- spool directory where news is stored. Default is \fI/usr/spool/news\fP.
- .TP
- \fB-S\fP
- save unread articles for later reading by -R option. For more information
- read section Automatic Mailing and Saving New News.
- .TP
- \fB-u\fP
- create/update index files for every group in \fI$HOME/.newsrc\fP or
- file specified by -f option.
- .TP
- \fB-U\fP
- start tin in the background to update index files while reading news
- in the foreground.
- .TP
- \fB-v\fP
- verbose mode for -c -M -S -u and -Z options.
- .TP
- \fB-z\fP
- only start tin if there is any new/unread news. If there is news tin
- will position cursor at first group with unread news. Useful for putting
- in login file.
- .TP
- \fB-Z\fP
- check if there is any new/unread news and exit with appropiate status.
- If -v option is specified the number of unread articles in each group
- is printed. An exit code 0 indicates no news, 1 that an error occurred
- and 2 that new/unread news exists. Useful for writing scripts.
- .PP
- Tin can also dynamically change its options by the 'M' menu command.
- Any changes are written to \fI$HOME/.tin/tinrc\fP.
- .SH "INDEX FILES"
- In order to keep track of threads, Tin maintains an index for each group.
- If Tin is made setuid to news, the indexes will be stored in the news spool
- directory (typically \fI/usr/spool/news\fP). If Tin is not setuid, it
- will store index files in the subdirectory \fI$HOME/.tin/.index\fP.
- Do not make Tin setuid news if news will be obtained via NNTP and not
- from \fI/usr/spool/news\fP.
- .PP
- Entering a group the first time tends to be slow because the index file must
- be built from scratch. Subsequent readings of a group will cause
- Tin to incrementally update the index file, adding or removing entries as new
- articles come in or as news expires. If reading news remotely indexing
- will be somewhat slower because the articles must be retrieved via the
- NNTP.
- .PP
- A good way to keep Tin index files current is to run tin -u from cron:
- .RS
- .nf
- 20 6 * * * /usr/local/bin/tin -u -f /usr/lib/news/tin_groups
- .fi
- .RE
- This would update the index files for those groups appearing in
- \fI/usr/lib/news/tin_groups\fP. To index all of the groups on the
- system, run tin -u with -f indicating the active file:
- .RS
- .nf
- 20 6 * * * /usr/local/bin/tin -u -f /usr/lib/news/active
- .fi
- .RE
- .SH "SCREEN FORMAT"
- Tin has three separate levels of operation: Selection Group level, Group level
- and Article level.
- .PP
- At the Selection Group level the title displays the number of subscribed
- groups. The newsgroups are displayed on the left of the screen with the
- number of unread articles displayed on the same line in the middle of
- the screen.
- .RS
- .nf
- .in +.5i
- .ta +\w'1 'u +\w'news.software.readers 'u
- <Selection Num> <Newsgroup> <Num of unread articles>
- .ti -.5i
- i.e.,
- 1 alt.sources 10
- 2 comp.sources.misc 3
- 3 news.software.readers 12
- .in -.5i
- .fi
- .RE
- .PP
- At the Group level the title contains the name of the group, the number
- of conversation threads and total number of articles i.e., alt.sources (7 23).
- If the group has been setup not to thread articles (i.e., alt.sources
- is in \fI$(HOME)/.tin/unthread\fP) the title will be alt.sources (U 23).
- There are two possible display formats as shown below:
- .RS
- .nf
- .in +.5i
- .ta +\w'1 'u +\w'+ +\w'This question has 'u +\w'1
- <Selection Num> <Unread> <Responses> <Subject> <Author>
- .ti -.5i
- i.e.,
- 1 + 3 Bnews sources? iain@estevax.uucp
- 2 1 This question has ether@net
- .ti -.5i
- or
- .ta +\w'1 'u +\w'+ 'u +\w'This question has a long subject line 'u
- <Selection Num> <Unread> <Responses> <Subject (longer)>
- .ti -.5i
- i.e.,
- 1 + 3 Bnews sources?
- 2 1 This question has a longer subject line
- .in -.5i
- .fi
- .RE
- .PP
- At the Article level the page header has the following format:
- .RS
- .nf
- .in +.5i
- .ta \w'<Date posted> <Newsgroup> 'u
- <Date posted> <Newsgroup> <Thread 1 of n>
- <Article Num> <Subject> <Num of responses in thread>
- <Author> <Organization>
- X
- <Article body>
- .ti -.5i
- i.e.,
- .ta \w'24 Jul 15:20:03 GMT 'u +\w'Bnews sources? 'u
- 24 Jul 15:20:03 GMT alt.sources Thread 1 of 2
- Article 452 Bnews sources? 3 responses
- iain@estevax.uucp Organization name
- X
- <Article boby>
- .in -.5i
- .fi
- .RE
- .SH "COMMON MOVING KEYS"
- This table shows the common keys/commands for moving at all three levels
- within Tin.
- .RS
- .nf
- .ta \w'Beginning of list/article 'u +\w'ansi/at386/vt100 'u
- X ansi/at386/vt100 Other Terminals
- Beginning of list/article \fBHome\fP \fB1\fP (\fB^R\fP or \fBg\fP at article level)
- End of list/article \fBEnd\fP \fB$\fP (also \fBG\fP at article level)
- Page Up \fBPgUp\fP \fB^U\fP or \fBb\fP
- Page Down \fBPgDn\fP \fB^D\fP or \fB<SPACE>\fP
- Line Up \fBUp arrow\fP \fBk\fP (not at article level)
- Line Down \fBDown arrow\fP \fBj\fP (not at article level)
- .fi
- .RE
- .SH "COMMON EDITING COMMANDS"
- An emacs style editing package allows the easy editing of input strings.
- An history list allows the easy re-use of previously entered strings.
- The following commands are available when editing a string:
- X
- .TP 10
- \fB^A,^E\fP
- move to beginnning or end of line, respectively.
- .TP
- \fB^F,^B\fP
- nondestructive move forward or back one location, respectively.
- .TP
- \fB^D\fP
- delete the character currently under the cursor, or send EOF if no
- characters in the buffer.
- .TP
- \fB^H,<DEL>\fP
- delete character left of the cursor.
- .TP
- \fB^K\fP
- delete from cursor to end of line.
- .TP
- \fB^P,^N\fP
- move through history, previous and next, respectively.
- .TP
- \fB^L,^R\fP
- redraw the current line.
- .TP
- \fB<CR>\fP
- places line on history list if nonblank, appends newline and returns
- to the caller.
- .TP
- \fB<ESC>\fP
- aborts the present editing operation.
- .SH "NEWSGROUP SELECTION COMMANDS"
- .TP 10
- \fB4\fP
- Select group 4.
- .TP
- \fB^K\fP
- Delete current group from \fI$HOME/.newsrc\fP file.
- .TP
- \fB^L\fP
- Redraw page.
- .TP
- \fB^R\fP
- Reset \fI$HOME/.newsrc\fP file.
- .TP
- \fB<CR>\fP
- Read current group.
- .TP
- \fB<TAB>\fP
- View next unread group.
- .TP
- \fBB\fP
- Mail a bug report or comment to the author. This is the best way of
- getting bugs fixed and features added/changed.
- .TP
- \fBc\fP
- Mark current group as all read and goto next group in group selection
- list.
- .TP
- \fBC\fP
- Mark current group as all read and goto next unread group in group
- selection list.
- .TP
- \fBg\fP
- Choose a new group by name. The position of the group within the group
- list will also be asked for. By entering '1' the new group will be the
- first group in the displayed list, by entering '8' the group will be
- the eighth group in the list etc. By entering '$' the group will be the
- last group displayed.
- .TP
- \fBh\fP
- help screen of newsgroup selection commands.
- .TP
- \fBH\fP
- help screen of context sensitive help about newsgroup selection level.
- .TP
- \fBI\fP
- Toggle inverse video.
- .TP
- \fBm\fP
- Move the current group within the group selection list.
- By entering '1' the group will become the first displayed group in
- the list, by entering '8' the eighth group in the list etc. By
- entering '$' the group will be the last group displayed.
- .TP
- \fBM\fP
- User configurable options menu (for more information see section Options Menu).
- .TP
- \fBq\fP
- Quit tin.
- .TP
- \fBs\fP
- Subscribe to current group.
- .TP
- \fBS\fP
- Subscribe to groups matching user specified pattern.
- .TP
- \fBu\fP
- Unsubscribe to current group.
- .TP
- \fBU\fP
- Unsubscribe to groups matching user specified pattern.
- .TP
- \fBv\fP
- Print tin version number.
- .TP
- \fBw\fP
- Post an article to current group.
- .TP
- \fBW\fP
- List articles posted by user. The date posted, the newsgroup and the
- subject are listed.
- .TP
- \fBy\fP
- The first time this command is called it will yank in all groups from
- \fI/usr/local/news/active\fP that are not in \fI$HOME/.newsrc\fP.
- After any groups have been subscribed/unsubscribed to, this command
- if pressed again will reread \fI$HOME/.newsrc\fP and display only
- subscribed groups.
- .TP
- \fBY\fP
- Reread group list from \fI$HOME/.newsrc\fP file.
- .TP
- \fBz\fP
- Mark all articles in the current group as unread.
- .TP
- \fBZ\fP
- Undelete previously deleted group from \fI$HOME/.newsrc\fP file.
- .TP
- \fB/\fP
- Group forward search.
- .TP
- \fB?\fP
- Group backward search.
- .SH "GROUP INDEX COMMANDS"
- .TP 10
- \fB4\fP
- Select article 4.
- .TP
- \fB^K\fP
- Kill current article (for more information read section Kill Article Menu).
- .TP
- \fB^L\fP
- Redraw page.
- .TP
- \fB<CR>\fP
- Read current article.
- .TP
- \fB<TAB>\fP
- View next unread article or group.
- .TP
- \fBa\fP
- Author forward search.
- .TP
- \fBA\fP
- Author backward search.
- .TP
- \fBB\fP
- Mail a bug report or comment to the author. This is the best way of
- getting bugs fixed and features added/changed.
- .TP
- \fBc\fP
- Mark all articles as read.
- .TP
- \fBC\fP
- Cancel current article. It must have been posted by the same user. The
- cancel message can be seen in the newsgroup 'control'.
- .TP
- \fBd\fP
- Toggle display to show just the subject or the subject and author.
- .TP
- \fBg\fP
- Choose a new group by name.
- .TP
- \fBh\fP
- help screen of group index commands.
- .TP
- \fBH\fP
- help screen of context sensitive help about group index level.
- .TP
- \fBI\fP
- Toggle inverse video.
- .TP
- \fBK\fP
- Mark article/thread as read and advance to next unread article/thread.
- .TP
- \fBl\fP
- List the author of each response in current thread and enter thread
- selection level.
- .TP
- \fBm\fP
- Mail current article / thread / articles matching pattern / tagged articles
- to someone.
- .TP
- \fBM\fP
- User configurable options menu (for more information see section Options Menu).
- .TP
- \fBn\fP
- Go to next group.
- .TP
- \fBN\fP
- Go to next unread article.
- .TP
- \fBo\fP
- Output current article / thread / articles matching pattern / tagged articles
- to printer.
- .TP
- \fBp\fP
- Go to previous group.
- .TP
- \fBP\fP
- Go to previous unread article.
- .TP
- \fBq\fP
- Quit tin.
- .TP
- \fBs\fP
- Save current article / thread / articles matching pattern / tagged
- articles to file / files / mailbox. To save to a mailbox enter '='
- or '=mailbox' when asked for filename to save to. To save in
- <newsgroup name>/<filename> format enter '+filename'. Environment
- variables are allowed within a filename (ie. $SOURCES/dir/filename).
- .TP
- \fBT\fP
- Tag current article for mailing ('m') / piping ('|') / printing ('o') / saving ('s').
- .TP
- \fBt\fP
- Return to group selection index.
- .TP
- \fBu\fP
- Toggle display to show all articles as unthreaded or threaded.
- .TP
- \fBU\fP
- Untag all articles that were tagged.
- .TP
- \fBv\fP
- Print tin version number.
- .TP
- \fBw\fP
- Post an article to current group.
- .TP
- \fBW\fP
- List articles posted by user. The date posted, the newsgroup and the
- subject are listed.
- .TP
- \fBz\fP
- Mark current article as unread.
- .TP
- \fBZ\fP
- Mark current thread as unread.
- .TP
- \fB/\fP
- Search forward for specified subject.
- .TP
- \fB?\fP
- Search backward for specified subject.
- .TP
- \fB-\fP
- Show last message.
- .TP
- \fB|\fP
- Pipe current article / thread / articles matching pattern / tagged articles
- into command.
- .SH "THREAD LISTING COMMANDS"
- .TP 10
- \fB4\fP
- Select article 4 within thread.
- .TP
- \fB^L\fP
- Redraw page.
- .TP
- \fB<CR>\fP
- Read current article within thread.
- .TP
- \fB<TAB>\fP
- View next unread article within thread.
- .TP
- \fBh\fP
- help screen of thread listing commands.
- .TP
- \fBI\fP
- Toggle inverse video.
- .TP
- \fBK\fP
- Mark thread as read and return to group index level.
- .TP
- \fBq\fP
- Quit thread listing level.
- .TP
- \fBt\fP
- Return to group index level.
- .TP
- \fBv\fP
- Print tin version number.
- .TP
- \fBz\fP
- Mark current article in thread as unread.
- .TP
- \fBZ\fP
- Mark all articles in thread as unread.
- .SH "ARTICLE VIEWER COMMANDS"
- .TP 10
- \fB0\fP
- Read the base article in this thread.
- .TP
- \fB4\fP
- Read response 4 in this thread.
- .TP
- \fB^H\fP
- Show all of the articles mail header.
- .TP
- \fB^K\fP
- Kill current article (for more information read section Kill Article Menu).
- .TP
- \fB^L\fP
- Redraw page.
- .TP
- \fB<CR>\fP
- Goto next base article.
- .TP
- \fB<TAB>\fP
- Goto next unread article.
- .TP
- \fBa\fP
- Author forward search.
- .TP
- \fBA\fP
- Author backward search.
- .TP
- \fBB\fP
- Mail a bug report or comment to the author. This is the best way of
- getting bugs fixed and features added/changed.
- .TP
- \fBc\fP
- Mark all articles as read.
- .TP
- \fBd\fP
- Toggle rot-13 decoding for this article.
- .TP
- \fBf\fP
- Post a followup to current article.
- .TP
- \fBF\fP
- Post a followup with a copy of the current article included.
- .TP
- \fBh\fP
- Help screen of article page commands.
- .TP
- \fBH\fP
- Help screen of context sensitive help about article page level.
- .TP
- \fBi\fP
- Return to index page.
- .TP
- \fBI\fP
- Toggle inverse video.
- .TP
- \fBk\fP
- Mark article as read and advance to next unread article.
- .TP
- \fBK\fP
- Mark thread as read and advance to next unread thread.
- .TP
- \fBm\fP
- Mail current article / thread / articles matching pattern / tagged articles
- to someone.
- .TP
- \fBM\fP
- User configurable options menu (for more information see section Options Menu).
- .TP
- \fBn\fP
- Go to the next article.
- .TP
- \fBN\fP
- Go to the next unread article.
- .TP
- \fBo\fP
- Output current article / thread / articles matching pattern / tagged articles
- to printer.
- .TP
- \fBo\fP
- Output article/thread/tagged articles to printer.
- .TP
- \fBp\fP
- Go to the previous article.
- .TP
- \fBP\fP
- Go to the previous unread article.
- .TP
- \fBq\fP
- Quit tin.
- .TP
- \fBr\fP
- Reply through mail to author.
- .TP
- \fBR\fP
- Reply through mail to author with a copy of the current article included.
- .TP
- \fBs\fP
- Save current article / thread / articles matching pattern / tagged
- articles to file / files / mailbox. To save to a mailbox enter '='
- or '=mailbox' when asked for filename to save to. To save in
- <newsgroup name>/<filename> format enter '+filename'. Environment
- variables are allowed within a filename (ie. $SOURCES/dir/filename).
- .TP
- \fBt\fP
- Return to group selection index.
- .TP
- \fBv\fP
- Print tin version number.
- .TP
- \fBw\fP
- Post an article to current group.
- .TP
- \fBW\fP
- List articles posted by user. The date posted, the newsgroup and the
- subject are listed.
- .TP
- \fBz\fP
- Mark article as unread.
- .TP
- \fB/\fP
- Article forward search.
- .TP
- \fB?\fP
- Article backward search
- .TP
- \fB|\fP
- Pipe current article / thread / articles matching pattern / tagged articles
- into command.
- .TP
- \fB<\fP
- Goto the first article in the current thread.
- .TP
- \fB>\fP
- Goto the last article in the current thread.
- .SH "OPTIONS MENU"
- This menu is accessed by pressing 'M' at all levels. It allows the user
- to customize the behaviour of tin. The options are saved to the file
- \fI$HOME/.tin/tinrc\fP. Use <SPACE> to toggle the required option and
- <CR> to set.
- .TP 4
- \fBAuto save\fP
- Automatically save articles/threads by Archive-name: line in article
- header. This is useful to set ON in conjunction with 'Save separate'.
- .TP
- \fBSave separate\fP
- Save articles/threads to separate files. Set ON if saving source code.
- Set OFF if saving a conversational thread.
- .TP
- \fBMark saved read\fP
- This allows saved articles/threads to be automatically marked as
- having been read.
- .TP
- \fBKill articles\fP
- This allows the user to kill articles that match entries in the kill
- file \fI$HOME/.tin/kill\fP.
- .TP
- \fBDraw arrow\fP
- Allows groups/articles to be selected by an arrow '->' if set ON or
- by an highlighted bar if set OFF.
- .TP
- \fBPrint header\fP
- This allows the complete mail header or only the Siubject: and From:
- fields to be output when printing articles.
- .TP
- \fBGoto 1st unread\fP
- This allows the cursor to be placed at the first / last unread article
- upon entering a newsgroup with unread news.
- .TP
- \fBScroll full page\fP
- If set ON scrolling of groups/articles will be a full page at a time,
- otherwise half a page at a time.
- .TP
- \fBCatchup on quit\fP
- If set ON the user is asked when quitting if all groups read during the
- current session should be marked read.
- .TP
- \fBThread articles\fP
- If set ON articles will be threaded in all groups (default), otherwise
- articles will be shown unthreaded. If set ON but certain user specified
- groups are in \fI$HOME/.tin/unthread\fP, the specified groups will be
- unthreaded and the rest will be threaded.
- .TP
- \fBShow only unread\fP
- If set ON show only new/unread articles, otherwise show all articles.
- .TP
- \fBShow Author\fP
- If set 'None' only the Subject: line will be displayed. If set 'Addr'
- Subject: line & the address part of the From: line are displayed. If
- set 'Name' Subject: line & the authors full name part of the From:
- line are displayed. If set 'Both' Subject: line & all of the From: line
- are displayed.
- .TP
- \fBProcess type\fP
- This specifies the default type of post processing to perform on saved
- articles. The following types of processing are allowed:
- .in +.5i
- .ti -\w'\(em'u
- \(emnone.
- .ti -\w'\(em'u
- \(emunpacking of multi-part shell archives.
- .ti -\w'\(em'u
- \(emunpacking of multi-part uuencoded files.
- .ti -\w'\(em'u
- \(emunpacking of multi-part uuencoded files that produce a *.zoo archive
- whose contents is listed.
- .ti -\w'\(em'u
- \(emunpacking of multi-part uuencoded files that produce a *.zoo archive
- whose contents is extracted.
- .in -.5i
- .TP
- \fBSort articles by\fP
- This specifies how articles should be sorted. The following sort
- types are allowed:
- .in +.5i
- .ti -\w'\(em'u
- \(emdon't sort articles (default).
- .ti -\w'\(em'u
- \(emsort articles by Subject: field (ascending & descending).
- .ti -\w'\(em'u
- \(emsort articles by From: field (ascending & descending).
- .ti -\w'\(em'u
- \(emsort articles by Date: field (ascending & descending).
- .in -.5i
- .TP
- \fBSave directory\fP
- The directory where articles/threads are to be saved. Default is
- \fI$HOME/News\fP.
- .TP
- \fBMail directory\fP
- The directory where articles/threads are to be saved in mailbox format.
- This feature is mainly for use with the Elm mail program. It allows
- the user to save articles/threads/groups simply by giving '=' as
- the filename to save to.
- .TP
- \fBPrinter\fP
- The printer program with options that is to be used to print
- articles. Default is lpr for BSD machines and lp for SysV machines.
- .SH "KILL ARTICLE MENU"
- This menu is accessed by pressing '^K' at the group and page levels. It
- allows the user to kill an article that matches the current Subject:
- line, From: line or a string entered by the user. The user entered string
- can be applied to the Subject: or From: lines of an article. The kill
- description can be limited to the current newsgroup or it can apply to all newsgroups.
- Once entered the user can abort the command and not save the kill
- description, edit the kill file or save the kill description.
- .PP
- On starting tin the users killfile \fI$HOME/.tin/kill\fP is read and
- on entering a newsgroup any kill descriptions are applied. Articles
- that match a kill description are marked killed and are not displayed.
- SHAR_EOF
- true || echo 'restore of tin.1 failed'
- fi
- echo 'End of tin1.1 part 1'
- echo 'File tin.1 is continued in part 2'
- echo 2 > _shar_seq_.tmp
- exit 0
-
- --
- NAME Iain Lea
- EMAIL iain%estevax.uucp@unido.Informatik.Uni-Dortmund.DE
- SNAIL Bruecken Strasse 12, 8500 Nuernberg 90, Germany
- PHONE +49-911-331963 (home) +49-911-3089-407 (work)
- --
- Dr. med. dipl.-math Dieter Becker Tel.: (0 / +49) 6841 - 16 3046
- Medizinische Universitaets- und Poliklinik Fax.: (0 / +49) 6841 - 16 3369
- Innere Medizin III
- D - 6650 Homburg / Saar Email: becker@med-in.uni-sb.de
- exit 0 # Just in case...
-