=encoding utf8

=for syntax specification:
https://perldoc.perl.org/perlpod

=head1 NAME

F<epgsearchcats.conf> – Erweiterte EPG-Informationen

=head1 BESCHREIBUNG

Einige EPG-Provider liefern zusätzliche EPG-Informationen, wie
die Art der Sendung, das Video- und Audio-Format, die Besetzung
usw. in der Beschreibung einer Sendung.
Mit Tools wie F<tvmovie2vdr> oder F<epg4vdr> können derartige
EPG-Inhalte in den VDR importiert werden.

Anhand solcher Daten lässt sich beispielsweise relativ einfach eine
Suche erzeugen, die alle Tagestipps findet, die in 16:9 ausgestrahlt
werden. Dazu durchsucht EPGSearch die Beschreibung einer Sendung nach
Zeilen, die mit den Namen von Kategorien beginnen, gefolgt von C<:>
und einem Leerzeichen, für die im Suchtimer ein oder mehrere Werte
festgelegt sind. Die Suche berücksichtigt Groß- und Kleinschreibung
sowohl bei den Kategorienamen als auch bei deren Werten.

Um Informationen dieser Art in Suchtimern verwenden zu können, müssen
anhand der Datei F<epgsearchcats.conf> im Konfigurationsverzeichnis
von EPGSearch entsprechende Einstellungen vorliegen.
Beispieldateien finden sich im Verzeichnis F<conf> von EPGSearch. Oft
genügt es, eine (weitgehend) passende Vorlage als F<epgsearchcats.conf>
ins Konfigurationsverzeichnis des Plugins zu kopieren und gegebenenfalls
ein paar kleinere Anpassungen vorzunehmen. Zur Nutzung der EPG-Kategorien
muss man den VDR danach lediglich neu starten und das Editieren-Menü eines
Suchtimers aufrufen.

Weil das Aufsetzen einer neuen F<epgsearchcats.conf> aber ziemlich
mühselig ist, wird F<createcats> als kleines Tool mitgeliefert, das
den Großteil der Arbeit übernimmt. Es findet sich im  Binärverzeichnis
des VDR.
Siehe auch B<createcats>(1) für weitergehende Informationen zu seiner
Verwendung.

=head1 FORMAT

Zeilen dieser Datei haben folgendes Format:

=over 4

    ID|Kategorienname[,Format]|Bezeichnung im Menü|Kategorienwerte|Suchmodus

=back

Die einzelnen Felder einer Zeile haben folgende Bedeutung:

=over 4

=item B<1 – Eindeutige Kennung (ID)>

Integer mit einem positiven Wert.

B<Achtung:> Ändert man später die Kennung, müssen die Suchtimer angepasst werden!

=item B<2 – Kategoriename>

String mit dem Namen der EPG-Kategorie laut EPG-Provider, etwa C<Genre>.

Wenn ein optionales C<Format> angegeben ist, wird der Kategoriewert als
Ganzzahl interpretiert und gemäß der Formatangabe dargestellt (siehe
C<man printf> für anwendbare Formatangaben).

=item B<3 – Bezeichnung im Menü>

String mit dem Namen der EPG-Kategorie in Auswahlmenüs von EPGSearch.

=item B<4 – Kategoriewerte>

String mit einer optionalen, kommaseparierten Liste von Werten für die EPG-Kategorie.

=item  5 – B<Suchmodus>

Optionale Enumeration mit den folgenden Werten:

=over 4

B<Textvergleich:>

=over 4

=item 0 = der gesamte Begriff muss enthalten sein

=item 1 = jedes Wort (durch eines der Zeichen C<,;|~> getrennt) muss
enthalten sein; dies ist die Standardeinstellung

=item 2 = mindestens ein Wort (durch eines der Zeichen C<,;|~> getrennt)
muss enthalten sein

=item 3 = exakte Übereinstimmung

=item 4 = regulärer Ausdruck

=back

B<Numerischer Vergleich:>

=over 4

=item 10 = kleiner

=item 11 = kleiner oder gleich

=item 12 = größer

=item 13 = größer oder gleich

=item 14 = gleich

=item 15 = ungleich

=back

=back

=back

=head1 BEISPIEL

=over 4

  1|Kategorie|Kategorie|Information,Kinder,Musik,Serie,Show,Spielfilm,Sport|2
  2|Genre|Genre|Abenteuer,Action,Wirtschaft,Wissen,Zeichentrick|2
  3|Format|Video-Format|16:9,4:3|2
  4|Audio|Audio-Format|Dolby Surround,Dolby,Stereo|2
  5|Jahr|Jahr||2
  6|Besetzung|Besetzung||2
  7|Regisseur|Regisseur||2
  8|Moderation|Moderation||2
  9|Bewertung|Bewertung|Großartig,Wertvoll,Gelungen,Annehmbar,Schwach|2
  10|Altersfreigabe|FSK|6,12,16,18|2
  12|Themen|Themen||4
  13|Staffel,%02i|Staffel||14
  14|Staffel,%02i|Staffel ab||13
  15|Episode,%02i|Episode||14

=back

Die Kennungen 13 und 14 beziehen sich auf dieselbe EPG-Kategorie, definieren aber
unterschiedliche Menünamen für verschiedene Suchmodi. Da die Auswertungsreihenfolge
nicht garantiert ist, sollten deren Formate identisch sein, um unerwartete Darstellung
bei Verwendung der Kategorievariablen zu vermeiden.

=head1 AUTOREN (Man-Pages)

Ursprünglich erstellt von Mike Constabel <epgsearch (at) constabel (dot) net>.

Überarbeitet und an die aktuellen Features von EPGSearch adaptiert durch die
derzeitigen Maintainer.

=head1 PROJEKTSEITE

Das Plugin wird als Projekt auf GitHub geführt:

L<https://github.com/vdr-projects/vdr-plugin-epgsearch/>

=head1 FEHLER MELDEN

Fehlerberichte sowie Feature-Anfragen können über den Bugtracker
des Projekts eingespeist werden:

L<https://github.com/vdr-projects/vdr-plugin-epgsearch/issues/>

=head1 COPYRIGHT und LIZENZ

Copyright © 2004-2010 Christian Wieninger

Copyright © 2011-2025 TomJoad (VDR-Portal) et al.

Dieses Programm ist freie Software. Sie können es unter den Bedingungen
der GNU General Public License, wie von der Free Software Foundation
veröffentlicht, weitergeben und/oder modifizieren, entweder gemäß Version 2
der Lizenz oder (nach Ihrer Option) jeder späteren Version.

Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, dass es
Ihnen von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar ohne die
implizite Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN
ZWECK. Details finden Sie in der GNU General Public License.

Sie sollten ein Exemplar der GNU General Public License zusammen mit
diesem Programm erhalten haben. Falls nicht, schreiben Sie an die
Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
Oder rufen Sie in Ihrem Browser L<https://www.gnu.org/licenses/old-licenses/gpl-2.0.html>
auf.

Der ursprüngliche Autor kann über L<cwieninger@gmx.de> erreicht werden.

Die aktuellen Maintainer können über die Projektseite auf GitHub
(siehe oben) erreicht werden.

Der MD5-Code ist abgeleitet aus dem Message-Digest-Algorithmus MD5
von RSA Data Security, Inc.

=head1 SIEHE AUCH

B<epgsearch>(1), B<createcats>(1), B<epgsearchcats.conf>(5)
