home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / misc / volume28 / tin / part01 next >
Text File  |  1992-02-23  |  52KB  |  1,762 lines

  1. Newsgroups: comp.sources.misc
  2. From: iain%estevax.uucp@unido.Informatik.Uni-Dortmund.DE
  3. Subject:  v28i045:  tin - threaded full screen newsreader v1.1, Part01/11
  4. Message-ID: <csm-v28i045=tin.222508@sparky.IMD.Sterling.COM>
  5. X-Md4-Signature: 225cd7cbbefa40450f3032ed5ebde5ac
  6. Date: Tue, 18 Feb 1992 04:26:55 GMT
  7. Approved: kent@sparky.imd.sterling.com
  8.  
  9. Submitted-by: iain%estevax.uucp@unido.Informatik.Uni-Dortmund.DE
  10. Posting-number: Volume 28, Issue 45
  11. Archive-name: tin/part01
  12. Environment: BSD, SCO, ISC, SUNOS, SYSVR3, SYSVR4, ULTRIX, XENIX
  13. Supersedes: tin: Volume 23, Issue 15-23
  14.  
  15. This is version 1.1 PL0 (patchlevel 0) of the tin newsreader.
  16.  
  17. -  Based more on Notes and tass than rn type newreaders.
  18.  
  19. -  Full screen, easy to use with on-line help at all levels.
  20.  
  21. -  Reads news locally (ie. /usr/spool/news) and via NNTP.
  22.  
  23. -  Threads on Subject: and/or Archive-name: mail headers.
  24.  
  25. -  Four different operating levels:
  26.    o  Group selection level
  27.    o  Thread selection level
  28.    o  Article selection level
  29.    o  Article viewer
  30.  
  31. -  Same interface to mail, pipe, print and save articles.
  32.  
  33. -  Batch mode to mail/save news when user is on holiday.
  34.  
  35. Enjoy
  36.     Iain.
  37.  
  38. -- Cut here --
  39. #!/bin/sh
  40. # This is tin1.1, a shell archive (shar 3.47)
  41. # made 02/10/1992 06:21 UTC by iain%estevax.uucp@unido.Informatik.Uni-Dortmund.DE
  42. # Source directory /var/home/lea/.src/tin
  43. #
  44. # existing files will NOT be overwritten unless -c is specified
  45. #
  46. # This is part 1 of a multipart archive                                    
  47. # do not concatenate these parts, unpack them in order with /bin/sh        
  48. #
  49. # This shar contains:
  50. # length  mode       name
  51. # ------ ---------- ------------------------------------------
  52. #   9324 -rw------- Makefile
  53. #    832 -rw------- MANIFEST
  54. #   2483 -rw------- README
  55. #   6149 -rw------- CHANGES
  56. #   2455 -rw------- TODO
  57. #   3693 -rw------- INSTALL
  58. #  31684 -rw------- tin.1
  59. #   2247 -rw------- wildmat.3
  60. #  41067 -rw------- tin.nrf
  61. #  23976 -rw------- art.c
  62. #   7108 -rw------- curses.c
  63. #   3249 -rw------- debug.c
  64. #  12822 -rw------- feed.c
  65. #  11498 -rw------- getline.c
  66. #  20637 -rw------- group.c
  67. #   2466 -rw------- hashstr.c
  68. #   5206 -rw------- help.c
  69. #   9634 -rw------- init.c
  70. #  11196 -rw------- kill.c
  71. #  20471 -rw------- lang.c
  72. #  11249 -rw------- main.c
  73. #   6571 -rw------- memory.c
  74. #  19128 -rw------- misc.c
  75. #  19837 -rw------- newsrc.c
  76. #   7366 -rw------- open.c
  77. #  23335 -rw------- page.c
  78. #  19458 -rw------- post.c
  79. #   3748 -rw------- prompt.c
  80. #  22451 -rw------- rcfile.c
  81. #  24939 -rw------- save.c
  82. #   2661 -rw------- screen.c
  83. #   7006 -rw------- search.c
  84. #  19773 -rw------- select.c
  85. #  10822 -rw------- signal.c
  86. #  14120 -rw------- thread.c
  87. #   4749 -rw------- wildmat.c
  88. #   8937 -rw------- tin.h
  89. #  14178 -rw------- extern.h
  90. #   3669 -rw------- nntp.h
  91. #  23136 -rw------- proto.h
  92. #    548 -rw------- patchlev.h
  93. #
  94. if test -r _shar_seq_.tmp; then
  95.     echo 'Must unpack archives in sequence!'
  96.     echo Please unpack part `cat _shar_seq_.tmp` next
  97.     exit 1
  98. fi
  99. # ============= Makefile ==============
  100. if test -f 'Makefile' -a X"$1" != X"-c"; then
  101.     echo 'x - skipping Makefile (File already exists)'
  102.     rm -f _shar_wnt_.tmp
  103. else
  104. > _shar_wnt_.tmp
  105. echo 'x - extracting Makefile (Text)'
  106. sed 's/^X//' << 'SHAR_EOF' > 'Makefile' &&
  107. # Makefile for tin - for tin compiler flag options please read INSTALL.
  108. X
  109. EXE    = tin
  110. BINDIR    = /usr/local/bin
  111. MANDIR    = /usr/man/man1
  112. X
  113. STRIP    = strip
  114. ROFF    = + drf -F Helvetica -man3 
  115. PRINT    = -Pps0
  116. BASE_VER= ../110
  117. PATCH_VER = 110
  118. MAIL_ADDR = iain%estevax.uucp@unido.Informatik.Uni-Dortmund.DE
  119. X
  120. HFILES    = tin.h extern.h nntp.h proto.h patchlev.h
  121. X
  122. CFILES    = art.c curses.c debug.c feed.c getline.c group.c hashstr.c \
  123. X        help.c init.c kill.c lang.c main.c memory.c misc.c newsrc.c \
  124. X        open.c page.c post.c prompt.c rcfile.c save.c screen.c search.c \
  125. X        select.c signal.c thread.c wildmat.c
  126. X
  127. OFILES    = art.o curses.o debug.o feed.o getline.o group.o hashstr.o \
  128. X        help.o init.o kill.o lang.o main.o memory.o misc.o newsrc.o \
  129. X        open.o page.o post.o prompt.o rcfile.o save.o screen.o search.o \
  130. X        select.o signal.o thread.o wildmat.o          
  131. X
  132. SUPPORT = Makefile MANIFEST README CHANGES TODO INSTALL *.[13] $(EXE).nrf
  133. X
  134. LINTFLAGS=-a -c -h -n -x 
  135. X
  136. CC=cc
  137. X
  138. .c.o:
  139. X    $(CC) $(CFLAGS) $*.c
  140. X
  141. all: 
  142. X    @echo "There is no default. Specify one of the following targets."
  143. X    @echo "    make bsd       (BSD/Dec/Next/Sun)"
  144. X    @echo "    make sysv      (SysV)"
  145. X    @echo "    make sysvr4    (SysV R4)"
  146. X    @echo "    make sco       (SCO Unix)"
  147. X    @echo "    make aix       (IBM AIX)"
  148. X    @echo "    make xenix     (Xenix 386)"
  149. X    @echo "    make sinix     (SNI SysV)"
  150. X    @echo "    make tower     (NCR Tower)"
  151. X    @echo "    make minix     (Minix 386)"
  152. X    @echo "    make dgux      (DG Aviion)"
  153. X
  154. # For Berkeley systems:
  155. #             NNTPLIB=clientlib.o \
  156. #
  157. bsd:
  158. X    @echo "Compiling for BSD/Ultrix..."
  159. X    @$(MAKE) CFLAGS='-c -O -DBSD -DLIBDIR=\"/usr/lib/news\" -DSPOOLDIR=\"/usr/spool/news\"' \
  160. X             LIBS="-lcurses -ltermcap" \
  161. X             EXE=tin linkit
  162. X
  163. # For System V:
  164. #             NNTPLIB=clientlib.o \
  165. #             NETLIBS="-lnet -lnsl_s" \
  166. #
  167. sysv:
  168. X    @echo "Compiling for System V..."
  169. X    @$(MAKE) CFLAGS='-c -O -DAUTO_RESIZE -DLIBDIR=\"/usr/lib/news\" -DSPOOLDIR=\"/usr/spool/news\"' \
  170. X             LIBS="-lcurses -ltermcap" \
  171. X             EXE=tin linkit
  172. X
  173. # For IBM AIX:
  174. #             NNTPLIB=clientlib.o \
  175. #
  176. aix:
  177. X    @echo "Compiling for AIX..."
  178. X    @$(MAKE) CFLAGS='-c -O -DSYSV -DRS6000 -DREAD_CHAR_HACK -DUSE_LONG_FILENAMES -DAUTO_RESIZE -DLIBDIR=\"/usr/lib/news\" -DSPOOLDIR=\"/usr/spool/news\"' \
  179. X             LIBS="-lcurses -ltermcap" \
  180. X             EXE=tin linkit
  181. X
  182. # For System V Release 4:
  183. #             NNTPLIB=clientlib.o \
  184. #             NETLIBS="-lnsl -lsocket" \
  185. #
  186. sysvr4:
  187. X    @echo "Compiling for System V Release 4..."
  188. X    @$(MAKE) CFLAGS='-c -O -DPOSIX_JOB_CONTROL -DUSE_INVERSE_HACK -DAUTO_RESIZE -DLIBDIR=\"/usr/lib/news\" -DSPOOLDIR=\"/usr/spool/news\"' \
  189. X             LIBS="-lcurses -ltermcap -L/usr/ucblib -lucb" \
  190. X             EXE=tin linkit
  191. X
  192. # For SCO Unix:
  193. #             NNTPLIB=clientlib.o \
  194. #             NETLIBS="-lnsl_s -lsocket" \
  195. #
  196. sco:
  197. X    @echo "Compiling for SCO Unix..."
  198. X    @$(MAKE) CFLAGS='-c -O -UM_XENIX -DUSE_INVERSE_HACK -DAUTO_RESIZE -DLIBDIR="\"/usr/lib/news\"" -DSPOOLDIR="\"/usr/spool/news\""' \
  199. X             LIBS="-lcurses -lgen -lc_s" \
  200. X             EXE=tin linkit
  201. X
  202. # For Xenix 386:
  203. #             NNTPLIB=clientlib.o \
  204. #             NETLIBS="-lsocket" \
  205. #
  206. xenix:
  207. X    @echo "Compiling for Xenix 386..."
  208. X    @$(MAKE) CFLAGS='-c -Zi -DSYSV -DLIBDIR="\\"/usr/lib/news\\"" -DSPOOLDIR="\\"/usr/spool/news\\""' \
  209. X             LIBS="-lcurses -ltinfo -lx" \
  210. X             LFLAGS=-Zi EXE=tin linkit
  211. X
  212. # For SNI Sinix:
  213. #             NNTPLIB=clientlib.o \
  214. #             NETLIBS="-lsocket" \
  215. #
  216. sinix:
  217. X    @echo "Compiling for SNI Sinix..."
  218. X    @$(MAKE) CFLAGS='-c -O -DSINIX -DLOG_USER -DUSE_MKDIR -DAUTO_RESIZE -DLIBDIR=\\"/usr/lib/news\\" -DSPOOLDIR=\\"/usr2/spool/news\\"' \
  219. X             LIBS="-lcurses" \
  220. X             EXE=tin linkit
  221. X
  222. # For NCR Tower:
  223. #             NNTPLIB=clientlib.o \
  224. #             NETLIBS="-lnet -lnsl_s" \
  225. #
  226. tower:
  227. X    @echo "Compiling for NCR Tower..."
  228. X    @$(MAKE) CFLAGS='-c -O -DSYSV -DNCR -DISTRING -DLIBDIR=\"/usr/lib/news\" -DSPOOLDIR=\"/usr/spool/news\"' \
  229. X             LIBS="-lcurses -ltermcap" \
  230. X             EXE=tin linkit
  231. X
  232. # For Minix 386:
  233. #
  234. minix:
  235. X    @echo "Compiling for Minix 386..."
  236. X    @$(MAKE) CFLAGS='-c -O -DMINIX -D_POSIX_SOURCE -DLIBDIR=\"/usr/lib/news\" -DSPOOLDIR=\"/usr/spool/news\"' \
  237. X             LIBS="-lcurses" \
  238. X             EXE=tin linkit
  239. X    chmem +131072 $(EXE) 
  240. X
  241. # For Data General Aviion
  242. #             NNTPLIB=clientlib.o \
  243. #
  244. dgux:
  245. X    @echo "Compiling for DG Aviion..."
  246. X    @$(MAKE) CFLAGS='-c -O -DUSE_LONG_FILENAMES -DPOSIX_JOB_CONTROL -DUSE_INVERSE_HACK -DAUTO_RESIZE -DLIBDIR=\"/usr/lib/news\" -DSPOOLDIR=\"/usr/spool/news\"' \
  247. X             LIBS="-lcurses" \
  248. X             EXE=tin linkit
  249. X
  250. # THE FOLLOWING ARE SITE SPECIFIC - IGNORE
  251. norisc:
  252. X    @echo "Compiling for NORISC with NNTP..."
  253. X    @$(MAKE) CFLAGS='-c -O -DBSD -DDEBUG -DLOG_USER -DUSE_NNTP -DAUTO_RESIZE -DLIBDIR=\"/news/lib\" -DSPOOLDIR=\"/news/spool\"' \
  254. X            NNTPLIB=/news/nntp/clientlib.o \
  255. X            LIBS="-lcurses -ltermcap" \
  256. X            EXE=tin linkit
  257. X
  258. sony01:
  259. X    @echo "Compiling for SONY01..."
  260. X    @$(MAKE) CFLAGS='-c -g -DBSD -DDEBUG -DLOG_USER -DLIBDIR=\"/a/NEWS/lib\" -DSPOOLDIR=\"/a/NEWS/news\"' \
  261. X            LIBS="-lcurses -ltermcap" \
  262. X            EXE=tin linkit
  263. X
  264. kommu:
  265. X    @echo "Compiling for KOMMU with NNTP..."
  266. X    @$(MAKE) CFLAGS='-c -O -UM_XENIX -DDEBUG -DUSE_INVERSE_HACK -DAUTO_RESIZE -DUSE_NNTP -DLIBDIR="\\"/usr/lib/news\\"" -DSPOOLDIR="\\"/usr/spool/news\\""' \
  267. X             NNTPLIB=./clientlib.o \
  268. X             NETLIBS="-lnsl_s -lsocket" \
  269. X             LIBS="-lcurses -lgen -lc_s" \
  270. X             EXE=tin linkit
  271. X
  272. # For Xenix 386:
  273. home:
  274. X    @echo "Compiling for (HOME) Xenix 386..."
  275. X    @$(MAKE) CFLAGS='-c -W2 -Zi -DSYSV -DDEBUG -DLOG_USER -DLIBDIR="\\"/usr/lib/news\\"" -DSPOOLDIR="\\"/usr/spool/news\\""' \
  276. X             LIBS="-lcurses -ltinfo -lx" \
  277. X             LFLAGS=-Zi EXE=tin linkit
  278. X
  279. linkit: $(OFILES)
  280. X    @echo "Linking $(EXE)..."
  281. X    $(CC) $(LFLAGS) -o $(EXE) $(OFILES) $(NNTPLIB) $(NETLIBS) $(LIBS) 
  282. X    @ls -l $(EXE)
  283. X
  284. install:
  285. X    @echo "Installing $(EXE)..."
  286. X    @$(STRIP) $(EXE)
  287. X    @-mv $(EXE) $(BINDIR)
  288. X    @-rm $(BINDIR)/r$(EXE)
  289. X    @ln $(BINDIR)/$(EXE) $(BINDIR)/r$(EXE)
  290. X    @chmod 755 $(BINDIR)/$(EXE) $(BINDIR)/r$(EXE)  
  291. X    @ls -l $(BINDIR)/$(EXE) $(BINDIR)/r$(EXE)
  292. X    @cp $(EXE).1 $(MANDIR)
  293. X
  294. install_setuid:
  295. X    @echo "Installing SETUID $(EXE)..."
  296. X    @$(STRIP) $(EXE)
  297. X    @-mv $(EXE) $(BINDIR)
  298. X    @chown news $(BINDIR)/$(EXE) 
  299. X    @-rm $(BINDIR)/r$(EXE)
  300. X    @ln $(BINDIR)/$(EXE) $(BINDIR)/r$(EXE)
  301. X    @su news -c "chmod 4755 $(BINDIR)/$(EXE)"
  302. X    @su news -c "chmod 4755 $(BINDIR)/r$(EXE)"
  303. X    @ls -l $(BINDIR)/$(EXE) $(BINDIR)/r$(EXE)
  304. X    @cp $(EXE).1 $(MANDIR)
  305. X
  306. proto:
  307. X    @echo "Generating function prototypes for proto.h..."
  308. #    @cextract -DSIGTSTP -DSIGWINCH $(CFILES) > PROTO.H
  309. #    @-mv PROTO.H proto.h
  310. X    @echo "#if __STDC__" > PROTO.H
  311. X    @echo " " >> PROTO.H
  312. X    @cproto -e $(CFILES) >> PROTO.H
  313. X    @echo " " >> PROTO.H
  314. X    @echo "#else" >> PROTO.H
  315. X    @echo " " >> PROTO.H
  316. X    @cproto -e -f1 $(CFILES) >> PROTO.H
  317. X    @echo " " >> PROTO.H
  318. X    @echo "#endif" >> PROTO.H
  319. X    @-mv PROTO.H proto.h
  320. X
  321. nroff:
  322. X    @echo "Creating nroff man page..."
  323. X    @nroff -man $(EXE).1 > $(EXE).nrf
  324. X
  325. manifest:
  326. X    @echo "Creating MANIFEST..."
  327. X    @echo "MANIFEST for tin newsreader (`date`)" > MANIFEST
  328. X    @echo "----------------------------------------------------------" >> MANIFEST
  329. X    @wc -c $(SUPPORT) $(HFILES) $(CFILES) >> MANIFEST
  330. X
  331. shar:
  332. X    @echo "Generating shell archive..."
  333. X    @make nroff
  334. X    @make manifest
  335. X    @shar -a -n $(EXE)1.1 -s $(MAIL_ADDR) -L50 -o ../$(EXE).shar $(SUPPORT) $(CFILES) $(HFILES)
  336. X
  337. uuencode:
  338. X    @make tar
  339. X    @echo "Uuencoding $(EXE).tar.Z..."
  340. X    @uuencode $(EXE).tar.Z $(EXE).tar.Z > $(EXE).tar.Z.uue
  341. X    @ls -l $(EXE).tar.Z.uue
  342. diff:
  343. X    @echo "Generating diffs against $(BASE_VER)..."
  344. X    @make nroff
  345. X    @make manifest
  346. X    @-mv -f $(EXE).diff $(EXE).diff-
  347. X    @-diff -rcs $(BASE_VER) . > $(EXE).diff
  348. X    @ls -l $(EXE).diff
  349. X
  350. patch:
  351. X    @make diff
  352. X    @echo "Generating patch against $(BASE_VER)..."
  353. X    @-mv $(EXE).diff $(EXE).patch$(PATCH_VER)
  354. X    @shar -a -n $(EXE) -s $(MAIL_ADDR) -L50 -o patch$(PATCH_VER).shar $(EXE).patch$(PATCH_VER)
  355. X    @ls -l patch$(PATCH_VER).shar*
  356. X
  357. tar:
  358. X    @echo "Generating compressed tar file..."
  359. X    @-rm $(EXE).tar $(EXE).tar.Z > /dev/null 2>&1
  360. X    @tar cvf $(EXE).tar $(SUPPORT) $(CFILES) $(HFILES) 
  361. X    @echo "Compressing $(EXE).tar..."
  362. X    @compress $(EXE).tar 
  363. X    @ls -l $(EXE).tar.Z
  364. X
  365. zoo:
  366. X    @echo "Generating zoo archive file..."
  367. X    @-rm $(EXE).zoo > /dev/null 2>&1
  368. X    @zoo ah $(EXE).zoo  $(SUPPORT) $(CFILES) $(HFILES)
  369. X    @ls -l $(EXE).zoo
  370. X
  371. tags:
  372. X    @echo "Generating tags (results in ./tags)..."
  373. X    @-rm tags
  374. X    @ctags $(HFILES) $(CFILES) 
  375. X
  376. lint:
  377. X    @echo "Linting source (results in ./LINT)..."
  378. X    @lint $(LINTFLAGS) -DUSE_NNTP $(CFILES) > LINT
  379. X
  380. clean:
  381. X    @echo "Cleaning..."
  382. X    @-'rm' -rf $(OFILES) '#*' $(EXE).diff*
  383. X
  384. clobber:
  385. X    @echo "Clobbering..."
  386. X    @-'rm' -rf $(OFILES) '#*' tags $(EXE) $(EXE).diff* patch.shar*
  387. X
  388. cflow:
  389. X    @echo "Creating cflow for $(EXE)..."
  390. X    @cflow $(CFILES) > cflow.$(EXE) &
  391. X
  392. man:
  393. X    @echo "Printing $(EXE) manual to $(PRINT)..."
  394. X    @$(ROFF) $(PRINT) $(EXE).1
  395. X
  396. print:
  397. X    @for FILE in $(HFILES) $(CFILES) $(SUPPORT); do \
  398. X    echo "Printing $$FILE to $(PRINT)..."; \
  399. X    expand -4 $$FILE | enscript -2r -h -G $(PRINT) -b $$FILE; \
  400. X    done
  401. X
  402. art.o:        art.c $(HFILES)
  403. curses.o:    curses.c $(HFILES)
  404. debug.o:    debug.c $(HFILES)
  405. feed.o:        feed.c $(HFILES)
  406. getline.o:    getline.c $(HFILES)
  407. group.o:    group.c $(HFILES)
  408. hashstr.o:    hashstr.c $(HFILES)
  409. help.o:        help.c $(HFILES)
  410. init.o:        kill.c $(HFILES)
  411. kill.o:        kill.c $(HFILES)
  412. lang.o:        lang.c $(HFILES)
  413. main.o:        main.c $(HFILES)
  414. memory.o:    memory.c $(HFILES)
  415. misc.o:        misc.c $(HFILES)
  416. newsrc.o:    newsrc.c $(HFILES)
  417. open.o:        open.c nntp.h
  418. page.o:        page.c $(HFILES)
  419. post.o:        post.c $(HFILES)
  420. prompt.o:    prompt.c $(HFILES)
  421. rcfile.o:    rcfile.c $(HFILES)
  422. save.o:        save.c $(HFILES)
  423. screen.o:    screen.c $(HFILES)
  424. search.o:    search.c $(HFILES)
  425. select.o:    select.c $(HFILES)
  426. signal.o:    signal.c $(HFILES)
  427. thread.o:    thread.c $(HFILES)
  428. wildmat.o:    wildmat.c
  429. SHAR_EOF
  430. chmod 0600 Makefile ||
  431. echo 'restore of Makefile failed'
  432. Wc_c="`wc -c < 'Makefile'`"
  433. test 9324 -eq "$Wc_c" ||
  434.     echo 'Makefile: original size 9324, current size' "$Wc_c"
  435. rm -f _shar_wnt_.tmp
  436. fi
  437. # ============= MANIFEST ==============
  438. if test -f 'MANIFEST' -a X"$1" != X"-c"; then
  439.     echo 'x - skipping MANIFEST (File already exists)'
  440.     rm -f _shar_wnt_.tmp
  441. else
  442. > _shar_wnt_.tmp
  443. echo 'x - extracting MANIFEST (Text)'
  444. sed 's/^X//' << 'SHAR_EOF' > 'MANIFEST' &&
  445. MANIFEST for tin newsreader (Mon Feb 10 07:21:06 MET 1992)
  446. ----------------------------------------------------------
  447. X    9324 Makefile
  448. X     118 MANIFEST
  449. X    2483 README
  450. X    6149 CHANGES
  451. X    2455 TODO
  452. X    3693 INSTALL
  453. X   31684 tin.1
  454. X    2247 wildmat.3
  455. X   41067 tin.nrf
  456. X    8937 tin.h
  457. X   14178 extern.h
  458. X    3669 nntp.h
  459. X   23136 proto.h
  460. X     548 patchlev.h
  461. X   23976 art.c
  462. X    7108 curses.c
  463. X    3249 debug.c
  464. X   12822 feed.c
  465. X   11498 getline.c
  466. X   20637 group.c
  467. X    2466 hashstr.c
  468. X    5206 help.c
  469. X    9634 init.c
  470. X   11196 kill.c
  471. X   20471 lang.c
  472. X   11249 main.c
  473. X    6571 memory.c
  474. X   19128 misc.c
  475. X   19837 newsrc.c
  476. X    7366 open.c
  477. X   23335 page.c
  478. X   19458 post.c
  479. X    3748 prompt.c
  480. X   22451 rcfile.c
  481. X   24939 save.c
  482. X    2661 screen.c
  483. X    7006 search.c
  484. X   19773 select.c
  485. X   10822 signal.c
  486. X   14120 thread.c
  487. X    4749 wildmat.c
  488. X  495164 total
  489. SHAR_EOF
  490. chmod 0600 MANIFEST ||
  491. echo 'restore of MANIFEST failed'
  492. Wc_c="`wc -c < 'MANIFEST'`"
  493. test 832 -eq "$Wc_c" ||
  494.     echo 'MANIFEST: original size 832, current size' "$Wc_c"
  495. rm -f _shar_wnt_.tmp
  496. fi
  497. # ============= README ==============
  498. if test -f 'README' -a X"$1" != X"-c"; then
  499.     echo 'x - skipping README (File already exists)'
  500.     rm -f _shar_wnt_.tmp
  501. else
  502. > _shar_wnt_.tmp
  503. echo 'x - extracting README (Text)'
  504. sed 's/^X//' << 'SHAR_EOF' > 'README' &&
  505. This is version 1.1 PL0 (patchlevel 0) of the tin newsreader.
  506. X
  507. -  Based more on Notes and tass than rn type newreaders.
  508. X
  509. -  Full screen, easy to use with on-line help at all levels.
  510. X
  511. -  Reads news locally (ie. /usr/spool/news) and via NNTP.
  512. X
  513. -  Threads on Subject: and/or Archive-name: mail headers.
  514. X
  515. -  Four different operating levels:
  516. X   o  Group selection level
  517. X   o  Thread selection level
  518. X   o  Article selection level
  519. X   o  Article viewer
  520. X
  521. -  Same interface to mail, pipe, print and save articles.
  522. X
  523. -  Batch mode to mail/save news when user is on holiday.
  524. X
  525. NOTE: PLEASE READ THE MAN PAGE tin.1 BEFORE SENDING A BUG REPORT/COMMENT.
  526. X
  527. Major improvements over tin 1.0 PL7 are the following:
  528. X
  529. o  added 'l' command to manipulate threads easier.
  530. X
  531. o  added 'd' command to toggle display of subject or subject and author.
  532. X
  533. o  added 'u' command to toggle display of articles unthreaded/threaded.
  534. X
  535. o  added -H option and also brief intro when started for the first time.
  536. X
  537. o  added emacs style line editing with scrollable editing area.
  538. o  added auto unshar if group is *sources* or uudecode if *binaries*.
  539. X
  540. o  added support for DG Aviion.
  541. X
  542. o  fixed -M and -S options so that screen is correctly reset.
  543. X
  544. o  fixed 'F' command that was using the wrong reply address.
  545. X
  546. o  fixed unlink of ~/.article so that error message is not displayed.
  547. X    
  548. o  fixed bug that caused signal 11 when pressing 'M' command with no 
  549. X   articles in the group.
  550. X
  551. For more bug fixes, changes & additions read the CHANGES & TODO files.
  552. X
  553. For compilation and installation information read the INSTALL file.
  554. X
  555. I wish to thank all the people that sent me bug fixes and comments for
  556. tin v1.0. I still want to hear of any bug reports and comments.
  557. X
  558. I am still off the net, but am contactable at the following address:
  559. X
  560. X    Iain J. Lea
  561. X    BrueckenStr. 12
  562. X    8500 Nuernberg 90
  563. X    Germany.
  564. X    Phone. +49-911-331963   (home)
  565. X    Phone. +49-911-3089-407 (work)
  566. X    Email. iain%estevax.uucp@unido.Informatik.Uni-Dortmund.DE
  567. X           iain@estevax.uucp (only reading mailbox weekly)
  568. X
  569. Due to above problem if anyone wants the latest released version or
  570. an early version of the next patchlevel I am willing to send a copy
  571. in unix compressed tar or msdos format 5.25 or 3.5 inch disks.
  572. I will make a small handling charge for this service as listed below:
  573. X    Germany  15 Deustche Marks
  574. X    England   5 Pounds Sterling
  575. X    USA      10 Dollars 
  576. Please send money/cheque with self-addressed envelope to above addess.
  577. X
  578. Enjoy
  579. X    Iain.
  580. SHAR_EOF
  581. chmod 0600 README ||
  582. echo 'restore of README failed'
  583. Wc_c="`wc -c < 'README'`"
  584. test 2483 -eq "$Wc_c" ||
  585.     echo 'README: original size 2483, current size' "$Wc_c"
  586. rm -f _shar_wnt_.tmp
  587. fi
  588. # ============= CHANGES ==============
  589. if test -f 'CHANGES' -a X"$1" != X"-c"; then
  590.     echo 'x - skipping CHANGES (File already exists)'
  591.     rm -f _shar_wnt_.tmp
  592. else
  593. > _shar_wnt_.tmp
  594. echo 'x - extracting CHANGES (Text)'
  595. sed 's/^X//' << 'SHAR_EOF' > 'CHANGES' &&
  596. CHANGES tin v1.0 PL7 -> tin 1.1 PL0
  597. -----------------------------------
  598. X
  599. 1)  uunet!atlantis!bugs (Dan Berry) 
  600. X    BUG. Toggling inverse video with 'I' command does not switch on
  601. X         highlighted bar when inverse is toggled on.
  602. X    FIX. misc.c - switches highlighted bar on if USE_INVERSE_HACK is
  603. X         not defined.
  604. X
  605. 2)  iain@estevax.uucp (Iain Lea)
  606. X    ADD. thread.c - added 'l' command to manipulate threads easier.
  607. X
  608. 3)  becker@med-in.uni-sb.de (Dieter Becker)
  609. X    BUG. define INDEWSDIR in tin.h should be INEWSDIR.
  610. X    FIX. changed to INEWSDIR.
  611. X
  612. 4)  john@iti.org (John Sauter)
  613. X    BUG. The ! command only allows 80 characters minus the length of the
  614. X         prompt. Frequently this is way too small!
  615. X    FIX. prompt.c getline.c - added emacs style line editing which allows
  616. X         horizontal scrolling of editing area.
  617. 5)  john@iti.org (John Sauter)
  618. X    BUG. When saving threads by Archive-name: field the default is sometimes
  619. X         wrong. ie. unshar on a binaries group should be uudecode & zoo.
  620. X    FIX. feed.c - check whether group is sources and therefore unshar,
  621. X         or if group is binaries uudecode it.             
  622. X
  623. 6)  iain@estevax.uucp (Iain Lea)
  624. X    BUG. Artivles should be marked read if saved, printed, piped etc.
  625. X    FIX. feed.c - saved, printed piped etc. are marked read if mark
  626. X         saved read is set ON in 'M' menu. 
  627. X
  628. 7)  unido!asd.tds.philips.se!kko (Karl-Koenig Koenigsson)
  629. X    BUG. When articles are tagged and 'K' command is done the tagged
  630. X         article number is not redisplayed.
  631. X    FIX. group.c - modified 'K' command to redisplay tagged art number.
  632. X
  633. 8)  otto@norisc.uucp (Otto Niesser)
  634. X    BUG. When ESC is pressed to exit 'M' menu at group selection level
  635. X         the screen is redrawn but part of the right side of the 'M'
  636. X         menu is still present.
  637. X    FIX. select.c - added clear screen when -> is used. 
  638. X
  639. 9)  otto@norisc.uucp (Otto Niesser)
  640. X    BUG. When ESC is pressed to abort a selected option, the option is
  641. X         set even though you wish to abort the operation. 
  642. X    FIX. rcfile.c prompt.c - option set to original value if ESC pressed
  643. X
  644. 10) unido!asd.tds.philips.se!kko (Karl-Koenig Koenigsson)
  645. X    BUG. Tagged articles are not automatically untagged when processed.
  646. X    FIX. feed.c - untags all articles after post processing.
  647. X
  648. 11) hakanl@lulea.telesoft.se (Hakan Lennestal)
  649. X    BUG. post_base() & post_response() unlink ~/.article too soon.
  650. X    FIX. post.c - applied the supplied patch.
  651. X    
  652. 12) hakanl@lulea.telesoft.se (Hakan Lennestal)
  653. X    BUG. setuid() problems in posting routines.
  654. X    FIX. post.c - applied the supplied patch. 
  655. X    
  656. 13) pgd@compuram.bbt.se (Per Lindqvist)
  657. X    BUG. The "addr (username) writes: " when doing a 'F' command is
  658. X         wrong.
  659. X    FIX. page.c post.c - added extra parameter to post_response()
  660. X         routine. 
  661. X
  662. 14) pgd@compuram.bbt.se (Per Lindqvist)
  663. X    BUG. When doing a 'f'/'F' followup to an article, when you come
  664. X         back to the newsgroup the wrong article is displayed.
  665. X    FIX. page.c post.c - check if followup succeeded in post_response().
  666. X
  667. 15) marc@CAM.ORG (Marc Boucher)
  668. X    BUG. mark_unthreaded_groups() does not do a setuid() before
  669. X         accessing ~/.tin/unthread.
  670. X    FIX. misc.c - applied supplied patch. 
  671. X    
  672. 16) m31z@jupiter.sun.csd.unb.ca (Steven Cogswell)
  673. X    BUG. When pressing 'M' menu with no articles in group at article
  674. X         selection level a signal 11 causes the program to crash.
  675. X    FIX. group.c - modified if() to check if top_base > 0 not top > 0.
  676. X
  677. 17) iain@estevax.uucp (Iain Lea)
  678. X    BUG. Posted subject line is not extracted from ~/.article.
  679. X    FIX. post.c - modified find_mail_header() to read Subject: line.
  680. X
  681. 18) otto@norisc.uucp (Otto Niesser)
  682. X    BUG. threads are saved with 0 bytes length at article page level 
  683. X         when reading news via NNTP.
  684. X    FIX. save.c - changed save_thread_to_file() to use save_art_to_file().
  685. X
  686. 19) robinson@mdivax1.mdd.comm.mot.com (Jim Robinson)
  687. X    BUG. Save paths that begin with '/' should not be expanded, and
  688. X         pathnames beginning with '$' should be treated as an enviroment
  689. X         variable and be expanded until the first '/' is encountered. 
  690. X    FIX. save.c - applied supplied patch. 
  691. X
  692. 20) otto@norisc.uucp (Otto Niesser)
  693. X    BUG. Usage message for -r option has DEFAULT_PRINTER as output
  694. X         parameter even though no %s is in text.
  695. X    FIX. main.c - changed output parameter to (char *) 0.
  696. X
  697. 21) otto@norisc.uucp (Otto Niesser)
  698. X    BUG. When a printer is specified with the -p option it should only
  699. X         last the duration of the current session and should not be 
  700. X         written to the tinrc file.
  701. X    FIX. main.c init.c feed.c - added cmd_line_printer varaible so that
  702. X         tinrc printer varaible is not affected.
  703. X
  704. 22) georg@norisc.uucp (Georg Biehler)
  705. X    BUG. When '1'<BS><TAB><CR> is pressed when prompting for a number
  706. X         the cursor is wrongly positioned above the first entry listed.
  707. X    FIX. select.c - added check to test if entered number is negative.
  708. X
  709. 23) robert@sys.sweden.dg.com (Robert Claeson)
  710. X    ADD. Makefile - applied supplied patch to support DG Aviion. 
  711. X
  712. 24) iain@estevax.uucp (Iain Lea)
  713. X    ADD. group.c - added 'd' command to toggle display of subject only
  714. X         or subject and author.
  715. X
  716. 25) iain@estevax.uucp (Iain Lea)
  717. X    ADD. main.c - added -H option and also when tin is started for the
  718. X         first time a brief introduction message is printed for first
  719. X         time users.
  720. X
  721. 26) john@iti.org (John Sauter)
  722. X    BUG. -M and -S options cause screen not to be reset correctly.
  723. X    FIX. main.c - changed exit() call to tin_done() to reset screen.
  724. X
  725. 27) iain@estevax.uucp (Iain Lea)
  726. X    BUG. Archive-Name: field in comp.sources.unix is not threaded.
  727. X    FIX. art.c - added extra check for Archive-name: and Archive-name:. 
  728. X
  729. 28) iain@estevax.uucp (Iain Lea)
  730. X    ADD. group.c - added 'u' command to toggle threading/unthreading
  731. X         of all articles within current group.
  732. X
  733. 29) tho@slxger.specialix.de (Torsten Homeyer)
  734. X    BUG. Under SCO 3.2.2 the cal getlogin() isn't able to return the
  735. X         expected info nor a null pointer. It returns just garbage.
  736. X    FIX. init.c - applied supplied patch.
  737. SHAR_EOF
  738. chmod 0600 CHANGES ||
  739. echo 'restore of CHANGES failed'
  740. Wc_c="`wc -c < 'CHANGES'`"
  741. test 6149 -eq "$Wc_c" ||
  742.     echo 'CHANGES: original size 6149, current size' "$Wc_c"
  743. rm -f _shar_wnt_.tmp
  744. fi
  745. # ============= TODO ==============
  746. if test -f 'TODO' -a X"$1" != X"-c"; then
  747.     echo 'x - skipping TODO (File already exists)'
  748.     rm -f _shar_wnt_.tmp
  749. else
  750. > _shar_wnt_.tmp
  751. echo 'x - extracting TODO (Text)'
  752. sed 's/^X//' << 'SHAR_EOF' > 'TODO' &&
  753. FIX FEATURES V1.1
  754. -----------------
  755. X
  756. o  Fix 'l' thread command so 2nd page of thread is correct. Need a
  757. X   routine to give the next response in thread.
  758. X
  759. o  Fix -R option to read saved new news from <savedir>
  760. X
  761. o  Fix -S option to save new news to <savedir>. Create an active file
  762. X   when new articles are saved to <savedir>.
  763. X
  764. o  Fix -n option to hash the groups read in from ~/.tin/active and
  765. X   mark active[].flag as TRUE. then find flag=FALSE and ask user if
  766. X   they want to subscribe to group. On xenix386 takes 15 seconds on
  767. X   current -n option.
  768. X
  769. FIX FEATURES V2.0
  770. -----------------
  771. X
  772. o  Fix uuscram code in uudecode.
  773. X
  774. o  Fix code to sort arts. At page level funny things happen.
  775. X
  776. o  Fix code to KILL articles. At page level funny things happen.
  777. X
  778. o  Fix code to KILL articles with 't' command.
  779. X
  780. o  Fix so that it always finds unread messages. 
  781. X
  782. o  Fix 'z' so that it stays unread even if a KILL is performed before
  783. X   leaving the group.
  784. X
  785. o  Fix 'z' at group selection level so whole screen is not redrawn.
  786. X
  787. o  Fix code to display only groups with unread news. look at
  788. X   setup_base() also for killing.
  789. X
  790. ADD FEATURES
  791. ------------
  792. X
  793. o  Add -P <pattern> or -P <file> to search for in new news and to
  794. X   notify user by mail. Should understand 'subject=text' 'from=text'
  795. X   'body=text' and .AND. && .OR. || for filtering purposes.
  796. X
  797. o  Add elm style print command with %s in it for printing in 'M'.
  798. X
  799. o  Add crossposting of articles so that read ones are marked read in 
  800. X   other groups. in rn it uses Xref: line to do this. Perhaps just
  801. X   use update_group() to do it?
  802. X   Needs to handle 'c' 'C' 'k' 'K' commands. Perhaps it should be an
  803. X   option so that performance is not impaired.
  804. X
  805. o  Add 'C' command at group level to catchup present group and
  806. X   enter next group with unread news in it.
  807. X
  808. o  Sort .newsrc according to preference. (sort active file as it is read)
  809. X
  810. o  Add time period kill article
  811. X
  812. PIPEDREAMS
  813. ----------
  814. o  Add rebindable keymaps and provide different terminal keymaps
  815. X   (ie. keymap.ansi, keymap.wy50 etc.)
  816. X
  817. o  Add Virtual newsgroups (combination of newsgroups ie. virtual.ibm
  818. X   consists of comp.sys.ibm.* groups).
  819. X
  820. o  Add threading on References like trn with mthreads database.
  821. X
  822. o  Add full curses support instead of using printf()'s.
  823. X
  824. o  Sub all not empty groups by looking at min max values in active array
  825. X   and Unsub all empty groups by looking at min max values in active 
  826. X   array. have a command to do this in a toggle effect.
  827. SHAR_EOF
  828. chmod 0600 TODO ||
  829. echo 'restore of TODO failed'
  830. Wc_c="`wc -c < 'TODO'`"
  831. test 2455 -eq "$Wc_c" ||
  832.     echo 'TODO: original size 2455, current size' "$Wc_c"
  833. rm -f _shar_wnt_.tmp
  834. fi
  835. # ============= INSTALL ==============
  836. if test -f 'INSTALL' -a X"$1" != X"-c"; then
  837.     echo 'x - skipping INSTALL (File already exists)'
  838.     rm -f _shar_wnt_.tmp
  839. else
  840. > _shar_wnt_.tmp
  841. echo 'x - extracting INSTALL (Text)'
  842. sed 's/^X//' << 'SHAR_EOF' > 'INSTALL' &&
  843. Compilation and installation notes for tin - 01-02-92 
  844. -----------------------------------------------------
  845. X
  846. Tin has been compiled on a wide range of Unix machines with cc and gcc.
  847. A list of these machines can be found at the bottom of this file.  
  848. X
  849. It can be compiled to read news in any of the following ways:
  850. X  o  locally from your machines news spool dir, usually /usr/spool/news.
  851. X  o  remotely from another machine via NNTP.
  852. X  o  locally and remotely (rtin or tin -r option).
  853. X
  854. The NNTP (NetNews Transport Protocol RFC 977) software needs to be
  855. installed on your machine if want to read news remotely. It is a
  856. SEPERATE PACKAGE that is available from many FTP and mailserver
  857. sites. The file that has to be linked with tin is clientlib.o. 
  858. X
  859. Building Tin
  860. ------------
  861. X
  862. 1)  type 'make' and a few system types will be displayed
  863. 2)  edit Makefile if you want to add/change -D<dfines>
  864. 3)  type 'make <system type>' to compile for your system
  865. 4)  type 'make install' / 'make install_setuid' to install
  866. X    
  867. Compiler flags (-D<name> define directives)
  868. -------------------------------------------
  869. News directory structure
  870. ------------------------
  871. X
  872. LIBDIR
  873. Define if news software is not in /usr/lib/news.
  874. X
  875. INEWSDIR
  876. Define if bnews/cnews program 'inews' is not in LIBDIR.
  877. X
  878. SPOOLDIR
  879. Define if news articles are not in /usr/spool/news.
  880. X
  881. X
  882. Reading news via NNTP
  883. --------------------- 
  884. X
  885. USE_NNTP
  886. Define if reading news remotely via an NNTP server.
  887. X
  888. NNTP_SERVER_FILE
  889. Only define if your nntpserver file is other than /etc/nntpserver.
  890. X
  891. NNTPLIB
  892. Contains the path of the file clientlib.o that is part of NNTP software.
  893. X
  894. NETLIBS
  895. Contains the networking libraries needed to link with clientlib.o file.
  896. X
  897. X
  898. Miscellaneous options
  899. ---------------------
  900. X
  901. POSIX_JOB_CONTROL
  902. Define if your machine uses Posix style sigaction() signal handling.
  903. X
  904. USE_MKDIR
  905. Define if your machine does not have the mkdir() system call.
  906. X
  907. USE_LONG_FILENAMES
  908. Define if your machines filesystem supports filenames longer than 14
  909. chars (default for BSD type systems).
  910. X
  911. USE_INVERSE_HACK
  912. Define if you want inverse video and highlighted bar disabled. (default
  913. for SCO Unix & SysVR4).  Can be toggled in tin by the 'I' command and
  914. highlight bar by 'M' command.
  915. X
  916. USE_CLEARSCREEN
  917. Define if the you wish screen to use ClearScreen() and not MoveCursor()
  918. and CleartoEOLN(). This is perhaps faster on slow terminals but I have
  919. not really run any speed tests recently.
  920. X
  921. SLOW_SCREEN_UPDATE
  922. Define if running over a low speed connection (ie. 2400baud). It stops
  923. the percentage info being shown at bottom of select and group menus and
  924. stops the groupname being displayed at the bottom of the screen as it is
  925. subscribed/unsubscribed.
  926. X
  927. NO_REGEX
  928. Define if you do not want to use regular expression pattern matching.
  929. X
  930. NO_START_LINE
  931. Do not start editor with line offset into file.
  932. X
  933. NO_SHELL_ESCAPE
  934. Do not allow shell escapes.
  935. X
  936. NO_POSTING
  937. Do not allow posting/followup of articles.
  938. X
  939. LOG_USER
  940. Log user info each time tin is started to /tmp/.tin_log for usage statistics.
  941. X
  942. Compiled & installed on the following machines
  943. ----------------------------------------------
  944. X
  945. 1) * Dec 5000/Vax & Ultrix 4.1/4.2
  946. 2) * Vax 11/785 & BSD 4.3
  947. 3) * 386 PC & Xenix 2.3/ATT SysVr4.0/SCO SysVR3.2/ISC SysVR3.2
  948. 3) * Sun 3/4/IPC/SS1/SS2 & SunOS 4.0.3/4.1/4.1.1 
  949. 4) * Sony News & SysVR4/BSD 4.3
  950. 5) * SNI MX300/MX500 & Sinix 5.22/5.23/5.24
  951. 6)   ICL DRS6000 & SysVR4.0 
  952. 7)   Atari STe & Minix 1.5.10.3b
  953. 8)   Apricot VX/FT & SCO 3.2.2
  954. 9)   DIAB DS90 & D-NIX 5.3
  955. 10)  Amdahl & SysVR3
  956. 11)  HP 9000/845 & HP-UX 7.0
  957. 12)  IBM RS/6000 & AIX 3.1.5
  958. 13)  NCR Tower & SysV
  959. 14)  Atari STe & Minix 1.5.10.3b
  960. 15)  386 PC & Minix 386
  961. 16)  DG Aviion & DG-UX
  962. X
  963. * = compiled, installed and used by author 
  964. SHAR_EOF
  965. chmod 0600 INSTALL ||
  966. echo 'restore of INSTALL failed'
  967. Wc_c="`wc -c < 'INSTALL'`"
  968. test 3693 -eq "$Wc_c" ||
  969.     echo 'INSTALL: original size 3693, current size' "$Wc_c"
  970. rm -f _shar_wnt_.tmp
  971. fi
  972. # ============= tin.1 ==============
  973. if test -f 'tin.1' -a X"$1" != X"-c"; then
  974.     echo 'x - skipping tin.1 (File already exists)'
  975.     rm -f _shar_wnt_.tmp
  976. else
  977. > _shar_wnt_.tmp
  978. echo 'x - extracting tin.1 (Text)'
  979. sed 's/^X//' << 'SHAR_EOF' > 'tin.1' &&
  980. .TH TIN 1 "Version 1.1 PL0"
  981. .SH NAME
  982. tin/rtin \- A threaded Netnews reader
  983. .SH SYNOPSIS
  984. .B tin/rtin
  985. [options] [newsgroups]
  986. .SH DESCRIPTION
  987. .I Tin
  988. is a full-screen threaded Netnews reader.  It can read news locally
  989. (ie. \fI/usr/spool/news\fP) or remotely (rtin or tin -r option) via
  990. a NNTP (Network News Transport Protocol) server.
  991. .PP
  992. Tin has four newsreading levels:
  993. the newsgroup selection page, the group index page, the thread listing
  994. page and the article viewer.
  995. Use the 'h' (help) command to view a list of the commands available at a
  996. particular level.
  997. .PP
  998. On startup Tin will show a list of the newsgroups found in \fI$HOME/.newsrc\fP.
  999. An arrow '->' or highlighted bar will point to the first newsgroup.
  1000. Move to a group by using the terminal arrow keys (ansi/at386/vt100 only) or 'j'
  1001. and 'k'. Use PgUp/PgDn (ansi/at386/vt100 only) or Ctrl-U and Ctrl-D to
  1002. page up/down. Enter a newsgroup by pressing RETURN.
  1003. .PP
  1004. The TAB key may be used to advance to the next newsgroup with unread articles
  1005. and enter it.
  1006. .SH OPTIONS
  1007. .TP 10
  1008. \fB-c\fP
  1009. create/update index files for every group in \fI$HOME/.newsrc\fP or
  1010. file specified by -f option and mark all articles as read.
  1011. .TP
  1012. \fB-d dir\fP
  1013. save articles to directory. Default is \fI$HOME/News\fP.
  1014. .TP
  1015. \fB-f file\fP
  1016. Use the specified file in place of \fI$HOME/.newsrc\fP.
  1017. .TP
  1018. \fB-h\fP
  1019. help listing all command line options.
  1020. .TP
  1021. \fB-m dir\fP
  1022. mailbox directory to use. Default is \fI$HOME/Mail\fP.
  1023. .TP
  1024. \fB-M user\fP
  1025. mail unread articles to specified user for later reading. For more
  1026. information read section Automatic Mailing and Saving New News. 
  1027. .TP
  1028. \fB-n\fP
  1029. notify the user of any newly created newsgroups since the last session.
  1030. .TP
  1031. \fB-p file\fP
  1032. print program with options.\fP.
  1033. .TP
  1034. \fB-r\fP
  1035. read news remotely from the default NNTP server specified in the
  1036. environment variable NNTPSERVER or contained in the file
  1037. \fI/etc/nntpserver\fP.
  1038. .TP
  1039. \fB-R\fP
  1040. read news saved by -S option (not yet implemented).
  1041. .TP
  1042. \fB-s dir\fP
  1043. spool directory where news is stored. Default is \fI/usr/spool/news\fP.
  1044. .TP
  1045. \fB-S\fP
  1046. save unread articles for later reading by -R option. For more information
  1047. read section Automatic Mailing and Saving New News.
  1048. .TP
  1049. \fB-u\fP
  1050. create/update index files for every group in \fI$HOME/.newsrc\fP or
  1051. file specified by -f option.
  1052. .TP
  1053. \fB-U\fP
  1054. start tin in the background to update index files while reading news 
  1055. in the foreground.
  1056. .TP
  1057. \fB-v\fP
  1058. verbose mode for -c -M -S -u and -Z options.
  1059. .TP
  1060. \fB-z\fP
  1061. only start tin if there is any new/unread news. If there is news tin
  1062. will position cursor at first group with unread news. Useful for putting
  1063. in login file.
  1064. .TP
  1065. \fB-Z\fP
  1066. check if there is any new/unread news and exit with appropiate status.
  1067. If -v option is specified the number of unread articles in each group
  1068. is printed. An exit code 0 indicates no news, 1 that an error occurred
  1069. and 2 that new/unread news exists. Useful for writing scripts.
  1070. .PP
  1071. Tin can also dynamically change its options by the 'M' menu command.
  1072. Any changes are written to \fI$HOME/.tin/tinrc\fP.
  1073. .SH "INDEX FILES"
  1074. In order to keep track of threads, Tin maintains an index for each group.
  1075. If Tin is made setuid to news, the indexes will be stored in the news spool
  1076. directory (typically \fI/usr/spool/news\fP). If Tin is not setuid, it
  1077. will store index files in the subdirectory \fI$HOME/.tin/.index\fP.
  1078. Do not make Tin setuid news if news will be obtained via NNTP and not
  1079. from \fI/usr/spool/news\fP.
  1080. .PP
  1081. Entering a group the first time tends to be slow because the index file must
  1082. be built from scratch.  Subsequent readings of a group will cause
  1083. Tin to incrementally update the index file, adding or removing entries as new
  1084. articles come in or as news expires. If reading news remotely indexing
  1085. will be somewhat slower because the articles must be retrieved via the
  1086. NNTP.
  1087. .PP
  1088. A good way to keep Tin index files current is to run tin -u from cron:
  1089. .RS
  1090. .nf
  1091. 20 6 * * * /usr/local/bin/tin -u -f /usr/lib/news/tin_groups
  1092. .fi
  1093. .RE
  1094. This would update the index files for those groups appearing in
  1095. \fI/usr/lib/news/tin_groups\fP.  To index all of the groups on the
  1096. system, run tin -u with -f indicating the active file:
  1097. .RS
  1098. .nf
  1099. 20 6 * * * /usr/local/bin/tin -u -f /usr/lib/news/active
  1100. .fi
  1101. .RE
  1102. .SH "SCREEN FORMAT"
  1103. Tin has three separate levels of operation: Selection Group level, Group level
  1104. and Article level.
  1105. .PP
  1106. At the Selection Group level the title displays the number of subscribed
  1107. groups. The newsgroups are displayed on the left of the screen with the
  1108. number of unread articles displayed on the same line in the middle of
  1109. the screen.
  1110. .RS
  1111. .nf
  1112. .in +.5i
  1113. .ta +\w'1  'u +\w'news.software.readers  'u
  1114. <Selection Num> <Newsgroup> <Num of unread articles>
  1115. .ti -.5i
  1116. i.e.,
  1117. 1    alt.sources            10
  1118. 2    comp.sources.misc        3
  1119. 3    news.software.readers        12
  1120. .in -.5i
  1121. .fi
  1122. .RE
  1123. .PP
  1124. At the Group level the title contains the name of the group, the number
  1125. of conversation threads and total number of articles i.e., alt.sources (7 23).
  1126. If the group has been setup not to thread articles (i.e., alt.sources
  1127. is in \fI$(HOME)/.tin/unthread\fP) the title will be alt.sources (U 23).
  1128. There are two possible display formats as shown below:
  1129. .RS
  1130. .nf
  1131. .in +.5i
  1132. .ta +\w'1  'u  +\w'+    +\w'This question has   'u +\w'1 
  1133. <Selection Num> <Unread> <Responses> <Subject> <Author>
  1134. .ti -.5i
  1135. i.e.,
  1136. 1    +    3    Bnews sources?        iain@estevax.uucp
  1137. 2        1    This question has        ether@net
  1138. .ti -.5i
  1139. or
  1140. .ta +\w'1  'u +\w'+    'u +\w'This question has a long subject line  'u
  1141. <Selection Num> <Unread> <Responses> <Subject (longer)>
  1142. .ti -.5i
  1143. i.e.,
  1144. 1    +    3    Bnews sources?
  1145. 2        1    This question has a longer subject line
  1146. .in -.5i
  1147. .fi
  1148. .RE
  1149. .PP
  1150. At the Article level the page header has the following format:
  1151. .RS
  1152. .nf
  1153. .in +.5i
  1154. .ta \w'<Date posted> <Newsgroup>    'u
  1155. <Date posted> <Newsgroup>    <Thread 1 of n>
  1156. <Article Num> <Subject>    <Num of responses in thread>
  1157. <Author>    <Organization>
  1158. X
  1159. <Article body>
  1160. .ti -.5i
  1161. i.e.,
  1162. .ta \w'24 Jul 15:20:03 GMT   'u +\w'Bnews sources?   'u
  1163. 24 Jul 15:20:03 GMT    alt.sources    Thread 1 of 2
  1164. Article 452    Bnews sources?    3 responses
  1165. iain@estevax.uucp        Organization name
  1166. X
  1167. <Article boby>
  1168. .in -.5i
  1169. .fi
  1170. .RE
  1171. .SH "COMMON MOVING KEYS"
  1172. This table shows the common keys/commands for moving at all three levels
  1173. within Tin.
  1174. .RS
  1175. .nf
  1176. .ta \w'Beginning of list/article  'u +\w'ansi/at386/vt100  'u
  1177. X    ansi/at386/vt100    Other Terminals
  1178. Beginning of list/article    \fBHome\fP    \fB1\fP (\fB^R\fP or \fBg\fP at article level)
  1179. End of list/article    \fBEnd\fP    \fB$\fP (also \fBG\fP at article level)
  1180. Page Up    \fBPgUp\fP    \fB^U\fP or \fBb\fP 
  1181. Page Down    \fBPgDn\fP    \fB^D\fP or \fB<SPACE>\fP
  1182. Line Up    \fBUp arrow\fP    \fBk\fP (not at article level)
  1183. Line Down    \fBDown arrow\fP    \fBj\fP (not at article level)
  1184. .fi
  1185. .RE
  1186. .SH "COMMON EDITING COMMANDS"
  1187. An emacs style editing package allows the easy editing of input strings.
  1188. An history list allows the easy re-use of previously entered strings.
  1189. The following commands are available when editing a string:
  1190. X
  1191. .TP 10
  1192. \fB^A,^E\fP
  1193. move to beginnning or end of line, respectively.
  1194. .TP
  1195. \fB^F,^B\fP
  1196. nondestructive move forward or back one location, respectively.
  1197. .TP
  1198. \fB^D\fP
  1199. delete the character currently under the cursor, or send EOF if no
  1200. characters in the buffer.
  1201. .TP
  1202. \fB^H,<DEL>\fP
  1203. delete character left of the cursor.
  1204. .TP
  1205. \fB^K\fP
  1206. delete from cursor to end of line.
  1207. .TP
  1208. \fB^P,^N\fP
  1209. move through history, previous and next, respectively.
  1210. .TP
  1211. \fB^L,^R\fP
  1212. redraw the current line.
  1213. .TP
  1214. \fB<CR>\fP
  1215. places line on history list if nonblank, appends newline and returns
  1216. to the caller.
  1217. .TP
  1218. \fB<ESC>\fP
  1219. aborts the present editing operation.
  1220. .SH "NEWSGROUP SELECTION COMMANDS"
  1221. .TP 10
  1222. \fB4\fP
  1223. Select group 4.
  1224. .TP
  1225. \fB^K\fP
  1226. Delete current group from \fI$HOME/.newsrc\fP file.
  1227. .TP
  1228. \fB^L\fP
  1229. Redraw page.
  1230. .TP
  1231. \fB^R\fP
  1232. Reset \fI$HOME/.newsrc\fP file.
  1233. .TP
  1234. \fB<CR>\fP
  1235. Read current group.
  1236. .TP
  1237. \fB<TAB>\fP
  1238. View next unread group.
  1239. .TP
  1240. \fBB\fP
  1241. Mail a bug report or comment to the author. This is the best way of
  1242. getting bugs fixed and features added/changed.
  1243. .TP
  1244. \fBc\fP
  1245. Mark current group as all read and goto next group in group selection
  1246. list.
  1247. .TP
  1248. \fBC\fP
  1249. Mark current group as all read and goto next unread group in group
  1250. selection list.
  1251. .TP
  1252. \fBg\fP
  1253. Choose a new group by name. The position of the group within the group
  1254. list will also be asked for. By entering '1' the new group will be the
  1255. first group in the displayed list, by entering '8' the group will be
  1256. the eighth group in the list etc. By entering '$' the group will be the
  1257. last group displayed.
  1258. .TP
  1259. \fBh\fP
  1260. help screen of newsgroup selection commands.
  1261. .TP
  1262. \fBH\fP
  1263. help screen of context sensitive help about newsgroup selection level.
  1264. .TP
  1265. \fBI\fP
  1266. Toggle inverse video.
  1267. .TP
  1268. \fBm\fP
  1269. Move the current group within the group selection list.
  1270. By entering '1' the group will become the first displayed group in
  1271. the list, by entering '8' the eighth group in the list etc. By
  1272. entering '$' the group will be the last group displayed.
  1273. .TP
  1274. \fBM\fP
  1275. User configurable options menu (for more information see section Options Menu).
  1276. .TP
  1277. \fBq\fP
  1278. Quit tin.
  1279. .TP
  1280. \fBs\fP
  1281. Subscribe to current group.
  1282. .TP
  1283. \fBS\fP
  1284. Subscribe to groups matching user specified pattern.
  1285. .TP
  1286. \fBu\fP
  1287. Unsubscribe to current group.
  1288. .TP
  1289. \fBU\fP
  1290. Unsubscribe to groups matching user specified pattern.
  1291. .TP
  1292. \fBv\fP
  1293. Print tin version number.
  1294. .TP
  1295. \fBw\fP
  1296. Post an article to current group.
  1297. .TP
  1298. \fBW\fP
  1299. List articles posted by user. The date posted, the newsgroup and the
  1300. subject are listed.
  1301. .TP
  1302. \fBy\fP
  1303. The first time this command is called it will yank in all groups from
  1304. \fI/usr/local/news/active\fP that are not in \fI$HOME/.newsrc\fP.
  1305. After any groups have been subscribed/unsubscribed to, this command
  1306. if pressed again will reread \fI$HOME/.newsrc\fP and display only
  1307. subscribed groups.
  1308. .TP
  1309. \fBY\fP
  1310. Reread group list from \fI$HOME/.newsrc\fP file.
  1311. .TP
  1312. \fBz\fP
  1313. Mark all articles in the current group as unread.
  1314. .TP
  1315. \fBZ\fP
  1316. Undelete previously deleted group from \fI$HOME/.newsrc\fP file.
  1317. .TP
  1318. \fB/\fP
  1319. Group forward search.
  1320. .TP
  1321. \fB?\fP
  1322. Group backward search.
  1323. .SH "GROUP INDEX COMMANDS"
  1324. .TP 10
  1325. \fB4\fP
  1326. Select article 4.
  1327. .TP
  1328. \fB^K\fP
  1329. Kill current article (for more information read section Kill Article Menu).
  1330. .TP
  1331. \fB^L\fP
  1332. Redraw page.
  1333. .TP
  1334. \fB<CR>\fP
  1335. Read current article.
  1336. .TP
  1337. \fB<TAB>\fP
  1338. View next unread article or group.
  1339. .TP
  1340. \fBa\fP
  1341. Author forward search.
  1342. .TP
  1343. \fBA\fP
  1344. Author backward search.
  1345. .TP
  1346. \fBB\fP
  1347. Mail a bug report or comment to the author. This is the best way of
  1348. getting bugs fixed and features added/changed.
  1349. .TP
  1350. \fBc\fP
  1351. Mark all articles as read.
  1352. .TP
  1353. \fBC\fP
  1354. Cancel current article. It must have been posted by the same user. The
  1355. cancel message can be seen in the newsgroup 'control'.
  1356. .TP
  1357. \fBd\fP
  1358. Toggle display to show just the subject or the subject and author.
  1359. .TP
  1360. \fBg\fP
  1361. Choose a new group by name.
  1362. .TP
  1363. \fBh\fP
  1364. help screen of group index commands.
  1365. .TP
  1366. \fBH\fP
  1367. help screen of context sensitive help about group index level.
  1368. .TP
  1369. \fBI\fP
  1370. Toggle inverse video.
  1371. .TP
  1372. \fBK\fP
  1373. Mark article/thread as read and advance to next unread article/thread.
  1374. .TP
  1375. \fBl\fP
  1376. List the author of each response in current thread and enter thread
  1377. selection level.
  1378. .TP
  1379. \fBm\fP
  1380. Mail current article / thread / articles matching pattern / tagged articles
  1381. to someone.
  1382. .TP
  1383. \fBM\fP
  1384. User configurable options menu (for more information see section Options Menu).
  1385. .TP
  1386. \fBn\fP
  1387. Go to next group.
  1388. .TP
  1389. \fBN\fP
  1390. Go to next unread article.
  1391. .TP
  1392. \fBo\fP
  1393. Output current article / thread / articles matching pattern / tagged articles
  1394. to printer.
  1395. .TP
  1396. \fBp\fP
  1397. Go to previous group.
  1398. .TP
  1399. \fBP\fP
  1400. Go to previous unread article.
  1401. .TP
  1402. \fBq\fP
  1403. Quit tin.
  1404. .TP
  1405. \fBs\fP
  1406. Save current article / thread / articles matching pattern / tagged
  1407. articles to file / files / mailbox. To save to a mailbox enter '='
  1408. or '=mailbox' when asked for filename to save to. To save in
  1409. <newsgroup name>/<filename> format enter '+filename'. Environment
  1410. variables are allowed within a filename (ie. $SOURCES/dir/filename).
  1411. .TP
  1412. \fBT\fP
  1413. Tag current article for mailing ('m') / piping ('|') / printing ('o') / saving ('s').
  1414. .TP
  1415. \fBt\fP
  1416. Return to group selection index.
  1417. .TP
  1418. \fBu\fP
  1419. Toggle display to show all articles as unthreaded or threaded.
  1420. .TP
  1421. \fBU\fP
  1422. Untag all articles that were tagged.
  1423. .TP
  1424. \fBv\fP
  1425. Print tin version number.
  1426. .TP
  1427. \fBw\fP
  1428. Post an article to current group.
  1429. .TP
  1430. \fBW\fP
  1431. List articles posted by user. The date posted, the newsgroup and the
  1432. subject are listed.
  1433. .TP
  1434. \fBz\fP
  1435. Mark current article as unread.
  1436. .TP
  1437. \fBZ\fP
  1438. Mark current thread as unread.
  1439. .TP
  1440. \fB/\fP
  1441. Search forward for specified subject.
  1442. .TP
  1443. \fB?\fP
  1444. Search backward for specified subject.
  1445. .TP
  1446. \fB-\fP
  1447. Show last message.
  1448. .TP
  1449. \fB|\fP
  1450. Pipe current article / thread / articles matching pattern / tagged articles
  1451. into command.
  1452. .SH "THREAD LISTING COMMANDS"
  1453. .TP 10
  1454. \fB4\fP
  1455. Select article 4 within thread.
  1456. .TP
  1457. \fB^L\fP
  1458. Redraw page.
  1459. .TP
  1460. \fB<CR>\fP
  1461. Read current article within thread.
  1462. .TP
  1463. \fB<TAB>\fP
  1464. View next unread article within thread.
  1465. .TP
  1466. \fBh\fP
  1467. help screen of thread listing commands.
  1468. .TP
  1469. \fBI\fP
  1470. Toggle inverse video.
  1471. .TP
  1472. \fBK\fP
  1473. Mark thread as read and return to group index level.
  1474. .TP
  1475. \fBq\fP
  1476. Quit thread listing level.
  1477. .TP
  1478. \fBt\fP
  1479. Return to group index level.
  1480. .TP
  1481. \fBv\fP
  1482. Print tin version number.
  1483. .TP
  1484. \fBz\fP
  1485. Mark current article in thread as unread.
  1486. .TP
  1487. \fBZ\fP
  1488. Mark all articles in thread as unread.
  1489. .SH "ARTICLE VIEWER COMMANDS"
  1490. .TP 10
  1491. \fB0\fP
  1492. Read the base article in this thread.
  1493. .TP
  1494. \fB4\fP
  1495. Read response 4 in this thread.
  1496. .TP
  1497. \fB^H\fP
  1498. Show all of the articles mail header.
  1499. .TP
  1500. \fB^K\fP
  1501. Kill current article (for more information read section Kill Article Menu).
  1502. .TP
  1503. \fB^L\fP
  1504. Redraw page.
  1505. .TP
  1506. \fB<CR>\fP
  1507. Goto next base article.
  1508. .TP
  1509. \fB<TAB>\fP
  1510. Goto next unread article.
  1511. .TP
  1512. \fBa\fP
  1513. Author forward search.
  1514. .TP
  1515. \fBA\fP
  1516. Author backward search.
  1517. .TP
  1518. \fBB\fP
  1519. Mail a bug report or comment to the author. This is the best way of
  1520. getting bugs fixed and features added/changed.
  1521. .TP
  1522. \fBc\fP
  1523. Mark all articles as read.
  1524. .TP
  1525. \fBd\fP
  1526. Toggle rot-13 decoding for this article.
  1527. .TP
  1528. \fBf\fP
  1529. Post a followup to current article.
  1530. .TP
  1531. \fBF\fP
  1532. Post a followup with a copy of the current article included.
  1533. .TP
  1534. \fBh\fP
  1535. Help screen of article page commands.
  1536. .TP
  1537. \fBH\fP
  1538. Help screen of context sensitive help about article page level.
  1539. .TP
  1540. \fBi\fP
  1541. Return to index page.
  1542. .TP
  1543. \fBI\fP
  1544. Toggle inverse video.
  1545. .TP
  1546. \fBk\fP
  1547. Mark article as read and advance to next unread article.
  1548. .TP
  1549. \fBK\fP
  1550. Mark thread as read and advance to next unread thread.
  1551. .TP
  1552. \fBm\fP
  1553. Mail current article / thread / articles matching pattern / tagged articles
  1554. to someone.
  1555. .TP
  1556. \fBM\fP
  1557. User configurable options menu (for more information see section Options Menu).
  1558. .TP
  1559. \fBn\fP
  1560. Go to the next article.
  1561. .TP
  1562. \fBN\fP
  1563. Go to the next unread article.
  1564. .TP
  1565. \fBo\fP
  1566. Output current article / thread / articles matching pattern / tagged articles
  1567. to printer.
  1568. .TP
  1569. \fBo\fP
  1570. Output article/thread/tagged articles to printer.
  1571. .TP
  1572. \fBp\fP
  1573. Go to the previous article.
  1574. .TP
  1575. \fBP\fP
  1576. Go to the previous unread article.
  1577. .TP
  1578. \fBq\fP
  1579. Quit tin.
  1580. .TP
  1581. \fBr\fP
  1582. Reply through mail to author.
  1583. .TP
  1584. \fBR\fP
  1585. Reply through mail to author with a copy of the current article included.
  1586. .TP
  1587. \fBs\fP
  1588. Save current article / thread / articles matching pattern / tagged
  1589. articles to file / files / mailbox. To save to a mailbox enter '='
  1590. or '=mailbox' when asked for filename to save to. To save in
  1591. <newsgroup name>/<filename> format enter '+filename'. Environment
  1592. variables are allowed within a filename (ie. $SOURCES/dir/filename).
  1593. .TP
  1594. \fBt\fP
  1595. Return to group selection index.
  1596. .TP
  1597. \fBv\fP
  1598. Print tin version number.
  1599. .TP
  1600. \fBw\fP
  1601. Post an article to current group.
  1602. .TP
  1603. \fBW\fP
  1604. List articles posted by user. The date posted, the newsgroup and the
  1605. subject are listed.
  1606. .TP
  1607. \fBz\fP
  1608. Mark article as unread.
  1609. .TP
  1610. \fB/\fP
  1611. Article forward search.
  1612. .TP
  1613. \fB?\fP
  1614. Article backward search
  1615. .TP
  1616. \fB|\fP
  1617. Pipe current article / thread / articles matching pattern / tagged articles
  1618. into command.
  1619. .TP
  1620. \fB<\fP
  1621. Goto the first article in the current thread.
  1622. .TP
  1623. \fB>\fP
  1624. Goto the last article in the current thread.
  1625. .SH "OPTIONS MENU"
  1626. This menu is accessed by pressing 'M' at all levels. It allows the user
  1627. to customize the behaviour of tin. The options are saved to the file
  1628. \fI$HOME/.tin/tinrc\fP. Use <SPACE> to toggle the required option and
  1629. <CR> to set.
  1630. .TP 4
  1631. \fBAuto save\fP
  1632. Automatically save articles/threads by Archive-name: line in article
  1633. header. This is useful to set ON in conjunction with 'Save separate'.
  1634. .TP
  1635. \fBSave separate\fP
  1636. Save articles/threads to separate files. Set ON if saving source code.
  1637. Set OFF if saving a conversational thread.
  1638. .TP
  1639. \fBMark saved read\fP
  1640. This allows saved articles/threads to be automatically marked as
  1641. having been read. 
  1642. .TP
  1643. \fBKill articles\fP
  1644. This allows the user to kill articles that match entries in the kill
  1645. file \fI$HOME/.tin/kill\fP.
  1646. .TP
  1647. \fBDraw arrow\fP
  1648. Allows groups/articles to be selected by an arrow '->' if set ON or
  1649. by an highlighted bar if set OFF.
  1650. .TP
  1651. \fBPrint header\fP
  1652. This allows the complete mail header or only the Siubject: and From:
  1653. fields to be output when printing articles.
  1654. .TP
  1655. \fBGoto 1st unread\fP
  1656. This allows the cursor to be placed at the first / last unread article
  1657. upon entering a newsgroup with unread news.
  1658. .TP
  1659. \fBScroll full page\fP
  1660. If set ON scrolling of groups/articles will be a full page at a time,
  1661. otherwise half a page at a time.
  1662. .TP
  1663. \fBCatchup on quit\fP
  1664. If set ON the user is asked when quitting if all groups read during the
  1665. current session should be marked read.
  1666. .TP
  1667. \fBThread articles\fP
  1668. If set ON articles will be threaded in all groups (default), otherwise
  1669. articles will be shown unthreaded. If set ON but certain user specified
  1670. groups are in \fI$HOME/.tin/unthread\fP, the specified groups will be
  1671. unthreaded and the rest will be threaded.
  1672. .TP
  1673. \fBShow only unread\fP
  1674. If set ON show only new/unread articles, otherwise show all articles.
  1675. .TP
  1676. \fBShow Author\fP
  1677. If set 'None' only the Subject: line will be displayed. If set 'Addr'
  1678. Subject: line & the address part of the From: line are displayed. If
  1679. set 'Name' Subject: line & the authors full name part of the From:
  1680. line are displayed. If set 'Both' Subject: line & all of the From: line
  1681. are displayed.
  1682. .TP
  1683. \fBProcess type\fP
  1684. This specifies the default type of post processing to perform on saved
  1685. articles. The following types of processing are allowed:
  1686. .in +.5i
  1687. .ti -\w'\(em'u
  1688. \(emnone.
  1689. .ti -\w'\(em'u
  1690. \(emunpacking of multi-part shell archives.
  1691. .ti -\w'\(em'u
  1692. \(emunpacking of multi-part uuencoded files.
  1693. .ti -\w'\(em'u
  1694. \(emunpacking of multi-part uuencoded files that produce a *.zoo archive
  1695. whose contents is listed.
  1696. .ti -\w'\(em'u
  1697. \(emunpacking of multi-part uuencoded files that produce a *.zoo archive
  1698. whose contents is extracted.
  1699. .in -.5i
  1700. .TP
  1701. \fBSort articles by\fP
  1702. This specifies how articles should be sorted. The following sort
  1703. types are allowed:
  1704. .in +.5i
  1705. .ti -\w'\(em'u
  1706. \(emdon't sort articles (default).
  1707. .ti -\w'\(em'u
  1708. \(emsort articles by Subject: field (ascending & descending).
  1709. .ti -\w'\(em'u
  1710. \(emsort articles by From: field (ascending & descending).
  1711. .ti -\w'\(em'u
  1712. \(emsort articles by Date: field (ascending & descending).
  1713. .in -.5i
  1714. .TP
  1715. \fBSave directory\fP
  1716. The directory where articles/threads are to be saved. Default is
  1717. \fI$HOME/News\fP.
  1718. .TP
  1719. \fBMail directory\fP
  1720. The directory where articles/threads are to be saved in mailbox format.
  1721. This feature is mainly for use with the Elm mail program. It allows
  1722. the user to save articles/threads/groups simply by giving '=' as
  1723. the filename to save to.
  1724. .TP
  1725. \fBPrinter\fP
  1726. The printer program with options that is to be used to print
  1727. articles. Default is lpr for BSD machines and lp for SysV machines.
  1728. .SH "KILL ARTICLE MENU"
  1729. This menu is accessed by pressing '^K' at the group and page levels. It
  1730. allows the user to kill an article that matches the current Subject:
  1731. line, From: line or a string entered by the user. The user entered string
  1732. can be applied to the Subject: or From: lines of an article. The kill
  1733. description can be limited to the current newsgroup or it can apply to all newsgroups.
  1734. Once entered the user can abort the command and not save the kill
  1735. description, edit the kill file or save the kill description.
  1736. .PP
  1737. On starting tin the users killfile \fI$HOME/.tin/kill\fP is read and
  1738. on entering a newsgroup any kill descriptions are applied. Articles
  1739. that match a kill description are marked killed and are not displayed.
  1740. SHAR_EOF
  1741. true || echo 'restore of tin.1 failed'
  1742. fi
  1743. echo 'End of tin1.1 part 1'
  1744. echo 'File tin.1 is continued in part 2'
  1745. echo 2 > _shar_seq_.tmp
  1746. exit 0
  1747.  
  1748. --
  1749. NAME   Iain Lea
  1750. EMAIL  iain%estevax.uucp@unido.Informatik.Uni-Dortmund.DE
  1751. SNAIL  Bruecken Strasse 12, 8500 Nuernberg 90, Germany
  1752. PHONE  +49-911-331963 (home)  +49-911-3089-407 (work)
  1753. -- 
  1754.  Dr. med. dipl.-math Dieter Becker           Tel.: (0 / +49) 6841 - 16 3046
  1755.  Medizinische Universitaets- und Poliklinik  Fax.: (0 / +49) 6841 - 16 3369
  1756.  Innere Medizin III                         
  1757.  D - 6650 Homburg / Saar                     Email: becker@med-in.uni-sb.de
  1758. exit 0 # Just in case...
  1759.