// Datei: ./werkzeuge/paketoperationen/manpages-anzeigen.adoc

// Baustelle: Fertig

[[manpages-anzeigen]]

=== Manpages anzeigen ===

// Stichworte für den Index
(((apropos)))
(((debman, -f)))
(((dlocate)))
(((dlocate, -man)))
(((whereis)))
(((whereis, -m)))
(((Debianpaket, debian-goodies)))
(((Debianpaket, dlocate)))
(((Debianpaket, util-linux)))
(((Dokumentation, Infopages)))
(((Dokumentation, manpages)))
Für die meisten UNIX/Linux-Werkzeuge bestehen Informations- und
Hilfeseiten, auch genannt 'Info und Man(ual) Pages'. Um in Erfahrung zu
bringen, ob diese überhaupt vorhanden und installiert sind, bieten sich
zunächst die beiden UNIX-Kommandos `apropos` und `whereis` (Paket
'util-linux' <<Debian-Paket-util-linux>>) an. Ebenso hilft Ihnen das
bereits mehrfach genutzte Werkzeug `dlocate` <<Debian-Paket-dlocate>>
weiter. 

Manpages aus `deb`-Paketen, die noch nicht auf ihrem System installiert
sind, aber als lokale Datei vorliegen, zeigen Sie mit Hilfe von `debman`
und `debmany` aus dem Paket 'debian-goodies'
<<Debian-Paket-debian-goodies>> an. Liegt das Paket nicht lokal vor,
beziehen Sie es über zusätzliche Schalter oder stöbern in der
Manpages-Sammlung des Debian-Projekts <<Debian-Manpages>>.

==== Manpages erstöbern ====

// Stichworte für den Index
(((apropos)))
(((dlocate, -man)))
(((Dokumentation, manpages)))
Mittels `apropos` 'Paketname' sehen Sie, ob zu dem von Ihnen angefragten
Programm lokal Dokumentation verfügbar ist. Für das Stichwort `aptitude`
sieht das bspw. wie folgt aus:

.Verfügbare Manpages für das Paket 'aptitude' mittels `aptitude` lokalisieren
----
$ apropos aptitude
aptitude (8)         - Benutzerschnittstelle für den Paketmanager
aptitude-curses (8)  - Benutzerschnittstelle für den Paketmanager
aptitude-create-state-bundle (1) - bundle the current aptitude state
aptitude-run-state-bundle (1) - unpack an aptitude state bundle and invoke aptitude on it
$
----

Eine ähnliche Hilfe leistet auch das Kommando `dlocate` mit dem Schalter
`-man` gefolgt vom Paketnamen. Das Ergebnis des Aufrufs sieht für das
Programm `aptitude` sieht wie folgt aus:

.Verfügbare Manpages für das Paket 'aptitude' mittels `dlocate` aufspüren
----
$ dlocate -man aptitude
8 aptitude-curses
$
----

Nun können Sie die Manpage mittels `man aptitude` bzw. `man
aptitude-curses` aufrufen.

// Stichworte für den Index
(((dlocate, -lsman)))
(((whereis, -m)))
Benötigen Sie zusätzlich den exakten Pfad zur Datei, in der die Manpage
liegt, nutzen Sie stattdessen entweder `whereis` mit dem Schalter `-m`
oder `dlocate` mit dem Schalter `-lsman`. 

.Verfügbare Manpages für das Paket 'aptitude' mittels `whereis` lokalisieren
----
$ whereis -m aptitude
aptitude: /usr/share/man/man8/aptitude.8.gz
$
----

Bei letzterem erfahren Sie bspw. aus dem nachfolgenden Aufruf, dass die
Manpage für mehrere Sprachen wie bspw. Deutsch (de), Spanisch (es) und
Polnisch (pl) im Verzeichnis `/usr/share/man` bereitsteht.

.Verfügbare Manpages für das Paket 'aptitude' mit vollständigem Pfad
----
$ dlocate -lsman aptitude
/usr/share/man/cs/man8/aptitude-curses.8.gz
/usr/share/man/es/man8/aptitude-curses.8.gz
/usr/share/man/ja/man8/aptitude-curses.8.gz
/usr/share/man/fr/man8/aptitude-curses.8.gz
/usr/share/man/gl/man8/aptitude-curses.8.gz
/usr/share/man/fi/man8/aptitude-curses.8.gz
/usr/share/man/man8/aptitude-curses.8.gz
/usr/share/man/it/man8/aptitude-curses.8.gz
/usr/share/man/pl/man8/aptitude-curses.8.gz
/usr/share/man/de/man8/aptitude-curses.8.gz
$
----

[[manpages-anzeigen-nicht-installiert]]
==== Manpages aus noch nicht installierten Paketen anzeigen ====

// Stichworte für den Index
(((Debianpaket, debian-goodies)))
(((debget)))
(((debman, -f)))
(((debman, -p)))
(((debmany)))
(((Dokumentation, installierter Pakete)))
(((Dokumentation, nicht installierter Pakete)))
(((Dokumentation, Manpages installierter Pakete anzeigen)))
(((Dokumentation, Manpages nicht installierter Pakete anzeigen)))
Benötigen Sie Hilfe zu einem Paket, welches Sie nicht installiert haben,
sind die beiden  Werkzeuge `debman` und `debmany` aus dem Paket
'debian-goodies' <<Debian-Paket-debian-goodies>> für Sie nützlich.
`debman` zeigt Ihnen nur die Manpages zu einem Paket an, welches nicht
installiert ist. Es unterstützt dabei diese beiden Schalter:

