Der Newsreader und E-Mail-Client nn

zum Vergrößern bitte auf das Bild klicken
nn in der andLinux-Konsole
unter Vista

Inhaltsverzeichnis des Beitrags

    Canceln
    Supersedes

Was ist nn? {"nn - efficient net news interface (No News is good news)"}

nn ist ein Newsreader und Mailer für die UNIX-Konsole und wurde von Kim F. Storm entwickelt.
nn liegt als Open Source vor und ist daher unter vielen unioxiden Betriebssystemen kompilierbar und lauffähig.
In vielen Linux-Distributionen ist nn bereits als fertig kompiliertes Paket via Paketmanager erhältlich.

Liste der OSses, unter denen nn getestet wurde und lauffähig ist

  • NeXT 1.0
  • Linux
  • AIX
  • FreeBSD / NetBSD / OpenBSD
  • A/UX 1.1, 3.0
  • Mac OS X
  • SunOS
  • Motorola System V/88 Release 3
  • Texas Instruments System 1500
  • Interactive Unix on 386
  • dnix 5.2 on DIAB DS90
  • NCR tower
  • dnix 5.3 on DIAB DS90
  • ULTRIX systems
  • Dynix 3.0 on Symmetry
  • Mips running riscos 4.0 or greater
  • Fortune 32:16
  • Riscos 4.5 and later
  • HP-UX
  • Microport Unix V.2
  • Amdahl UTS 2.0
  • Xenix
  • Dynix/PTX on Symmetry
  • Tandy 68000/Xenix 3.2
  • Pyramid (and Targon 35)
  • OSF/1
  • SCO Unix V on 386
  • Solaris 2.6 or newer
  • IRIX
  • Siemens SINIX

