Name

CPAN::WAIT - erweitert die CPAN shell() um Kommandos, die einen WAIT4CPAN-Server durchsuchen.


Übersicht

perl -MCPAN -e shell
> wq au=wall
> wr 3
> wd 3
> wl 20
> wh
> wh wq


Beschreibung

CPAN::WAIT erweitert die CPAN shell() um Kommandos, mit denen Recherchen auf einem WAIT4CPAN-Server durchgeführt werden können. Das Modul baut eine Verbindung zu einem WAIT-Server auf und spricht ein Protokoll, das an NNTP (siehe RFC977) angelehnt ist. Dazu wird das WAIT::Client-Modul benutzt, das wiederum Methoden von Net::NNTP aus dem libnet-Paket erbt. Net::NNTP muß also installiert sein, damit dieses Modul funktionieren kann.

Wenn keine direkte Verbindung zum WAIT-Server möglich ist, versucht das Modul über den HTTP-Proxy-Server, der bei der CPAN.pm-Konfiguration angegeben wurde, auf den WAIT-Server zuzugreifen. Allerdings kann die Emulation eines zustandsbehafteten Protokolls über HTTP langsam sein. Bei dieser Variante werden zusätzlich die LWP::*-Module aus dem libwww-Paket benötigt.

Die Variable CPAN::WAIT::TIMEOUT gibt an, wieviele Sekunden auf eine Antwort vom Server gewartet werden soll. Die Voreinstellung ist 20 Sekunden. Bei einer wirklich schlechten Verbindung sollte der Wert erhöht werden.

Folgende Kommandos stehen zur Verfügung:

wh [Kommando]
Das Kommando gibt einen kurzen Hilfstext aus, wenn kein Kommando angegeben ist. Wenn der Name eines anderen Kommandos angegeben ist, wird dieses Kommando näher erläutert, falls weitere Informationen vorhanden sind. Derzeit ist das nur für wq der Fall.

wl Anzahl
Die maximale Anzahl der Treffer, die angezeigt werden, wird auf Anzahl beschränkt. Voreinstellung sind maximal 10 Treffer.

wq Anfrage
Eine Anfrage wird zum Server geschickt.

Hier einige Beispielanfragen:

information retrieval               Freitext-Anfrage
information or retrieval            eine äquivalente Formulierung
des=information retrieval           'information' muß im 'Description'-Teil des Manuals auftauchen.
des=(information retrieval)         Mindestens eines der Wörter muß auftauchen.
des=(information or retrieval)      eine äquivalente Formulierung
des=(information and retrieval)     Beide Wörter müssen auftreten.
des=(information not retrieval)     'information' und
                                    'retrieval' dürfen nicht auftreten.
des=(information system*)           Mustersuche ('*' nur am Ende zulässig!)
au=ilia                             Autorennamen dürfen auch Tippfehler enthalten.

Beliebige Boolesche Kombinationen der obigen Beispiele sind zulässig. Feldnamen dürfen abgekürzt werden. Weitere Informationen (auf englisch) gibt's hier: http://ls6-www.informatik.uni-dortmund.de/CPAN

So sieht eine Trefferliste aus:

wq au=wall

 1 8.039 a2p - Awk to Perl translator 
 2 8.039 s2p - Sed to Perl translator 
 3 8.039 perlipc - Perl interprocess communication (signals, fifos, pipes, safe subprocesses, sockets, and semaphores) 
 4 8.039 ExtUtils::DynaGlue - Methods for generating Perl extension files 
 5 8.039 h2xs - convert .h C header files to Perl extensions 
 6 8.039 Sys::Syslog, openlog, closelog, setlogmask, syslog - Perl interface to the UNIX syslog(3) calls 
 7 8.039 h2ph - convert .h C header files to .ph Perl header files 
 8 8.039 Shell - run shell commands transparently within perl 
 9 8.039 pl2pm - Rough tool to translate Perl4 .pl files to Perl5 .pm modules. 
10 8.039 perlpod - plain old documentation 

wr Treffernummer
So läßt man sich einen Treffer anzeigen:

wr 1

source          authors/id/CHIPS/perl5.003_24.tar.gz
headline        a2p - Awk to Perl translator 
size            5643
docid           data/perl/x2p/a2p.pod

wd Treffernummer
Dieses Kommando holt den vollständigen Text vom Server und läßt ihn von perlpod formatieren. Sie müssen sicherstellen, daß perlpod in Ihrem Pfad vorhanden ist. Außerdem müssen Sie eine Version von perlpod verwenden, die absolute Pfadangaben versteht. Einige sehr alte Versionen haben Probleme damit.


Version

Diese Manpage dokumentiert "CPAN::WAIT" in der Version CPAN-WAIT-0.24


Autor

Ulrich Pfeifer <pfeifer@ls6.informatik.uni-dortmund.de>


Übersetzer

Deutsche Übersetzung von Ulrich Pfeifer,
© 1998 by Ulrich Pfeifer