`-f` 'Dateiname' 'Name' :: Anzeigen der Manpage 'Name' zu einem bereits lokal vorliegenden `deb`-Paket 'Dateiname'
+
.Aufruf der Manpage 'chase' zur lokal vorliegenden Datei 'chase_0.5.2-4_amd64.deb'
----
$ debman -f chase_0.5.2-4_amd64.deb chase
----

`-p` 'Paketname' 'Name' :: Herunterladen des Pakets 'Paketname' mittels
`debget` und Anzeigen der darin enthaltenen Manpage 'Name'
+
.Herunterladen des Pakets 'chase' und Anzeigen der darin enthaltenen Manpage 'chase'
----
$ debman -p chase chase
----

Das Werkzeug `debmany` funktionert etwas anders. Es sammelt Manpages
oder Dokumentation zu einem Paket zusammen, welches entweder bereits als
Paket installiert ist, sich noch in einem Repository befindet oder als
lokale `deb`-Datei vorliegt. Es wertet dazu die Paketdatenbank aus. 
Ergebnis ist ein Auswahlmenü wie in <<fig.debmany-apt>>, über das Sie
die Betrachtung der gewünschten Dokumentation auswählen. Für das
Debianpaket 'apt' sieht der vereinfachte Aufruf wie folgt aus:

.Aufruf von `debmany` für das Paket 'apt'
----
$ debmany apt
----

.Aufruf von `debmany` für das Paket `apt`
image::werkzeuge/paketoperationen/debmany-apt.png[id="fig.debmany-apt", width="50%"]

Wählen Sie einen Menüeintrag aus, öffnet sich ihr bevorzugtes
Anzeigeprogramm dafür. `debmany` bietet Ihnen zudem mehrere Schalter
an, über die Sie dieses Anzeigeprogramm angeben können:

`-g` :: Sinnvoll für GNOME, das Anzeigeprogramm muß dazu `.gz`-Dateien
unterstützen. Kurzform von `-m 'gnome-open man:%s'`.

`-k` :: Sinnvoll für KDE bzw. Konqueror, das Anzeigeprogramm muß dazu `.gz`-Dateien
unterstützen. Kurzform von `-m 'kfmclient  exec  man:%s'` bzw. `-m
'kfmclient exec %s'` für andere Dateien.

`-m` 'Programm' :: Bezeichnet das Anzeigeprogramm zur Darstellung der
Manpages. Dieses muß dazu `.gz`-Dateien unterstützen.

`-o` 'Programm' :: Bezeichnet das Anzeigeprogramm zur Darstellung
sonstiger Dokumentation im Verzeichnis `/usr/share/doc`.

`-x` :: Sinnvoll für KDE, GNOME und XFCE, das Anzeigeprogramm muß dazu `.gz`-Dateien
unterstützen. Kurzform von `-m 'xdg-open  man:%s'`. `xdg-open` ist
Bestandteil des Pakets 'xdg-utils'.

Weiterhin stehen diese Schalter zur Verfügung, über die Sie das
Verhalten von `debmany` steuern können:

`-L` 'Limit' :: Gibt die maximale Dateigröße der Dokumentation an, die
heruntergeladen wird. Überschreitet die Datei das angegebene Limit, so
werden Sie gefragt, ob der Download stattfinden soll. Ohne Angabe einer
Einheit ist die Angabe in Bytes. Durch Anhängen der Buchstaben 'K', 'M',
'G' oder 'T' passen Sie die Einheit an.

`-l` 'Sprachliste' :: Legt fest, in welchen zusätzlichen Sprachen außer
Englisch die Manpages angezeigt werden. 'Sprachliste' ist eine durch
Komma getrennte Liste der Sprachkürzel, bspw. `de,fr` für deutsch- und
französischsprachige Manpages. Die Angabe `de*` liefert alle Varianten,
bspw. `de_DE`, `de_AT` und `de_CH`.

`-z` :: Zur Darstellung des Auswahlmenüs wird Zenity benutzt (siehe
<<fig.debmany-apt-zenity>>). Default ist `whiptail`, alternativ `dialog`
oder `curl`.
+
.Aufruf von `debmany` für das Paket `apt` mit Hilfe von Zenity
image::werkzeuge/paketoperationen/debmany-apt-zenity.png[id="fig.debmany-apt-zenity", width="50%"]

==== Suche über den Webbrowser ====

Sind Sie mit dem Webbrowser unterwegs und bevorzugen diese Darstellung,
greifen Sie darüber auf die Manpages-Sammlung des Debian-Projekts zurück
<<Debian-Manpages>>. <<fig.manpages>> zeigt das Ergebnis der Recherche
nach `htop`.

.Suche in der Manpages-Sammlung nach `htop`
image::werkzeuge/paketoperationen/manpages.png[id="fig.manpages", width="50%"]

Über diesen Service recherchieren Sie in allen Veröffentlichungen von
Debian sowie auch _testing_, _unstable_ und _experimental_. Über die
Auswahllisten legen Sie neben dem zu durchsuchenden Bereich das
Ausgabeformat fest -- hier HTML, PostScript, PDF oder Plaintext. Der
Service ist noch nicht ganz vollständig, so dass derzeit noch nicht alle
Manpages für die über das Menü offerierten Sprachen hinterlegt sind.

// Datei (Ende): ./werkzeuge/paketoperationen/manpages-anzeigen.adoc
