Archive-name: nn-faq Last-modified: $Date: 1991/10/09 10:15:41 $ Version: $Revision: 91.10 $ news.software.nn readers: sorry this is a bit late, i was cruising through france, spain and portugal. the only other planned delay of the faq is the january issue since i'll be home in san francisco over christmas. --bw ***** This is a living list of frequently asked questions on NN. The point of this is to circulate existing information, and avoid rehashing old answers. Better to build on top than start again. This article is posted monthly. If it has already expired and you're not reading this, feel free to request copies directly from me ;-). When someone posts a frequently-asked question, I will point out to them that the answer is here to ensure that everybody gets their question answered fully and to eliminate unnecessary traffic in this newsgroup. Posted answers that are in the FAQ are just as annoying as posted questions that are in the FAQ! Your comments, additions and fixes to this list are welcome: please send them to Bill Wohler . Complete, accurate and grammatically correct answers are appreciated to reduce the time I have to take to test or edit your answers. . Table of Contents (+ new, - deleted, ! changed) Introductory 1. Why should I use nn? 2. Where can I get nn? 3. What references exist for nn? 4. How should I report bugs? 5. How can I convert from rn to nn? 6. How can I make life simpler when starting nn for the first time? 7. Is Kim male or female? Building nn +10. What machines does nn run on? Using nn !20. How do I save files that I can read later with MH, elm, Mail, ...? 21. How come nn doesn't show the Lines count? 22. How can I find all articles having to do with a certain topic? 23. How can I set a different Organization name? 24. Can all non-selected subjects be automatically placed in my kill file? 25. Can I automatically kill articles based on the Newsgroups header? 26. How can I select one article in a thread with auto-select-subject set? 27. Is there a library of macros and other nn features? 28. Can one search for patterns in the entire article from the menu? 29. How can I remove old articles from folders? 30. What's the best way to save multi-part articles? 31. When saving in +a/b/c keeps you from saving in +a/b. 32. Can I use my mailer to send mail? +33. How can I see the original article with the current subject? +34. Can I choose newsgroups as I do articles, ie. with a menu? nnmaster 40. Why does nnmaster stop collecting articles at the "junk" group? . Viewing This Article To skip to a particular question numbered xx, use "/^.xx\." with most pagers. In GNU Emacs type "M-C-s ^.xx\.", (or C-r to search backwards), followed by ESC to end the search. To skip to new or changed questions, use "/^[!+]" with most pagers and "M-C-s ^[!+]" in GNU Emacs. To get an overview of just the questions in GNU Emacs, type "M-2 C-x $". Use "C-x $" to display the text again ("M-0 C-l C-x $" ensures that the current cursor location remains on the screen). Contributer's E-Mail addresses can be found at the bottom of this article. . Questions and Answers . Introductory 1. Why should I use nn? 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 subarticles. * 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 heterogenous 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. 2. Where can I get nn? The current version of nn is 6.4.16. via anonymous ftp: dkuug.dk [129.142.96.41] pub/nn6.4/nn64.tarZa[a-f] ~90k each pub/nn6.4/nn6.4.patch[1-16].Z ~25k each munnari.oz.au [128.250.1.21] pub/news/nn sirius.ucs.adelaide.edu.au [129.127.40.3] pub/news/nn6.4/nn6.4.tar.Z 485k pub/news/nn6.4/nn6.4.patch[1-10].Z ~25k each cutmcvax.cs.curtin.edu.au [134.7.1.1] pub/nn-patches/patch[01-16].Z ~25k each mtecv2.mty.itesm.mx [131.178.1.5] pub/nn/nn6.4.16.tar.Z pub/nn/nn6.4/nn6.4.patch[1-16].Z pub/nn/NN_FAQ_with_Answers ghost.dsi.unimi.it [131.175.10.64] pub/nn.6.4.16.tar.Z 766k pub/nntp.1.15.11.tar.Z 284k uk.ac.soton.ecs (NIFTP) login ID "guest", password of your mail ID (must include an "@"): /nn6.4.16.tar.Z 621637 /nn6.4.patch[1-16].Z ~25000 /nntp-1.5.11.tar.Z 210319 via anonymous uucp: Anyone in the U.S. can get nn source and patches by anonymous uucp from uunet by using their 900 number which costs 40 cents/minute (you don't have to be a uunet subscriber). The number is 1-900-468-7727, login: uucp, no password. See uunet!~/help (~5k) for more info or get uunet!~/index.Z (~375k) for a current full directory listing. --Gary Morris uunet!~/news/nn/nn6.4.tar.Z (~485k) uunet!~/news/nn/nn6.4.patch1.Z (~15k) ... uunet!~/news/nn/nn6.4.patch16.Z (~24k) via mail: Send a message to nn-sources@teda.teradyne.com or teda!nn-sources whose Subject header reads: Subject: FILE file ... The sources for an unpatched nn are broken up into 22 files named NN.1.Z.uu, NN.2.Z.uu, etc. The patches are named Patch.1.Z.uu, etc. We request that you retrieve no more than 10 files per day since our uucp links are not set up for large amounts of data. --Mikel Lechner Send a mail message to netlib@mthvax.cs.miami.edu with a Subject of "send index from nn" for more information. 3. What references exist for nn? Usenet: news.software.nn Mailing list: NN mailing list archives: Papers: "Intro to nn" ux1.cso.uiuc.edu [128.174.5.59]:doc/net/nn.* Various formats exist 4. How should I report bugs? Either mail them to nn-bugs@dkuug.dk and be sure to include the version number as well as what hardware and operating system you are using, or better yet, use the :bug command within nn. 5. How can I convert from rn to nn? 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. --Ian Taylor 6. How can I make life simpler when starting nn for the first time? 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. --Joerg Napp [if you think you've got some hot init and .newsrc files that would make good default init and .newsrc files, send them in!] 7. Is Kim male or female? This remains one of life's little mysteries! [but if you really want to know, see below.] . Building nn +10. What machines does nn run on? 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 . Using nn !20. How do I save files that I can read later with MH, elm, Mail, ...? MH: Save your files to +$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". --Bill Wohler 21. How come nn doesn't show the Lines count? 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 provides a solution: The following *unofficial* patch to NN 6.4.16 solves the problem if your nnmaster accesses the news files directly (i.e. not via NNTP). Rumor has it that a more complete patch is in the works. [be sure to remove the first two blanks in this patch, and remember to remove this patch when the official patch for this comes out. --bw] *** old/news.c 1990/10/23 21:37:38 --- new/news.c 1991/04/13 01:28:48 *************** *** 230,236 **** char *digest_buffer; char *parse_header(); struct stat statb; ! int retry; FILE *f; #ifdef NNTP int lazy; --- 230,236 ---- char *digest_buffer; char *parse_header(); struct stat statb; ! int c, retry; FILE *f; #ifdef NNTP int lazy; *************** *** 299,310 **** 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); } --- 299,319 ---- 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 { + 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); } 22. How can I find all articles having to do with a certain topic? 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. 23. How can I set a different Organization name? This header (along with the Reply-To:) are user-specified in the init file. An init file may include the lines: set mail-header Reply-To: steven@Transact.COM;Organization: Transact Software set news-header Reply-To: steven@Transact.COM;Organization: Transact Software You can include any headers that you want in the headers, either in mail or news postings, and they may be different. --Steven M. List 24. Can all non-selected subjects be automatically placed in my kill file? This is on the list of things to do. 25. Can I automatically kill articles based on the Newsgroups header? 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. --Richard M. Mathews & Dave Shaver 26. How can I select one article in a thread with auto-select-subject set? Define the following macro to toggle auto-select-subject. --Steven Grady 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" ) 27. Is there a library of macros and other nn features? Almost. 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 while ago), macro definitions and presentation sequence tricks, I would like to talk to you. 28. Can one search for patterns in the entire article from the menu? No. 29. How can I remove old articles from folders? 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. --Kim Storm 30. What's the best way to save multi-part articles? This is VERY easy - 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). --Kim Storm 31. When saving in +a/b/c keeps you from saving in +a/b. 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. --Bill Wohler 32. Can I use my mailer to send mail? Yes. See the variables mail-alias-expander, mail-script, mailer, and mailer-pipe-input. [can people send me some working examples?] +33. How can I see the original article with the current subject? While reading an article, use "G RET RET RET". --Bill Wohler +34. Can I choose newsgroups as I do articles, ie. with a menu? No, not yet. Sorry. . nnmaster 40. Why does nnmaster stop collecting articles at the "junk" group? I guess that 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. --Kim Storm 41. What do I cope with "Incomplete MASTER file"? After the make, did you remember to: Run ./inst to install the files? Run ./inst INIT to initialize the database? . Glossary NNTP Network News Transport Protocol (see RFC 977) . Acknowledgements 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 following individuals that have provided answers or other information to make this a better document. The actual list is undoubtedly larger. F.F. Jacot Guillarmod Mr. Kim F. Storm Steven M. List Steven Grady Richard M. Mathews Ian Taylor Mikel Lechner Gary Morris Dave Shaver Paul Eggert Michael Rawdon Joerg Napp [The following statement epitomizes the ridiculous state of affairs in our country (I'm an American) and can be ignored outside the US...] No Warranty: Because this article is provided free of charge as a service to news.software.nn readers, we provide absolutely no warranty, to the extent permitted by applicable state law. This article is provided "as is" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. Should the information prove defective, you assume the cost of all necessary servicing, repair or correction. Bill Wohler Heidelberg Red Barons Ultimate Frisbee Team