(Quelle: http://www.faqs.org/faqs/usenet/software/nn/faq/part1/section-13.html)

Weitere Voraussetzungen

Er läuft allerdings nur innerhalb iso-8859-1 eingestellten Systemen vernünftig, sprich, nur in solchen Umgebungen kann er korrekt mit Umlauten umgehen. Allerdings kann er leider nicht mit darüber hinausgehenden Kodierungen umgehen: nn läuft nicht in UTF-8-Konsolen und kann auch nicht mit UTF-8 umgehen.

Vorbereitungen systemseitig

Vor der ersten Benutzung sollten einige Systemvariablen gesetzt werden, die nn ausliest:

  • nn verlangt als Hostname im System eine korrekte Domain:
    ~$ nn
    hostname=Rechner1, You need a fully qualified domain name
    Verfügt der Rechner, wie hier im Beispiel, nicht über eine Domain als Hostname, bricht nn beim Starten mit obiger Fehlermeldung ab. Insofern sollte, sofern noch nicht geschehen, dem System ein echte Domain vergeben werden, wie z. B.:
    $ sudo hostname 'domain.tld'
  • nn holt sich die News von dem Newsserver, der mit der Variable "NNTPSERVER" systemseitig festgelegt wurde.
    Selbstverständlich kann nn sowohl direkt von einem öffentlichen Newsserver als auch von einem lokalen Newsserver fetchen:
    NNTPSERVER=news.newsserver.tld
    export NNTPSERVER
    oder:
    NNTPSERVER=localhost (alternativ auch "127.0.0.1" möglich)
    export NNTPSERVER

nn-Konfigurationsdatei(en)

init-Datei

Die wichtigste Konfigurationsdatei, die der User selber bearbeiten sollte, ist die "~/.nn/init". Falls diese nach Installation noch nicht existiert, solltest du sie anlegen mit einem einfachen Texteditor, jedoch darf diese Datei im Namen keinen Anhang und auch keinen Punkt enthalten.

Beispiel für eine init-Datei:

  # Beispiel fuer eine ~/.nn/init
  set news-header From: Vorname Zuname <email@domain.tld>;Organization: [hier eigener Text]
  set editor vim '+set tw=72'
  set data-bits 8

Eigene Header mit Ausnahme von X-Face oder Face können in der Zeile "set news-header ..." untergebracht werden, jeweils abgetrennt durch ein Semikolon, jedoch ohne Leerzeichen zwischen den Headern. In obigem Beispiel wurde als Editor für nn vim gewählt und in der entsprechenden Zeile innerhalb der init so eingestellt, dass beim Schreiben eines Postings automatisch nach 72 Zeichen in einer Zeile ein Umbruch erfolgt. "set data-bits 8" stellt nn so ein, dass das Posten mit Umlauten (Ää, Üü, Öö) mglich wird, d. h. nn kann damit den Zeichensatz iso-8859-1 benutzen.

Weitere Konfigurationsdateien:

~/.newsrc                  The record of read articles.
~/.nn/select               The record of selected and seen articles.
~/.nn/kill                 The automatic kills and selections.
~/.nn/KILL.COMP            The compiled kill file.
~/.nn/LAST                 The time stamp of the last new news group we have seen.
~/.nn/NEXTG                Active group last time nn was quit.
~/.nn/.param               Parameter file for the aux script
$lib/setup                 System-wide setup - always read first.
$lib/init                  System-wide setup and presentation sequence.
$lib/aux                   The response edit and send script.
$lib/routes                Mapping rules for mail addresses (on non-domain systems).
$db/*                      The news data base.
/etc/termcap               Terminal data base [BSD].
/usr/lib/terminfo/*        Terminal data base [SysV].
/usr/local/lib/nntp_server Name of remote nntp server, if not changed
                           by setting the environment variable NNTPSERVER or the nntp-server
                           variable on the command line.
The name $lib and $db are the directories used for the auxiliary files and the
news data base respectively. Their name and location is defined at compile
time. Common choices are /usr/local/lib/nn or /usr/lib/news/nn for $lib and
/usr/spool/nn or /usr/spool/news/.nn for $db.

(Quelle: nn-Manual)

Starten von nn

(In diesem Wiki-Beitrag wird lediglich die Verwendung als Newsreader. beschrieben. Für Mailbelange sollte das Manual zu Rate gezogen werden.) Zur Ausführung von nn wird eine Textkonsole ("Terminal") benötigt.
nn wird durch Eingabe von "nn <Returntaste>" gestartet, kann jedoch auch mit Startoptionen gestartet werden; diese sind im mitgelieferten Manual ersichtlich.

Integrierte Hilfe von nn/Benutzung von nn

innerhalb eines laufenden nn kann jederzeit per ?-Taste die integrierte Hilfe aufgerufen werden, die sich wie folgt darstellt:

  SELECT (toggle)                                MOVE
  a-z0-9  Specified article                      ,       Next menu line
  x-y     Range x to y                           /       Previous menu line
  x*      Same subject as x                      SPACE   Next menu page (if any)
  .       Current article                        < >     Prev/Next menu page
  @ ~     Reverse/Undo all selections            ^ $     First/Last menu page
  =regexp Matching subjects (=. selects all)
  L/JJJJ  Leave/Change attributes                ( )     Open/Close Consolidated line
  SHOW SELECTED ARTICLES
  SPACE   Show (only when on last menu page)
  Z       Show NOW, and return to this group afterwards
  X       Show NOW, and continue with next group
  GOTO OTHER GROUPS
  X       Update current group, skip to next.     Y       Group overview
  N P     Goto next/previous group.               ~/.nn/init:
  G       Goto named group or open a folder.              Defines group
  B A     Go back/forward in groups already read.         presentation sequence.
  MISCELLANEOUS
  U       Unsubscribe / Subscribe toggle          :man    Online manual
  F R M   Follow-up/Reply/Mail                    :help   More online help
  S O E W Save articles                           !       Shell escape
  :post C Post new article / Cancel current       "       Change menu layout
  :unshar :decode :patch  Unpack articles         Q       Quit nn

Für die Verwendung von nn solltest du dir für den Anfang einige wenige Befehle merken (siehe oben, Hilfe):

G-Taste, um in eine Newsgruppe einzusteigen bzw. von Einer zur Anderen wechseln, ":post"-Eingabe, um ein neues Posting zu schreiben, F-Taste, um eine News-Antwort auf ein Posting zu schreiben, Q-Taste, um nn vollständig zu beenden.

Das Lesen von Postings läuft ganz nach dem Motto von nn ab ("No News is good news"): Alle zu lesenden Artikel werden mit den Tasten a-z0-9 selektiert und anschliessend die Leertaste gedrückt, dabei werden alle anderen Postings weggeblendet und nur die ausgewählten Postings werden der Reihe nach gelesen.

Supersedes und Cancels mit nn

Canceln

Während des Lesens eines eigenen Artikels, drücke die C-Taste am nn-Prompt.
nn fragt dann "Confirm cancel", was du mit der y-Taste beantwortest.
Dann zeigt nn "Cancelling article <article-id> ..." an und springt zum nächsten ausgewählten Artikel.

Supersedes

nn hat leider keine integrierte Supersedes-Funktion. Daher sind Supersedes nur möglich, indem man die entsprechende Headerzeile manuell ins Posting in dessen Header einfügt:

  Supersedes: <MID des zu überschreibenden Postings>

Einfügen von neuen Postings seit dem letzten Start von nn

Dies ist leider nur durch Beenden von nn mittels Q-Taste und anschliessendem Neustart von nn möglich.

attribution line

Bisher ist dem Wiki-Autor keine Möglichkeit bekannt geworden, die Einleitungszeile bei nn in irgendeiner Weise zu konfigurieren.
In anderen Worten: bei nn ist die sogenannte "attribution line" wie im folgenden Beispiel unveränderlich festgelegt:

  Vorname Nachname <email@adresse.tld> writes:

d. h., sie besteht aus dem Namen des Vorposters, seiner From-E-Mail-Adresse und dem Zusatz "writes:".

Signatur

Mit nn ist es möglich, eine selbst erstellte Signatur halbautomatisch seinen Postings anfügen zu lassen.
Diese Signatur muß in der Datei "~/.signature" mittels Texteditor erstellt werden, also direkt im Home-Ordner des Systems mit einem Punkt vor dem kleingeschriebenen vorgesehenen Dateinamen.

Desweiteren muß das Setzen der Signatur in der obig bereits erwähnten Konfigurationsdatei
"~/.nn/init" mit folgender Zeile aktiviert werden:

- Für Postings im Usenet: set append-signature-post on
- Für E-Mails:            set append-signature-mail on

Nach anschliessendem Start von nn und Schreiben eines Postings frag nn nach Abschliessen des Postings (in vim mit Shft-Z, Shft-Z) anschliessend:

  Append .signature? (Y)

Erst nach Beantwortung im nn-Prompt mit "Y" wird das Posting mit angefügter Signatur abgesendet bzw. dem lokalen Newsserver zum Absenden damit übergeben.

Weiterführende Links

» Zu nn gibt es auch eine passende deutsch-sprachige Newsgroup:

» Ausserdem gibt es eine speziell eingerichtete englischsprachige Gruppe für nn:

Autor: Uwe Premer - 13.11.2009

ABC-Wiki-Team » Kompendium » Newsreader » nn


Kategorie(n): ,
Bewerte diesen Artikel

5 stars Bewertung 5.0/5 aus 2 Bewertungen


Facebook Besuche uns bei Facebook, um unsere Artikel zu kommentieren