Path: news1.ucsd.edu!ihnp4.ucsd.edu!dog.ee.lbl.gov!overload.lbl.gov!emf.emf.net!gatech!bloom-beacon.mit.edu!senator-bedfellow.mit.edu!faqserv From: Bill Wohler Newsgroups: news.software.nn,news.answers Subject: NN Frequently Asked Questions (FAQ) with Answers Supersedes: Followup-To: poster Date: 9 Jul 1995 11:07:27 GMT Organization: Newt Software, Menlo Park, California, USA Lines: 2230 Approved: news-answers-request@MIT.Edu Expires: 20 Aug 1995 11:06:28 GMT Message-ID: Reply-To: Bill Wohler NNTP-Posting-Host: bloom-picayune.mit.edu Summary: This document answers Frequently Asked Questions about NN, a menu-based, point and shoot, USENET news reader. It should be read by new NN users and news.software.nn readers and before posting to this newsgroup. Keywords: FAQ,nn,news,question,answer,newsrc,digest,article,NNTP, newsgroup,cancel,mail,signature,header,netnews,Usenet,kill X-Last-Updated: 1995/05/13 Originator: faqserv@bloom-picayune.MIT.EDU Xref: news1.ucsd.edu news.software.nn:5195 news.answers:41233 Archive-name: usenet/software/nn/faq/part1 Last-modified: $Date: 1995/05/13 09:42:17 $ Version: $Revision: 95.5 $ Posting-Frequency: monthly This is a living list of frequently asked questions on the Usenet news reader NN (No News is Good News). The point of this is to circulate existing information, and avoid rehashing old answers. Better to build on top than start again. Please read this document before ever posting to this newsgroup. This article is posted monthly. If it has already expired and you're not reading this, you can hope that you saved the instructions to retrieve the FAQ (see "Where can I get nn") so that you can get a copy through other means. Please do not post an answer when someone posts a frequently asked question; rather, email the relevant section of the FAQ to eliminate unnecessary traffic in this newsgroup. This list depends on your comments, additions and fixes: please send them to Bill Wohler . Copyright 1991-1995 Bill Wohler Permission to use, copy, distribute, and translate this document for any non-commercial purpose is hereby granted, provided that this copyright notice appears in all copies. Commercial distributions require prior written consent. This article is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ---------------------------------------------------------------------- Subject: Table of Contents From: Bill Wohler Legend: + new, - deleted, ! changed _______________ 01. Introduction 01.01 Why should I use nn? 01.02 What is the current version/status of nn? 01.03 Where can I get nn? 01.04 What references exist for nn? 01.05 How should I report bugs? 01.06 How can I convert from rn to nn? 01.07 How can I make life simpler when starting nn for the first time? 01.08 ! Is there an X interface to nn? ______________ 02. Building nn 02.01 What machines does nn run on? 02.02 Is it possible to restrict the groups that users have access to? 02.03 Unofficial patches for various bugs 02.04 Can I set up nn securely? ________________ 03. Command Input _________________ 04. Selection Mode 04.01 How come nn doesn't show the Lines count? 04.02 Why does nn crash when an invalid letter is selected? 04.03 How do I search for an author in a menu? 04.04 How do I select all articles in one fell swoop? ________________________ 05. Reading Mode Commands 05.01 How can I see the original article with the current subject? 05.02 Why do articles without a Lines header appear empty? 05.03 Can the article viewer/pager be changed? 05.04 How can I read MIME (multi-media mail) articles? 05.05 How can I read HTML (World Wide Web, Mosaic) articles? 05.06 Why am I reading cross-posted articles more than once? __________________ 06. Saving Articles 06.01 How do I save files that I can read later with MH, elm, Mail, ...? 06.02 What's the best way to save multi-part articles? 06.03 When saving in +a/b/c keeps you from saving in +a/b. 06.04 How can I change the default name of a save file? 06.05 ! Can I save all unread articles non-interactively into a file? 06.06 ! Can I download news to my PC? _____________________ 07. Folder Maintenance 07.01 How can I remove old articles from folders? _____________________________________ 08. Posting and Responding to Articles 08.01 How can I post prewritten articles with nn? 08.02 How can nn automatically append my signature? 08.03 How do I eliminate double signatures? 08.04 Can the signature come from a different file or program? 08.05 How do I save my posts and replies automatically? 08.06 Can I use my editor to edit posts and replies? 08.07 Can I use my mailer to send mail? 08.08 Can nn use aliases when sending mail? 08.09 How can I set a different Organization name? 08.10 How can I make mail replies go to a different machine? 08.11 How can I change how my real name appears? 08.12 How can I customize my mail headers for mail and posting? 08.13 + How do I post locally? 08.14 + Can I read my mail with nn? __________________________ 09. Jumping to Other Groups 09.01 How can I see which newsgroups are available? 09.02 Why do I get *NO*UPDATE* and what can I do about it? ________________________________ 10. Automatic Kill and Selection 10.01 Can non-selected subjects be automatically placed in my kill file? 10.02 Can I automatically kill articles based on the Newsgroups header? 10.03 How can I find all articles having to do with a certain topic? 10.04 Can I select one article in a thread when auto-select-subject set? 10.05 Can one search for patterns in the entire article from the menu? 10.06 How come more articles get selected than I expect? 10.07 Any plans for trn-ish thread following? 10.08 Can one kill articles based on the number of lines? 10.09 ! Why is nn 6.5.0b3 ignoring my kill file? _______________________________ 11. The Format of the Kill File __________________________ 12. Miscellaneous Commands 12.01 Can I choose newsgroups as I do articles, ie. with a menu? 12.02 How do I unsubscribe to all groups? 12.03 How can I get nn to stop adding new newsgroups? __________________ 13. The Init Files 13.01 How do I customize nn or change nn's behavior? 13.02 How can nn be used when multiple users share the same login? _________________________ 14. Variables and Options 14.01 Setting new-group-action to "ask before adding" doesn't work. _____________________ 15. Macro Definitions 15.01 Is there a library of macros and other nn features? ________________ 16. Key Mappings __________________ 17. Command Groups _______________________________ 18. Group Presentation Sequence 18.01 + How can I avoid seeing NEW groups? ____________ 19. NN Maintenance & nnmaster 19.01 Why does nnmaster stop collecting articles at the "junk" group? 19.02 How do I cope with "Incomplete MASTER file"? 19.03 Why isn't nnmaster working? 19.04 Why did nnmaster stop working? 19.05 Why do I get ".../MASTER not found"? 19.06 Why do I get "cannot open 'x' file" 19.07 Why do I get "Lost connection to server foobar" 19.08 Why doesn't nn display messages when not using NNTP? 19.09 Why do I get "Notice: no news has arrived for the last n hours"? 19.10 How can I fix a "Master/GROUPS conflict"? 19.11 + Why does expire take so long? ________ Appendix Glossary & Acknowledgments pack_date.c news.c ! nn-use-mh nn_elm nnalias lynxify ------------------------------ Subject: Viewing This Article From: Bill Wohler To skip to a particular question with Subject or number xx, use "/^S.*xx" with most pagers. In GNU Emacs type "M-C-s ^S.*xx", (or C-r to search backwards), followed by ESC to end the search. To skip to new or changed questions, use "/^S.*[!+]" with most pagers and "M-C-s ^S.*[!+]" in GNU Emacs. This article is in digest format. nn may have already broken this message into separate articles; if not, then type "G %". In rn, use ^G to skip sections. This article is treated as an outline when edited by GNU Emacs. Run "M-x describe-mode" to see available outline-mode commands. Useful commands are "M-x hide-body", "C-c C-s" (show-subtree) and "M-x show-all" Check out the hypertext version at Ohio State (see "What references exist for nn?"). Files available by ftp, man pages, and other Web pages, as well as cross-references like the one in this paragraph are just a click away. Numbers in square brackets denote the month and year of the last update. If you should need the Internet address, use nslookup or dig if you have them, or send mail to dns@grasp.insa-lyon.fr with "help" for a Subject. ------------------------------ Subject: 01. ***** Introduction ***** From: Bill Wohler ------------------------------ Subject: 01.01 Why should I use nn? From: Kim Storm nn is a menu based (point and shoot) netnews reader with a complete set of features to satisfy both the expert and the novice user. Since its first release in Denmark in 1984 (!), in Europe in 1988, and the global release in June 1989, it has replaced rn and other well-known news readers at many sites. Some of the key features of nn are: * Menu-based article selection prior to reading the articles with the articles sorted according to subject and posting time. This significantly reduces the time spent on news reading. No keystrokes are wasted on articles you don't want to read, and only the articles selected on the menu will be read. * Release 6.4 uses standard .newsrc, and can leave individual articles unread. * Digests are automatically split and presented as ordinary articles! You can transparently save and respond to individual sub-articles. * Full folder support: read, save, and delete individual articles. * Online help and manual. * Built-in unshar and patch functions. * Built-in uudecode function which will automatically unpack, concatenate, and decode multi-part postings. * Easy remapping of keys with advanced macro definition features. * Automatic kill & selection of articles based on subject or author. * User specified presentation sequence of news groups based on the news group hierarchy. * Whole classes of news groups can easily be unsubscribed permanently, e.g. talk.all and all.politics * Related groups can be merged and presented as a single group, e.g. comp.emacs and all gnu.emacs groups. * Blindingly fast 'search for subject'. On my Texas S1500 system, nn uses less than 20 seconds to find all articles on a specific subject among 64000 articles in all groups! * News collection and presentation is extremely fast, because nn uses its own database on top of the standard news system. * In a distributed environment, the database can be shared among all hosts on the network. Only one daemon is needed on the news server for all hosts. This works in a heterogeneous environment as well. * NNTP is also supported (using a local database for speed). Because of the database, nn starts almost equally fast (in a few seconds), no matter whether you have 100 or 10000 unread articles! The database takes up some disk space, but dramatically improves speed and functionality. The amount of disk space consumed is approx. 1Mb per 10000 articles. From: Nancy McGough Here's a comparison between nn and trn. [11.94] Notation + is an advantage o is neutral - is a disadvantage ? is something I don't know about nn 6.4.16 + Easier macro language. + More powerful kill/select abilities (ANDing, ORing). + Faster auto killing/selecting. + Can split/unsplit digests. + Dedicated newsgroup (news.software.nn) for discussion. + l command for flagging (with =) and leaving an article to deal with it later (this is better than trn's M command which just returns an article as unread next time). + Can easily mail a copy of a followup article to the author you're responding to. + Can easily mail articles you read/post to other addresses. + Incredibly customizable. + Can easily view and organize your folders (both mail and news) with nn. + Can merge newsgroups. + Can search all (or some) newsgroups for subject and/or author. + Can have spell check one of the options before posting/mailing article. + Can set default save directory for each newsgroup that is not necessarily. one of the interpreted strings (e.g., my default save dir for comp.editors is +vi) - Not very active participation by developer(s) in newsgroup (news.software.nn) . - Can only search on subject and/or author; also author is the "real name" . rather than full From line - Macro names limited to 2 characters (as far as I can tell). ? More powerful macro language. trn 3.0 + Newsgroup selection level is friendlier than nn's A/B (advance/back) commands (I like being able to see the list of newsgroups that I say no to). + True threading (uses References line). + Graphic view of thread ("article tree"). + Uses NOV (new overview database) for fast searching of headers; also NOV is used by other newsreaders (eventually nn too). + Can search body of article. + Can search full header. + Can reorder subscription list from within TRN (using m). + Can have macro names longer than 2 characters. + Active participation by trn developer in newsgroup (news.software.readers). + Can reverse the sort order (e.g., most recent at the top). + Intrinsic commands for going to root/leaf of a thread (in nn you need to do this with macros or a sequence of commands) + Intrinsic command for auto-selecting your articles. + Easy to change attribution line to whatever you want (using ATTRIBUTION). + When you post you get lots of blank headers (e.g., Followup-To) put into your editor. o Newsgroup (news.software.readers) for discussion but also contains lots of non-TRN discussion. - Harder macro language. ------------------------------ Subject: 01.02 What is the current version/status of nn? From: Bill Wohler The current version of nn is 6.4.18. Note: The development of nn has been taken over by Peter Wemm . Bug reports, fixes and suggestions should be sent to nn-bugs@dkuug.dk. Version 6.5.0 is in the final stages of beta testing. It will include many bug fixes, full NOV capability, a means of automatically killing threads of unread articles as well as automatically selecting subjects to articles that you've read, a mouse sensitive xterm interface, and the program nnsub to subscribe to newsgroups. The adventurous are invited to obtain the beta version. Please get the files README.FIRST and README.b3 in the beta directory, and report any bugs to Peter (see also "Where can I get nn"). [10.93] ------------------------------ Subject: 01.03 Where can I get nn? From: Bill Wohler The current master site for nn is ftp.uwa.edu.au. If you should need the Internet address, use nslookup or dig if you have them, or send mail to dns@grasp.insa-lyon.fr with "help" for a Subject. via anonymous ftp: [5.94] ftp://ftp.uwa.edu.au/pub/nn/nn-6.4.18.tar.Z 590k ftp://ftp.uwa.edu.au/pub/nn/nn-6.4.18.tar.gz 405k ftp://ftp.uwa.edu.au/pub/nn/beta/nn-6.5.0.b3.tar.gz 515k ftp://nexus.yorku.ca/pub/linux/sources/news/nn-6.4.18.tar.Z ftp://ftp.uu.net/networking/news/readers/nn/nn-6.4.18.tar.Z ftp://qiclab.scn.rain.com/pub/news/nn-6.4.18.tar.Z ftp://gumby.dsd.trw.com/pub/news/newsreaders/unix/nn-6.4.18.tar.Z ftp://mcsun.eu.net/news/readers/nn/nn-6.4.18.tar.Z ftp://sun.rz.tu-clausthal.de/pub/unix/network/apps/news/nn/nn-6.4.18.tar.Z ftp://ftp.cs.ruu.nl/NN-6.4/nn-6.4.18.tar.gz ftp://chalmers.se/pub/unix/nn/nn6.4.18.tar.Z ftp://ftp.luth.se/pub/infosystems/news/readers/nn/nn-6.4.18.tar.Z ftp://grasp1.univ-lyon1.fr/pub/nfs-mounted/ftp.univ-lyon1.fr/mirrors/unix/nn/nn-6.4.18.tar.gz ftp://ftp.academ.com/pub/nntp1.5/nntp.1.5.12.tar.Z 217k [12.94] ftp://ecs.soton.ac.uk/pub/news/nntp-1.5.11.tar.Z 210k [12.94] via mail: Send a note to ftpmail@decwrl.dec.com whose body contains "help" on a line by itself get information on getting ftp sources by mail. Send a note to mail-server@nluug.nl with a body containing one or both of the following as desired: send news/nn/nn6.4.16.tar.Z <- old send news/nntp/nntp.1.5.11.tar.Z mini-inews: As well as bringing mini-inews up to date, modifications have been made to remove the need for MINI_INEWS_HEADERS when setting up nn. Mini-inews will now create whatever headers are required including if desired, a Lines header or an incremental Message-ID numbering capability. --Jim Jagielski ftp://jagubox.gsfc.nasa.gov/pub/misc/NN-6.5.patches.tar.gz 43k ------------------------------ Subject: 01.04 What references exist for nn? From: Bill Wohler Book: The Whole Internet User's Guide & Catalog (2nd Ed), Chapter 8. Ed Krol. ISBN 1-56592-063-5. $24.95. 543 pages. O'Reilly & Associates, Inc. Book Orders: US and Canada: 800-998-9938. Fax: 707-829-0104. To get a list of non-US distributors, send a note to nuts@ora.com or call +1-707-829-0515. On-line Documents: gopher://unlhelp.unl.edu:2001/11/18menu/03menu/09menu [8.94] http://www.cis.ohio-state.edu/hypertext/faq/usenet/usenet/software/nn/quick-start/faq.html [12.94] ftp://ftp.halcyon.com/pub/ii/Internet/NN/quick_start [12.94] ftp://ftp.ii.com/pub/ii/Internet/NN [11.94] Papers: "Intro to nn" ftp://ftp.cso.uiuc.edu/doc/net/nn. where is one from doc(16k), ps(91k), tex(21k), jpn, and hqx. "A Short Guide to nn" ftp://ftp.unl.edu/pub/crc/docs/UNLINFO.GUIDE/UNLINFO.06.nn. where is one from txt(57k), ps(1.17M), rtf(68k) and hqx(65k). [8.94] "nn Helpsheets" ftp://ftp.unl.edu/pub/crc/docs/UNLINFO.HELPSHEETS/nn. where is one from 1.ps(636k), 2.ps(549k), hqx(209k). [8.94] Usenet: news.software.nn Mailing list: A mailing list for nn developers is nn@uniwa.uwa.edu.au. To join, please send a message to nn-request@uniwa.uwa.edu.au. nn archives: This document: via WWW http://www.cis.ohio-state.edu/hypertext/faq/usenet/usenet/software/nn/faq/part1 [12.94] via anonymous ftp: ftp://rtfm.mit.edu/pub/usenet/news.answers/usenet/software/nn/faq/part1 [12.94] ftp://ftp.uu.net/archive/usenet/news.answers/usenet/software/nn/faq/part1.Z [12.94] ftp://ftp.cs.ruu.nl/pub/NEWS.ANSWERS/usenet/software/nn/faq/part1 [12.94] via mail: Each of the following addresses is following by commands which should be included as the body of the message. mail-server@rtfm.mit.edu [12.94] send /usenet/news.answers/usenet/software/nn/faq/part1 mail-server@cs.ruu.nl [12.94] send /pub/NEWS.ANSWERS/usenet/software/nn/faq/part1 Signature and Finger FAQ: [11.94] via WWW: http://www.cis.ohio-state.edu/hypertext/faq/usenet/signature_finger_faq/faq.html via anonymous ftp: ftp://rtfm.mit.edu/pub/usenet/news.answers/signature_finger_faq via mail (see above for usage): mail-server@rtfm.mit.edu send /usenet/news.answers/signature_finger_faq ------------------------------ Subject: 01.05 How should I report bugs? From: Bill Wohler Send them to nn-bugs@dkuug.dk. [10.93] ------------------------------ Subject: 01.06 How can I convert from rn to nn? From: Ian Taylor Why bother? On our system some people use nn and some people use rn. In fact, since they both use the same .newsrc format, it is perfectly possible to use both. ------------------------------ Subject: 01.07 How can I make life simpler when starting nn for the first time? From: Peter Wemm Use nnsub and eep. See the enclosed documentation to see which you prefer. [note: only available in 6.5.0 beta]. [10.93] From: Bill Wohler The standard method is to run: nngrep -a | sed -e 's/ *$/!/' > .newsrc # add \ before ! in csh and then edit .newsrc, replacing the '!' with a ':' for those groups you're interested in. [8.94] From: Joerg Napp I think a nice way is to use the catch-up facility. Start nn -a0 and let nn catch up automatically. After some hours restart nn and unsubscribe to uninteresting groups having news articles. Restart nn the following day and continue unsubscribing. After one week, you have a nice .newsrc. ------------------------------ Subject: 01.08 ! Is there an X interface to nn? From: Toivo Pedaste The TCL/TK code provides a GUI interface with command menus and buttons, the use of the mouse to select articles, a scrolling panel for displaying articles and group selection using either of scrolling panel or cascading menus. If EXMH is available then there is also an internal editor for posting items and the ability to send and read MIME and PGP messages as well as to turn URL's into buttons for passing to MOSAIC (or another WWW reader). Tcl v7 and TK v3 are required to compile it. [05.95] ftp://ftp.uwa.edu.au/pub/nn/contrib/nn-tk.beta.11.tar.Z 835k In nn-6.5.0.b3, there is a simple text panel, with highlighting and mouse sensitivity within an xterm. [05.95] ------------------------------ Subject: 02. ***** Building nn ***** From: Bill Wohler ------------------------------ Subject: 02.01 What machines does nn run on? From: Bill Wohler Please send updates to nn-bugs@dkuug.dk. [10.93] Operating systems: 3b1 (UNIX-pc) with GCC SunOS 3 NeXT 1.0 SunOS 4.0 AIX 2.2.1 SunOS 4.1 SysV environment A/UX 1.1 System V 4.2 BSD and Ultrix systems Motorola System V/88 Release 3 4.3 BSD systems Texas Instruments System 1500 dnix 5.2 on DIAB DS90 NCR tower dnix 5.3 on DIAB DS90 ULTRIX systems (4.2 based) Dynix 3.0 on Symmetry Mips running riscos 4.0 or greater Fortune 32:16 Riscos 4.5 and later HPUX (series 300) Microport UNIX V.2 HPUX 2.1 (series 800) Amdahl UTS 2.0 HPUX 3.0 (series 800) SCO Xenix 2.2.1 (286) -- terminfo HPUX 6.5 or newer (series 300) SCO Xenix 286 -- termcap HPUX 7.0 Xenix386 [termcap version] Interactive UNIX on 386 Xenix386 2.3.2 w/development system Dynix/PTX on symmetry Tandy 68000/Xenix 3.2 Pyramid (and Targon 35) SCO UNIX V on 386 IRIX 3.1/3.2 Siemens SINIX Hardware platforms: 3b1 with GCC [no networking] MIPS processors Amdahl 5890 (big iron) Siemens MX300 AT&T 3b2 Pyramid (and Targon 35) Convex IBM 6150 DECstation 3100 Silicon Graphics 4D series Gould PN6000 SPARC processors HP9000 series 320 and 800 (at least) 80386 based SUNs [have network support] Intel 80286 [no networking] Sequent Symmetry Intel 80386 [no networking] VAX family Motorola 68000 family Motorola 88000 risc ------------------------------ Subject: 02.02 Is it possible to restrict the groups that users have access to? From: Alexis Rosen Create a new group for the people who can read the special groups. Call it "privnews", for example. (In /etc/group put the user id of each person who's in that group on that group's line.) Then change the group of the spool directory which contains the restricted newsgroup to "privnews" (leaving the owner as news), and set the mode to 750. From: Steve Simmons Note that this only works if you are not using NNTP to read news. There is currently no mechanism that will allow this to work with NNTP. [1.93] ------------------------------ Subject: 02.03 Unofficial patches for various bugs From: Bill Wohler Several bugs have been reported and fixed and the patches are available here for those not patient enough to wait until the next release. Remember, these are *unofficial* patches so back them out before patching in the next release of nn. You do not have to strip the two leading spaces before these patches. In fact you can run "patch -s -N < this-entire-faq", within the newsreader even! From: Paul Eggert The patch in Appendix "pack_date.c" fixes NN dateline parsing. Also, NN mishandles non-GMT time zones near short month boundaries due to NN's, er, somewhat unusual time stamp encoding. It is included in nn version 6.5.0. [10.93] From: Henrik Storner If you want to use NNTP, even if the server is the local host, use the patch in Appendix "nntp.c." [11.94] ------------------------------ Subject: 02.04 Can I set up nn securely? From: Bill Wohler Diffs are unfortunately not included, but this is what you can do: o Set shell-restrictions in the setup file. o Set and lock *every* variable which is used to execute commands. o Modify the source to avoid display/save/print files above the home-directory if shell-restrictions is set (mainly in save.c). o Modify the source to avoid changing directories if shell-restrictions is set. o Modify the source to avoid showing the contents of locked variables. In particular, the following variables should be locked: backup-folder-path, backup-suffix, bug-report-address, decode-header-file, editor, folder, inews, mail, mail-record, mailer, news-record, newsrc, pager, patch-command, printer, record, spell-checker, unshar-header-file ------------------------------ Subject: 03. ***** Command Input ***** From: Bill Wohler ------------------------------ Subject: 04. ***** Selection Mode ***** From: Bill Wohler ------------------------------ Subject: 04.01 How come nn doesn't show the Lines count? From: Bill Wohler Karl Kleinpaste writes: C News sites can turn on Lines: header creation (we do here), but the default has it turned off. I wish more would turn it on, as several newsreaders put it to use, and it's the most easily available metric of article size when showing the user a menu of available articles. Henry Spencer replies: We're unenthusiastic about Lines:, which is why it's off by default and little-documented. *The* most easily available metric of article size is not line count -- which is often slightly wrong, by the way -- but byte count, which is available without even parsing the headers. You can tell C News to add Lines: headers to articles *posted* locally, but C News has no provision for adding headers to traffic coming in from other sites. [Specifically, search for the string "uncomment" in inews, and uncomment those lines. --bw] But Paul Eggert and Luc Rooijakkers provide a solution: Remember, these are *unofficial* patches so back them out before patching in the next release of nn. You do not have to strip the two leading spaces before these patches. In fact you can run "patch -s -N < this-entire-faq", within the newsreader even! A variation of this patch is included in nn version 6.5.0. See Appendix "news.c" [10.93] Finally, Peter Wemm says that you'll always get the lines header if you run INN. ------------------------------ Subject: 04.02 Why does nn crash when an invalid letter is selected? From: Bill Wohler This is fixed in patch 17. [9.92] Your terminal modes will be screwed up after such an event, so you'll have to type ^J (or LINE-FEED) repeatedly until a prompt is seen, and then run stty -sane^J or reset ------------------------------ Subject: 04.03 How do I search for an author in a menu? From: Bill Wohler Add the following macro to your init file (~/.nn/init) and invoke via '_' (underscore). # _ does search on sender (as = does a search on subject) map menu _ ( :set select-on-sender find input :unset select-on-sender message ) [1.93] ------------------------------ Subject: 04.04 How do I select all articles in one fell swoop? From: Bill Wohler Type "=.*" and hit return. The pattern ".*" matches all subject lines. ------------------------------ Subject: 05. ***** Reading Mode Commands ***** From: Bill Wohler ------------------------------ Subject: 05.01 How can I see the original article with the current subject? From: Bill Wohler While reading an article, use "G RET RET RET". ------------------------------ Subject: 05.02 Why do articles without a Lines header appear empty? From: Gary Morris This problem only shows up if you have header-lines set to a string that includes "L". It is suspected that having the line count patch sets something that makes nn think there is a Lines header and then the header-string is telling it to display the Lines header but there isn't one and things get messed up. ------------------------------ Subject: 05.03 Can the article viewer/pager be changed? From: Bill Wohler No. And for good reason. There are too many commands in nn's pager that less, for example, doesn't know anything about. ------------------------------ Subject: 05.04 How can I read MIME (multi-media mail) articles? From: Bill Wohler Using metamail, you can do one of the following: "Print" the message. Use the "P" command and: set printer metamail "save" the message. Use "s" and specify "|metamail" as a filename. metamail can be found at: ftp://thumper.bellcore.com/pub/nsb/mm2.7.tar.Z [5.94] ------------------------------ Subject: 05.05 How can I read HTML (World Wide Web, Mosaic) articles? From: Bill Wohler Add the following to ~/.nn/init. The "lynxify" script is in the Appendix. map show ^F ( save-full "|lynxify" redraw ) When reading the article with HTML references, use C-f. Note that just "ftp://ftp.ii.com/pub/ii" won't be enough; you'd need to see something like Nancy McGough, Infinite Ink for lynx to pick it up. ------------------------------ Subject: 05.06 Why am I reading cross-posted articles more than once? From: Peter Wemm If you are using nnmaster and the cross-post detection is broken, then something's wrong that I'm not aware of. If you are using the NOV .overview database, and are not storing the full Xref header, then that will cause it. [5.94] From: Richard Todd If you're running INN, edit /usr/lib/news/overview.fmt and uncomment the line with 'Xref:full' in it. If you're running Cnews with the NOV patches, you'll have to edit mkov.c (I think) appropriately and recompile; the code for putting Xref: in the NOV database is in there, just commented out. [5.94] ------------------------------ Subject: 06. ***** Saving Articles ***** From: Bill Wohler ------------------------------ Subject: 06.01 How do I save files that I can read later with MH, elm, Mail, ...? From: Bill Wohler MH: Save your files with +$F/$N. For example, if you save message 10 in news.software.nn in this way, you will create a file called ~/News/news/software/nn/10. If you have a symbolic link from ~/Mail/news to ~/News, then you can look at your saved nn messages with "scan +news/news/software/nn". Mail Add "set mail-format" to your init file. ------------------------------ Subject: 06.02 What's the best way to save multi-part articles? From: Kim Storm All you have to do is to save the articles from the menu, e.g. W(rite) +file.* a b c d... where a b c d... are the articles on the menu you want to save. You can also save the selected articles on the menu with * (only on current page) or + (on all menu pages). ------------------------------ Subject: 06.03 When saving in +a/b/c keeps you from saving in +a/b. From: Bill Wohler , Andrew Swann This happens when default-save-file is $F. Try changing default-save-file to $F/$N (my favorite) to get, for example, +news/software/nn/1022, or $G to put everything in +news.software.nn. Finally, if you really did want the behavior of +$F, a compromise would be to use +$F. (Andrew's favorite) instead (one can use anything other than '.'). From: Harry Herman Alternatively, use +$F/$L, to place articles for news.software.nn in the file +/news/software/nn/nn. This has two advantages: 1) You can later read through the folder "nn" and save some of the articles under new folder names having to do with the topic. For example, you might save auto-select topics under +$F/auto-sel, that is, +/news/software/nn/auto-sel. 2) If at a later date, a new newsgroup is added below nn, articles can still be saved under that subgroup since +/news/software/nn is already a directory, not a folder. ------------------------------ Subject: 06.04 How can I change the default name of a save file? From: Bill Wohler The variable default-save-file controls how files are named. By default, the value of default-save-file is +$F (components of the newsgroup become directories, last component is the file name). This isn't a good idea (see also "When saving in +a/b/c keeps you from saving in +a/b"). However, most sites change that to +$G (file has the same name as the newsgroup) in the system init file. [8.94] From: Sven Guckes You can also set default save files on a per-newsgroup level. To do this, add the default save file to the newsgroup in your sequence (in ~/.nn/init). For example, news.software.nn +nn [8.94] From: Alex Martelli If you don't want to have any default at all, add unset suggest-default-save to ~/.nn/init. [8.94] ------------------------------ Subject: 06.05 ! Can I save all unread articles non-interactively into a file? From: Bill Wohler (See "Can I download news to my PC?"). From: Gerald Oskoboiny Yes, use the nnbatch(1) program. First, define an init file to select and save the articles. For example: set flow-control false unset embedded-header-escape on entry talk.bizarre '=' "^" 'S' "~/collected/$N" '+' end sequence talk.bizarre Then use nnbatch with this init file: nnbatch -Iinit2 talk.bizarre 2>&1 > /dev/null The above setup saves the entire newsgroup, but you could easily change it to use auto-selection with a killfile. Maybe: on entry comp.* 'S' "+$G/$N" '+' end ------------------------------ Subject: 06.06 ! Can I download news to my PC? From: Bill Wohler Henrik Roseno writes that alt.usenet.offline-reader provides some programs that are designed just for this purpose. Uqwk gathers the articles into files (use SOUP format--QWK format doesn't fully support Usenet headers). You can then zip them up and download them. Yarn is a program (DOS, OS/2) that lets you read them once you've downloaded them to your PC. Use archie to find them nearby although the locations are all listed in the a.u.o FAQ. [05.95] From: Rhys Weatherley Get a SOUP-compatible reader. QWK is fundamentally broken for news reading, whereas SOUP uses Usenet's native formats. Information about SOUP can be found in the FAQ for comp.os.msdos.mail-news. [11.94] From: Tony Nugent Take a look at ftp://oak.oakland.edu/SimTel/msdos/uucp/00_index.txt. You need to download great masses of the NNTP database in order to use Yarn! [11.94] From: Wesley Dudzinski You can find uqwk at ftp://ftp.gte.com/pub/uqwk. Yarn can be found at ftp://oak.oakland.edu/pub/msdos/offline. [11.94] (See also "Can I save all unread articles non-interactively into a file?"). ------------------------------ Subject: 07. ***** Folder Maintenance ***** From: Bill Wohler ------------------------------ Subject: 07.01 How can I remove old articles from folders? From: Kim Storm Just open the folder in the usual way and C(ancel) the articles you want to remove from the folder. When you leave the folder, nn will rewrite the folder with the "cancel"ed articles removed. ------------------------------ Subject: 08. ***** Posting and Responding to Articles ***** From: Bill Wohler ------------------------------ Subject: 08.01 How can I post prewritten articles with nn? From: Kim Storm nnpost will construct the header for the posted article, so it requires several arguments to be specified before the article is posted, e.g. a newsgroup name and a subject. If some arguments are missing, nnpost will prompt for the missing arguments. If your pre-written article includes a full header, then you should not use nnpost; instead you should feed the article to "inews -h" directly (which is what nnpost does after building the header from the arguments). ------------------------------ Subject: 08.02 How can nn automatically append my signature? From: Bill Wohler Put your signature in a file called .signature in your home directory, and use: set append-signature-post set append-signature-mail # if desired set query-signature # if you want confirmation. (See also "How do I eliminate double signatures?") and (See also "Can the signature come from a different file or program?") and the Signature FAQ (see also "What references exist for nn?") [11.94] ------------------------------ Subject: 08.03 How do I eliminate double signatures? From: Bill Wohler Double signatures occur when both nn and inews append $HOME/.signature. If you want just inews to append your signature, use: unset append-signature-post This is actually the default, but you can unset this variable if your nn administrator has mistakenly turned it on. If you want just nn to append your signature, move your signature to some other place than $HOME/.signature (see also "Can the signature come from a different file or program?"). ------------------------------ Subject: 08.04 Can the signature come from a different file or program? From: Bill Wohler If you want nn to append your .signature file, you can copy nn's aux file (ie. /usr/local/lib/nn/aux) to your .nn directory and set the mail-script and news-script variables to ~/.nn/aux. In your copy of the aux script, you can either specify a different place for your .signature file (like $HOME/.nn/signature) or you can get fancy: you can use specific .signatures for certain groups (saved in variable "G"), or use the output of a program. See also the Signature FAQ (see also "What references exist for nn?"). [11.94] From: Tom Christiansen Tired of the same old signature? Want different signatures for different newsgroups? Here's a program to help you out. The way it works is to have .signature be a named pipe, so if you don't have named points, just say 'n'. The sigrand program then feeds stuff down the pipe everytime someone wants to read it. That way it works for more than just news, but for anything that wants to read your .signature, like a mailer. You have your choice of three kinds of signatures: 1) random (short) fortune from "fortune -s"; you get these if you don't have a global sig file. 2) random fortune from ~/News/SIGNATURES [global sig file] 3) random fortune form ~/News/(newsgroup)/SIGNATURES [local sig files] Send mail for more details. [11.94] ------------------------------ Subject: 08.05 How do I save my posts, followups and replies automatically? From: Don Mullins In your nn init file, use the following lines: set news-record file set mail-record file to place posts and followups in one file and replies in another, or to put everything in a single file, use: set record file Replace "file" with the absolute path (~ == home directory ok) of your desired file. All files are saved in mailbox format. [9.92] ------------------------------ Subject: 08.06 Can I use my editor to edit posts and replies? From: Bill Wohler Yes. Set the environment variable EDITOR as desired. If you like emacs: $ EDITOR=emacs; export EDITOR # sh, ksh, bash % setenv EDITOR emacs # csh, tcsh. Alternatively, you can add: set editor emacs to ~/.nn/init. [8.94] From: epstein@ta6.cs.uiuc.edu (Milt Epstein) If you need to pass arguments to your editor, create a script which contains your editor and desired arguments. For example: #!/bin/sh /local/all/emacs -nw ${1+"$@"} Then set your EDITOR or editor variables, as above, to this script. ------------------------------ Subject: 08.07 Can I use my mailer to send mail? From: Bill Wohler Yes. See the variables mail-script, mailer, and mailer-pipe-input. The following show how you can have nn use elm and MH to deliver mail. Note that you are not placed "in" your mailer--the mailer is merely used to deliver a message that you've already completed. [12.94] The original idea of using MH (namely, comp) to send mail from nn came from Jaap Vermeulen , but he wouldn't recognize what I did to it. I also used suggestions from John Romine , Tom McCain , and Brian Exelbierd . Add set mail-script nn-use-mh to your init file. See Appendix "nn-use-mh" for the script. In addition, you can contact Ray Davis for some scripts that sort of turn nn into a MH front end by providing macros to save, delete and refile articles in MH folders. To use elm to send the messages, add the following to ~/.nn/init: set mailer nn_elm unset mailer-pipe-input and see Appendix "nn_elm" for the script. [1.93] ------------------------------ Subject: 08.08 Can nn use aliases when sending mail? From: Bill Wohler Yes. See the variable mail-alias-expander, and use the script in Appendix "nnalias." You don't need to bother though if you've set the "mailer" variable to a mail program that handles aliases already. [12.94] ------------------------------ Subject: 08.09 How can I set a different Organization name? From: Bill Wohler (See "How can I customize my mail headers for mail and posting?") [9.92] ------------------------------ Subject: 08.10 How can I make mail replies go to a different machine? From: Bill Wohler (See "How can I customize my mail headers for mail and posting?") [9.92] ------------------------------ Subject: 08.11 How can I change how my real name appears? From: Bill Wohler On BSD UNIX systems, you can run the command chfn(1) to change your real name. If you don't want to do this, or can't, please (see also "How can I customize my mail headers for mail and posting?") [9.92] ------------------------------ Subject: 08.12 How can I customize my mail headers for mail and posting? From: Bill Wohler Headers can be modified or appended to by creating the variables mail-header (for replies) and news-header (for posts and followups) in the init file. You can include any headers that you want; separate multiple headers with semi-colons. For example: set mail-header From: Joe Smith ;Reply-To: js@cc.edu; Organization: CC University set news-header From: Joe Smith ;Reply-To: js@cc.edu; Organization: CC University Note that these lines are split for readability--the value of these variables must appear on a single line. In addition, do not insert a space between semi-colons and the next header. A Reply-To header is useful when your system generates either an unwanted or blatantly wrong return address for you. If this header is present, then mailers use it instead of the system generated From header. A From header is useful when you want to change how your real name appears to nn readers, but you don't want to change it (or can't) on your system. Warning: only do this if you're sure you can create a RFC 822 compliant From header. [9.92] ------------------------------ Subject: 08.13 + How do I post locally? From: Sven Guckes Post to local news hierarchies. The "Distribution:" header field is often ignored these days. ------------------------------ Subject: 08.14 + Can I read my mail with nn? From: Bob MacDowell Yes. Move your mbox into mbox.1, for example, since nn does not handle file locking. Then: nn mbox.1 Here's an example ~/.nn/init file that will accomplish this: set header-lines *CAnW map show m next-article sequence NEW RC You can also use 'nn -f mbox.1 in which case it'll not sort them at all; just show them in the sequence it finds them in the file. Sometimes this is handy. Another *neat* trick is that you can compress mail-files with nn: nn elbows.1 open the mail-file = select by Subject ^ RET select all articles (with a beginning) O output to file, but strip most of the headers mbox.1a RET y specify filename, and yes, create it + output all selected articles This procedure results in a 20-40% reduction in file size, by tossing all the "Received:", "Errors-To:", "X-Mailer:", "NNTP-Posting-Host:", etc. header fields. [05.95] ------------------------------ Subject: 09. ***** Jumping to Other Groups ***** From: Bill Wohler ------------------------------ Subject: 09.01 How can I see which newsgroups are available? From: Bill Wohler Also try using '?' when going to a group with the 'G' command. Note that successive '?'s will display more groups when there is not enough room to display all choices at once. Group completion is achieved with ' ' (space). Finally, the programs "nnsub" or "eep" can be used to easily view newsgroup names and descriptions and also to subscribe to groups. These programs are in the "contrib" area of the sources in 6.5.0. [10.93] From: Sven Guckes To see a list of all news groups with a short description, use the command ":post" and type '?'. To list groups that match a regular expression (ie. pattern), use "/pattern" instead of '?'. ------------------------------ Subject: 09.02 Why do I get *NO*UPDATE* and what can I do about it? From: Sven Guckes When entering a group with a search command nn does not do updates as it assumes you are only "visiting" this group to look up some text. In this case, nn enters a new "level" of information retrieval, indicated by "". It also tells you that there won't be any updates by the "*NO*UPDATE*" on the top of the menu. If you want to go to a group and *read* it (that is, you want nn to remember which articles you have read, selected, or left for reading) then you must *jump* to it. Use the 'G' command followed by the 'j' (jump) subcommand. ------------------------------ Subject: 10. ***** Automatic Kill and Selection ***** From: Bill Wohler ------------------------------ Subject: 10.01 Can non-selected subjects be automatically placed in my kill file? From: Keld J|rn Simonsen The two variables, ignore-re and auto-select-rw, accomplish this task. They are available in version 6.5.0. In the meantime, patches may be obtained from ftp://dkuug.dk/pub/nn6.4/nn6.4.killunread. [1.93] ------------------------------ Subject: 10.02 Can I automatically kill articles based on the Newsgroups header? From: Richard M. Mathews , Dave Shaver This is how one can automatically kill crossposted articles, etc. First, manually either add the following to your .newsrc to mark all articles read forever: alt.flame: 1-2147483647 or add the following to your .nn/kill file to kill all articles in the group: alt.flame:!s/:^ The former method may break down if you ever use nngoback to reset numbers in your .newsrc. The latter method could cause difficulty if you ever actually want to read articles in that group. Near the top of your sequence in your init file put !alt.flame. alt.flame This makes alt.flame, but not its subgroups, be included as the first thing in your sequence; so all articles in it are killed before they appear in any other groups. You might want to put NEW above this so you can see if new groups are getting off to a bad start with lots of alt.flame crossposting. Later in the sequence put % alt % This allows the rest of the alt hierarchy, including subgroups such as alt.flame.spelling (if you subscribe to it), to get included at that point in the sequence. Along with using the default settings of cross-filter-seq=true and cross-post=false, this works fine to nuke the crossposted articles. ------------------------------ Subject: 10.03 How can I find all articles having to do with a certain topic? From: Bill Wohler nngrab invokes nn on all articles whose subject or keyword fields contain a desired keyword. This shows one how important it is to use descriptive subjects and keywords when posting articles. For more information, read the manual page. ------------------------------ Subject: 10.04 Can I select one article in a thread when auto-select-subject set? From: Steven Grady Define the following macro to toggle auto-select-subject. map menu A ( :local auto-select-subject :toggle auto-select-subject ?auto-select-subject=on echo "Auto-select on" ?auto-select-subject=off echo "Auto-select off" ) Use the '.' command. ------------------------------ Subject: 10.05 Can one search for patterns in the entire article from the menu? From: Peter Wemm No. However, in 6.5.0, there will be an additional option under the 'G' command to create a submenu containing articles that contain the desired string. As it is not yet well tested, it will be a compile time feature. [10.93] ------------------------------ Subject: 10.06 How come more articles get selected than I expect? From: Dave Hayes Check the setting of subject-match-parts. If this is on, then your subjects are considered matched if they match up to the first digit. For example if subject-match-parts is on, the subjects: someprogram Part 1/5 someprogram Part 2/5 are considered matches. So are v12345: someprogram Part 1/5 v12346: anotherprogram Part 1/23 as the "v" is identical up to the first digit. If you want to use subject-match-parts in a "comp.sources" type group, set subject-match-offset (the character position that matches are started from) to be beyond any digits that might appear in the first part of the subject. ------------------------------ Subject: 10.07 Any plans for trn-ish thread following? From: Peter Wemm "Yes, it's planned." [10.93] ------------------------------ Subject: 10.08 Can one kill articles based on the number of lines? From: Bill Wohler No. [11.94] ------------------------------ Subject: 10.09 ! Why is nn 6.5.0b3 ignoring my kill file? From: Pierre Lewis A workaround for this is to add the following to ~/.nn/init. [05.95] on start-up :compile end ------------------------------ Subject: 11. ***** The Format of the Kill File ***** From: Bill Wohler ------------------------------ Subject: 12. ***** Miscellaneous Commands ***** From: Bill Wohler ------------------------------ Subject: 12.01 Can I choose newsgroups as I do articles, ie. with a menu? From: Peter Wemm No, not yet. Sorry. However, progress in this direction has been made--if you care to finish the work, please contact me. [12.92] Outside of nn, you may wish to check out eep which is in the contributed area in 6.5.0. [10.93] (See also "How can see which newsgroups are available?") [1.93] ------------------------------ Subject: 12.02 How do I unsubscribe to all groups? From: Sven Guckes The file .newsrc in your home directory contains the information about the newsgroups, their subscription status and the numbers of the read articles. A colon (':') indicates a subscribed group, and an exclamation mark ('!') indicates an unsubscribed group. All you need to do for unsubscribing to all newsgroups is to edit .newsrc. You can do this with your favourite editor, or sed -e 's/:/!/' $HOME/.newsrc > foo mv foo .newsrc If you use csh, you have to escape the '!' with a '\'. [3.93] ------------------------------ Subject: 12.03 How can I get nn to stop adding new newsgroups? From: Jason A Chase Add set new-group-action 0 to ~/.nn/init. [8.94] From: Bill Wohler However, what you might want to do instead is not see new groups in selected hierarchies. I've added the following to my sequence (in ~/.nn/init): # Don't bother with new groups in these hierarchies. !:N alt,de,u3b,vmsnet,eunet,bionet,bit,biz,trial,psi,k12,nirvana The key one is alt! [8.94] ------------------------------ Subject: 13. ***** The Init Files ***** From: Bill Wohler ------------------------------ Subject: 13.01 How do I customize nn or change nn's behavior? From: Bill Wohler Modify the file ~/.nn/init. See the section "The Init Files" in the man page for more details. So that you know what else might be affecting nn, here's the beginning of that chapter: The init files are used to customize nn's behavior to local conventions and restrictions and to satisfy each user's personal taste. Normally, nn reads up to three init files on start-up if they exist (all init files are optional): $LIB/setup A system-wide file located in the library directory. This file is always loaded before any other init file (even when the -I option is specified). It cannot contain a group presentation sequence. $LIB/init Another system-wide (global) init file located in the library directory. This file may be ignored via the -I option. ~/.nn/init The private init file located in the user's .nn directory. It is read after the global init file to allow the user to change the default setup. ------------------------------ Subject: 13.02 How can nn be used when multiple users share the same login? From: Nancy McGough , Bill Wohler Create aliases of the form: alias nn-userN 'nn -I$HOME/.nn/init-userN' # csh alias nn-userN='nn -I$HOME/.nn/init-userN' # bash, ksh Where $HOME/.nn/init-userN are separate init files for the users (or different environments). Ensure that the following variables are different between the files: newsrc news-header news-record mail-header mail-record folder sequence [11.94] ------------------------------ Subject: 14. ***** Variables and Options ***** From: Bill Wohler ------------------------------ Subject: 14.01 Setting new-group-action to "ask before adding" doesn't work. From: Peter Wemm Take NEW out of your sequence--it's redundant. There was also a small bug (fixed in 6.5.0) which caused it to not to work in certain situations. [10.93] From: Bill Wohler By the way, if you find that taking NEW out of your sequence has no effect, it may be that you're being affected by the system init file (usually in /usr/local/lib/nn/init). If this is the case, add "@" to the beginning of your sequence, like this, which causes the system init file to be ignored: sequence @ ------------------------------ Subject: 15. ***** Macro Definitions ***** From: Bill Wohler ------------------------------ Subject: 15.01 Is there a library of macros and other nn features? From: Bill Wohler When complete, it will be a companion posting to this one. If you have not mailed me your init file, or you have made substantial changes since the last time, please send it in. If anyone is handy in perl or awk and would like to write some scripts to reduce multiple init files to variable summaries (like the one I posted a long time ago), macro definitions and presentation sequence tricks, I would like to talk to you. From: --Nancy McGough In the meantime, check out ftp://ftp.ii.com/pub/ii/Internet/NN. [11.94] ------------------------------ Subject: 16. ***** Key Mappings ***** From: Bill Wohler ------------------------------ Subject: 17. ***** Command Groups ***** From: Bill Wohler ------------------------------ Subject: 18. ***** Group Presentation Sequence ***** From: Bill Wohler ------------------------------ Subject: 18.01 + How can I avoid seeing NEW groups? From: Bill Wohler Use the !:N entry in the init file sequence. [05.95] # Don't bother with new groups in these hierarchies. !:N alt,u3b,vmsnet,bionet,bit,biz,trial,psi,k12,nirvana,seattle,courts ------------------------------ Subject: 19. ***** NN Maintenance & nnmaster ***** From: Bill Wohler ------------------------------ Subject: 19.01 Why does nnmaster stop collecting articles at the "junk" group? From: Kim Storm This can occur when you access news via NNTP. Older nntp servers have a limitation of 4000 articles in a group, and junk may easily exceed this which makes the nntp server crash. To overcome the problem, edit the GROUPS file to add the X flag on the junk group, run nnmaster -G, and then nnmaster will ignore the junk group. From: Mark Rawling In nntp_dir/common/conf.h, you can either increase MAX_GROUPS (normally 4096) or you can set #define DYNAMIC_ART_ARRAY (normally #undefed). In either case, you obviously have to recompile nntp. Normally, new groups are added as they come in, but the news administrator should monitor the junk newsgroup and either make new newsgroups for the orphan messages, or ensure that the feed stops sending bogus messages. [3.93] ------------------------------ Subject: 19.02 How do I cope with "Incomplete MASTER file"? From: Bill Wohler (See "Why isn't nnmaster working?") ------------------------------ Subject: 19.03 Why isn't nnmaster working? From: Stew Ellis After the make, did you remember to: Run ./inst to install the files? Run ./inst INIT to initialize the database? Nnmaster mails error messages to the user who owns him (typically "news"). Check this mailbox for clues. If nnmaster -r or -D did not work, then neither did nnmaster -I (or ./inst INIT from the install directory). Once you fix the permissions (see Paul's answer below), you need to rerun the initialization step. From: David R. Hieb If nnmaster dies and updates the Log file with "Incomplete MASTER file", it could be you're not running the latest version. From: Paul Bickerstaff If, when you start your nnmaster, it just exits quietly, it could be that your permissions are incorrect. Ensure that all directories in the nn library are owned by news (or the owner that you configured nn with). From: Jim Jagielski Make sure that there is a 'news' entry in passwd and group since nnmaster is run setuid/setgid to news and the files and directories that nnmaster needs to access are owned and writable by news. [9.92] Another problem could be in the way it is started. Two related solutions are presented. From: David B. Thomas /etc/rc exits before the child has had the chance to setpgrp(). Putting "sleep 5" at the end of /etc/rc fixed it. From: Jeffery Small Another similar solution involved inserting a "sleep 10" at the beginning of /etc/daemons/nnmaster.init file. From: David R. Hieb It could be you're not running the latest version. ------------------------------ Subject: 19.04 Why did nnmaster stop working? From: Phil Howard Perhaps you have a corrupted database that can't be fixed. In this case, run "./inst INIT" from the installation procedure. [5.94] From: Stew Ellis nnmaster may exit when it encounters a corrupt header in an article from a nntpserver. Restart nnmaster in debug mode (nnmaster -D) to see which group contains the offending article. Ignore this group until the offending article has expired by editing the GROUPS file, adding the `X' flag to the newsgroup and running "nnmaster -G". Restart collection of the newsgroup by removing the `X' flag and running "nnmaster -G". [8.94] (See also "Why isn't nnmaster working?") ------------------------------ Subject: 19.05 Why do I get ".../MASTER not found"? From: Bill Wohler The problem of the NN port to the Atari ST is, that you have to build an "active" file (NN format, not HERMES-like!!) in /usr/lib/news before running nnadmin -I. You can build this file by using the included "buildact.tos." Buildact.tos creates a UNIX-like /usr/lib/news/active from /usr/lib/hermes/active. [9.92] ------------------------------ Subject: 19.06 Why do I get "cannot open 'x' file" From: Sami Tikka If you get a message like, Fatal system error: alt.activism (6): cannot open 'x' file (mode=82, errno=2) you haven't initialized your database. As root, run the following command "./inst INIT" in the nn source directory. See the file INSTALLATION for more information. [1.93] ------------------------------ Subject: 19.07 Why do I get "Lost connection to server foobar" From: Jeff Beckley It's possible that the two database files for a newsgroup (nnn.x and nnn.d) don't exist. Go into nnadmin and force a recollect of the newsgroup. Most of the newsgroups (which are missing nnn.x and nnn.d files) after the first problem newsgroup might be automatically collected without a problem. If there are a large number of these problem groups, it might be easier just to rebuild the whole database: kill nnmaster, run "./inst INIT" as root in the source directory and restart nnmaster. If the group in question has too many articles (>4000), it will cause older NNTP implementations to choke (see "Why does nnmaster stop collecting articles at the "junk" group?" for a fix). [3.93] From: Darren Hosking These are not relevant if you use NOV and not nnmaster. [11.94] ------------------------------ Subject: 19.08 Why doesn't nn display messages when not using NNTP? From: Michael Masterson If the database was built with NNTP, then nn has to use NNTP to read the messages. This is not true in the other direction: nn clients can use NNTP to read the messages from a database built via NFS. The moral: build the database via NFS if you intend to use nn with either NFS or NNTP. [8.94] ------------------------------ Subject: 19.09 Why do I get "Notice: no news has arrived for the last n hours"? From: Bill Wohler (See "Why did nnmaster stop working?"). [8.94] ------------------------------ Subject: 19.10 How can I fix a "Master/GROUPS conflict"? From: Guan-Hsong Hsu Run "nnmaster -G". [11.94] ------------------------------ Subject: 19.11 + Why does expire take so long? From: From: "Eric M. Boehm" Use the -E2 flag with nnmaster(8) to use a faster expiration strategy. [05.95] ------------------------------ Subject: Glossary From: Bill Wohler , Richard Mathews MIME "Multi-purpose Internet Mail Extensions" (see RFC 1341). Allows for transmission of binary data and of text using international character sets. NNTP "Network News Transport Protocol" (see RFC 977). Used when transmitting news between servers or between reader and server. C News A news server. Successor to A News and B News. INN "Inter-Network News". Another news server. NOV "News OverView". A feature of INN and an add-on package to C News which allows saving "overview" files summarizing the contents of each newsgroup. XOVER An extension to NNTP to allow access to "overview" information. ------------------------------ Subject: Acknowledgments From: Bill Wohler I'd like to thank the following people for providing ideas on the layout of this article: Joe Wells Richard M. Stallman David Elliott Tom Christiansen Eugene N. Miya We are also grateful to the individuals mentioned below and in the text of this document who have provided answers or other information to make this a better document. I regret that it is possible that some names have been accidently omitted. I would also like to thank all the readers of news.software.nn. Kim Storm Sven Guckes ------------------------------ Subject: pack_date.c From: Paul Eggert *** old/pack_date.c Wed Apr 17 01:32:40 1991 --- new/pack_date.c Thu Jun 4 20:03:02 1992 *************** *** 4,9 **** --- 4,11 ---- * Calculate an approximate "time_stamp" value for a date * string. The actual value is not at all critical, * as long as the "ordering" is ok. + * The current algorithm mishandles non-GMT time zones near + * short month boundaries, but this is rare in real news. * * The result is NOT a time_t value, i.e. ctime() will * not produce the original Date string. *************** *** 256,262 **** res *= 24 * 60; res += (hour * 60) + min; ! return res + tzone(date); } --- 258,264 ---- res *= 24 * 60; res += (hour * 60) + min; ! return res - tzone(date); } ------------------------------ Subject: news.c From: Paul Eggert , Luc Rooijakkers RCS file: news.c,v retrieving revision 1.1 diff -c2 -r1.1 news.c *** news.c 1990/10/23 21:37:38 1.1 --- news.c 1992/06/19 23:17:05 *************** *** 231,235 **** char *parse_header(); struct stat statb; ! int retry; FILE *f; #ifdef NNTP --- 231,235 ---- char *parse_header(); struct stat statb; ! int c, retry; FILE *f; #ifdef NNTP *************** *** 300,309 **** body = parse_header(f, art_hdr_field, modes, buffer1); - news.ng_lines = news.ng_xlines ? atoi(news.ng_xlines) : -1; if (news.ng_from == NULL) news.ng_from = news.ng_sender; ! if (modes & FILL_OFFSETS) { art->fpos = news.ng_fpos = ftell(f); fseek(f, (off_t)0, 2); news.ng_lpos = ftell(f); --- 300,328 ---- body = parse_header(f, art_hdr_field, modes, buffer1); if (news.ng_from == NULL) news.ng_from = news.ng_sender; ! if (modes & FILL_OFFSETS) art->fpos = news.ng_fpos = ftell(f); + if (news.ng_xlines) + news.ng_lines = atoi(news.ng_xlines); + else { + #ifdef NNTP + if (use_nntp && lazy) { + off_t fpos = ftell(f); + fclose(f); + f = nntp_get_article(art->a_number, 2); + if (f == NULL) return NULL; + lazy = 0; + fseek(f, fpos, 0); + } + #endif + news.ng_lines = 0; + while ((c = getc(f)) != EOF) + if (c == '\n') + news.ng_lines++; + } + + if (modes & FILL_OFFSETS) { fseek(f, (off_t)0, 2); news.ng_lpos = ftell(f); ------------------------------ Subject: ! nn-use-mh From: Bill Wohler #!/bin/sh # Obtain value of $WORK and $RECORD . ${HOME}/.nn/.param # Append Fcc: +folder to headers. The folder is specified in # mail-record. if [ "$RECORD" != "" ]; then awk ' { if ($0 == "" && !done) { print "Fcc: +'$RECORD'"; done = 1; } print; }' $WORK > /tmp/aux.$$ && mv /tmp/aux.$$ $WORK fi # Compose and send the mail if [ "$FIRST_ACTION" = "send" ]; then send $WORK rm -f ,$WORK else # Compose and send the mail comp -form $WORK rm -f $WORK fi ------------------------------ Subject: nn_elm From: Phil Kernick #!/bin/sh # # nn_elm # # 07 Aug 91 V1.0 # # Massage a mail message from nn into a form that elm can use # (c) 1991 Phil Kernick Wizard Software # # 10 Nov 94 V1.1 Escape quotes in subject -- Dave Wolfe eval `awk ' BEGIN { FS = ":"; dq = sprintf("%c", 34); bs = sprintf("%c", 92); headers = 0; to = ""; subject = ""; } /^.*: / { headers++; if($1 == "To") to = dq substr($0, 5) dq; if($1 == "Subject") { subject = substr($0, 10); gsub(/\"/, bs dq, subject); subject = dq subject dq; } } /^$/ { printf("tail +%d %s | elm -s %s %s > /dev/null\n", headers+2, mail, subject, to); exit; }' mail=$1 $1` exit $? ------------------------------ Subject: nnalias From: Scott Hannahs #!/bin/sh # # nnalias -- expands aliases from ~/.mailrc file for nn. # # To use, put the following in your ~/.nn/init file: # # set mail-alias-expander nnalias # and put this file somewhere in your path, making it executable. I use # set mail-alias-expander /usr/local/lib/nnalias # but the choice is up to you. # # Written by Scott Hannahs, Bitter National Magnet Lab, MIT, August 1991 # Complaints, comments, ideas to sth@slipknot.mit.edu # Tested on Silicon Graphics, IRIX 3.3.1 # # Minor banging by to handle alias value fields # which contain doublequote characters, e.g. # # alias Foo "Foobar the Great " # # (the doublequotes are stripped in the expansion), and to handle multiple # spaces after the token "alias". # # Also added some error detection and signal traps; tested on SunOS 4.1.1. # # Exit codes: 0 -- normal termination # 1 -- parm error # 2 -- file does not exist # 3 -- trap # # Thanks to bug reports from # Andy Jacobs and others # if [ z$1 = z ]; then myname=`basename $0` echo "$myname: usage is $myname workfile" exit 1 fi if [ ! -f $1 ]; then myname=`basename $0` echo "$myname: $1 does not exist or is a directory" exit 2 fi TMP_DIR=/usr/tmp trap "rm -f ${TMP_DIR}/nn.alias.$$ ; exit 3" 0 1 2 3 15 ALIAS_LIST="" ADDRESS_LIST="`head -1 $1 | sed -e s/To://`" until [ "$ALIAS_LIST" = "$ADDRESS_LIST" ] ; do ALIAS_LIST="`echo "$ADDRESS_LIST"| sed -e 's/,/ /g' `" ADDRESS_LIST="" for ALIAS in $ALIAS_LIST ; do ADDRESS=`grep '^[ ]*alias[ ][ ]*'"$ALIAS"'[ ]' ${HOME}/.mailrc |\ sed -e s/'^[ ]*alias[ ][ ]*'"$ALIAS"'[ ][ ]*'// |\ sed -e s/'"'//g` if [ "$ADDRESS" ] ; then ADDRESS_LIST="$ADDRESS_LIST $ADDRESS" else ADDRESS_LIST="$ADDRESS_LIST $ALIAS" # for elm alias expansion use the following line instead of the previous. # ADDRESS_LIST="$ADDRESS_LIST "`elm -c "$ALIAS" | cut -f3 -d\ ` fi done done echo "To:${ADDRESS_LIST}" > ${TMP_DIR}/nn.alias.$$ tail +2 $1 >> ${TMP_DIR}/nn.alias.$$ mv -f ${TMP_DIR}/nn.alias.$$ $1 exit 0 ------------------------------ Subject: lynxify From: Dr. Richard Botting #!/bin/sh # Author: Dr. Richard Botting # Posted to comp.infosystems.www.users on 9 June 94 # Prepare input with embedded html tags for lynx and then view it file=/tmp/mailynx.${$}.html (echo "
" ; cat ; echo "
" )> $file lynx $file < /dev/tty rm $file ------------------------------ Subject: nntp.c From: Henrik Storner *** nntp.c.old Sat Nov 5 19:54:57 1994 --- nntp.c Sat Nov 5 19:55:36 1994 *************** *** 759,765 **** strncpy(host, (gethostbyname(host))->h_name, sizeof host); server_real_name = (gethostbyname(nntp_server))->h_name; ! use_nntp = (strcmp(host, server_real_name) != 0); if (use_nntp) { freeobj(news_active); --- 759,765 ---- strncpy(host, (gethostbyname(host))->h_name, sizeof host); server_real_name = (gethostbyname(nntp_server))->h_name; ! use_nntp = 1; if (use_nntp) { freeobj(news_active); Local Variables: mode: outline outline-regexp: "^Subject:" fill-prefix: " " End: .