Anwendungsbeispiel
lidc bestimmt die Sprache und Zeichenkodierung einer Texteingabe und verarbeitet eine Vielzahl weit verbreiteter Eingabeformate. Im Folgenden wird anhand einiger Beispiele gezeigt, wie sich lidc effektiv einsetzen lässt.
Grundlegende Verwendung
In diesem Beispiel wird angenommen, dass Sie ein HTML Dokument erstellt haben, allerdings nicht sicher sind, in welcher Zeichenkodierung dieses gespeichert worden ist. Unter Zuhilfenahme von lidc kann diese Information leicht ermittelt werden:
Shell$ lidc -i document.html
German, deu, UTF-8
lidc wertet die Dateiendung aus und schließt, wenn möglich, basierend auf dieser Information auf den Dateityp (in diesem Falle: HTML). Die Ausgabe stellt die Information bereit, dass das Dokument in deutscher Sprache verfasst (ISO 639-3 Code: "deu") und mit der UTF-8 Zeichenkodierung kodiert worden ist.
Des Weiteren lässt sich lidc verketten ("Pipe"), allerdings ist es in
diesem Fall notwendig, den Dateityp explizit anzugeben ("-t"), weil lidc
kein Dateiname zur Verfügung steht und eine automatische Erkennung somit
nicht möglich ist.
Shell$ cat document.html | lidc -t html
German, deu, UTF-8
Anpassen der Ausgabe
Wenn kein benutzerdefinierter Formatstring zur Anpassung der Ausgabe angegeben wurde, verwendet lidc einen Standardwert, der die folgenden Informationen, jeweils durch Kommata separiert, bereitstellt:
- Englischsprachiger Name der Sprache
- ISO 639-3 Code der Sprache
- den Namen der erkannten Zeichenkodierung
Eine Anpassung der Ausgabe können Sie durch Verwendung von Platzhaltern einfach vornehmen, so dass Sie die Ausgabe ganz an Ihre spezifischen Bedürfnisse anpassen können.
Im nächsten Beispiel wird ein angepasster Formatstring verwendet, der
für die Ausgabe von Dateiname ("%f"), angegebener ("%d") und
bestimmter ("%e") Zeichenkodierung sorgt:
Shell$ lidc -i document.html -f "%f: %d - %e\n"
document.html: ISO-8859-1 - UTF-8
Das Beispiel zeigt, dass die angegebene und bestimmte Zeichenkodierung nicht übereinstimmen. lidc kann also auch verwendet werden, um mögliche Probleme bei der in Dokumenten spezifizierten Zeichenkodierung aufzudecken.
Da der Formatstring frei angepasst werden kann, lassen sich mit lidc auch komplexere Ausgabeformate, wie z.B. XML-Dokumente oder SQL Befehle, leicht generieren. Die nachfolgenden beiden Beispiele zeigen sowohl die Ausgabe als XML-Dokument als auch als SQL Befehl.
Shell$ lidc -i document.html -f "<file>\n\t<lang>%l</lang>\
\n\t<charset>%e</charset>\n</file>\n\n"
<file>
<lang>German</lang>
<isocode>deu</isocode>
<charset>UTF-8</charset>
</file>
$ lidc -i document.html \
-f "INSERT INTO documents VALUES('%f','%l','%e');\n"
INSERT INTO documents VALUES('document.html','German','UTF-8');
Werfen Sie einen Blick auf die Liste der von lidc unterstützten Platzhalter für eine Gesamtübersicht.
Verwendung externer Filter
lidc unterstützt durch den Einsatz interner Parser bereits eine Vielzahl von Eingabeformaten. Sie können lidc durch die Verwendung eines externen Filters allerdings auch mit vielen nicht unterstützten Dateiformaten verwenden. Zu diesem Zweck können Sie den jeweiligen Filter eines Drittanbieters verwenden und dessen Ausgabe mittels Verkettung ("Pipe") an lidc weiterleiten.
Im Folgenden wird exemplarisch veranschaulicht, wie sich die Sprache eines
PDF-Dokuments unter Verwendung des Filters pdftotext(1) (Teil von xpdf)
und lidc bestimmen lässt.
Shell$ pdftotext manual__eng.pdf - | lidc -f "%l\n"
English
Weiterführende Informationen zu allen Optionen entnehmen Sie bitte der Man Page und/oder dem Handbuch.


