summaryrefslogtreecommitdiff
path: root/html/en/epgsearch.1.html
diff options
context:
space:
mode:
Diffstat (limited to 'html/en/epgsearch.1.html')
-rw-r--r--html/en/epgsearch.1.html1311
1 files changed, 1311 insertions, 0 deletions
diff --git a/html/en/epgsearch.1.html b/html/en/epgsearch.1.html
new file mode 100644
index 0000000..eff8459
--- /dev/null
+++ b/html/en/epgsearch.1.html
@@ -0,0 +1,1311 @@
+<?xml version="1.0" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>Epgsearch Version 0.9.24.beta9</title>
+<meta http-equiv="content-type" content="text/html; charset=utf-8" />
+<link rev="made" href="mailto:root@localhost" />
+</head>
+
+<body style="background-color: white">
+
+<p><a name="__index__"></a></p>
+<!-- INDEX BEGIN -->
+
+<ul>
+
+ <li><a href="#name">NAME</a></li>
+ <li><a href="#overview">OVERVIEW</a></li>
+ <li><a href="#options">OPTIONS</a></li>
+ <li><a href="#content">CONTENT</a></li>
+ <li><a href="#1__description">1. Description</a></li>
+ <ul>
+
+ <li><a href="#1_1_menu_commands">1.1 Menu Commands</a></li>
+ <li><a href="#1_2_menu_search">1.2 Menu search</a></li>
+ <ul>
+
+ <li><a href="#1_2_1_menu_edit_search">1.2.1 Menu edit search</a></li>
+ <li><a href="#1_2_2_menu_search_results">1.2.2 Menu search results</a></li>
+ </ul>
+
+ <li><a href="#1_3_extended__now__and__next__and_favorites">1.3 Extended 'now' and 'next' and favorites</a></li>
+ <li><a href="#1_4_menu_setup">1.4 Menu setup</a></li>
+ <ul>
+
+ <li><a href="#1_4_1_general">1.4.1 General</a></li>
+ <li><a href="#1_4_2_epg_menus">1.4.2 EPG menus</a></li>
+ <li><a href="#1_4_3_userdefined_epg_times">1.4.3 User-defined EPG times</a></li>
+ <li><a href="#1_4_4_timer_programming">1.4.4 Timer programming</a></li>
+ <li><a href="#1_4_5_search_and_search_timers">1.4.5 Search and search timers</a></li>
+ <li><a href="#1_4_6_timer_conflict_checking">1.4.6 Timer conflict checking</a></li>
+ <li><a href="#1_4_7_email_notification">1.4.7 Email notification</a></li>
+ </ul>
+
+ </ul>
+
+ <li><a href="#2__search_timers">2. Search timers</a></li>
+ <ul>
+
+ <li><a href="#2_1__avoid_repeats___internals">2.1 'Avoid repeats' - internals</a></li>
+ <li><a href="#2_2_how_do_we_compare_two_events">2.2 How do we compare two events?</a></li>
+ <li><a href="#2_3_how_and_when_do_we_compare">2.3 How and when do we compare?</a></li>
+ </ul>
+
+ <li><a href="#3__usage_from_other_plugins_or_scripts">3. Usage from other plugins or scripts</a></li>
+ <li><a href="#4__using_extended_epg_info">4. Using extended EPG info</a></li>
+ <li><a href="#5__replacing_the_standard_schedule_menu">5. Replacing the standard schedule menu</a></li>
+ <li><a href="#6__addons">6. Add-ons</a></li>
+ <li><a href="#advanced_description">Advanced description</a></li>
+ <li><a href="#see_also">SEE ALSO</a></li>
+ <li><a href="#files">FILES</a></li>
+ <li><a href="#author__man_pages_">AUTHOR (man pages)</a></li>
+ <li><a href="#report_bugs">REPORT BUGS</a></li>
+ <li><a href="#copyright_and_license">COPYRIGHT and LICENSE</a></li>
+</ul>
+<!-- INDEX END -->
+
+<hr />
+<p>
+</p>
+<h1><a name="name">NAME</a></h1>
+<p><em>epgsearch</em> - Searchtimer and replacement of the VDR program menu</p>
+<p>
+</p>
+<hr />
+<h1><a name="overview">OVERVIEW</a></h1>
+<p>EPG-Search can be used as a replacement for the default schedules
+menu entry. It looks like the standard schedules menu, but adds some
+additional functions:</p>
+<pre>
+ - Commands for EPG entries with 5 built-in commands like 'show repeats',
+ 'create search'. One can add own commands for other needs, like adding a
+ VDRAdmin auto-timer.</pre>
+<pre>
+ - Add up to 4 user-defined times to 'now' and 'next' and an optional
+ favorites menu</pre>
+<pre>
+ - Searching the EPG: Create reusable queries, which can also be used
+ as 'search timers'.</pre>
+<pre>
+ - Search timers: Search for broadcasts in the background and add a
+ timer if one matches (similar to VDRAdmin's auto-timers) or simply
+ make an announcement about it via OSD</pre>
+<pre>
+ - Avoid double recordings of the same event
+ * timer preview
+ * recognition of broken recordings
+ * fuzzy event comparison</pre>
+<pre>
+ - Progress bar in 'What's on now' and 'What's on next'</pre>
+<pre>
+ - Shift the time displayed by key press, e.g. 'What's on now' + 30 minutes</pre>
+<pre>
+ - Start menu can be setup between 'Schedule' or 'What's on now'</pre>
+<pre>
+ - background check for timer conflicts with a timer conflict manager</pre>
+<pre>
+ - detailed EPG menu (summary) allows jumping to the next/previous
+ event</pre>
+<pre>
+ - support for extended EPG info for search timers</pre>
+<pre>
+ - extension of the timer edit menu with a directory item, user
+ defined weekday selection and a subtitle completion.</pre>
+<pre>
+ - Timer conflict check, informs you over the OSD about conflicts</pre>
+<pre>
+ - Timer conflict menu, show detailed information about the conflicts
+ and let you resolve them</pre>
+<pre>
+ - Email notifications about search timer updates and timer conflicts</pre>
+<p>Works only with &gt;= vdr-1.3.46 or newer.</p>
+<p>Parts of the sources are based on the repeating-ECG patch from Gerhard Steiner, who gave me the permission to use them. Thanks for his work!</p>
+<p>
+</p>
+<hr />
+<h1><a name="options">OPTIONS</a></h1>
+<dl>
+<dt><strong><a name="item__2df_file_2c__2d_2dsvdrpsendcmd_3dfile">-f file, --svdrpsendcmd=file</a></strong>
+
+<dd>
+<p>the path to svdrpsend.pl for external SVDRP communication (default is
+internal communication, so this is usually not needed anymore)</p>
+</dd>
+</li>
+<dt><strong><a name="item__2dc_path_2c__2d_2dconfig_3dpath">-c path, --config=path</a></strong>
+
+<dd>
+<p>to specify a specific config directory for all epgsearch config files, default
+is '&lt;plugins configuration directory&gt;/epgsearch'</p>
+</dd>
+</li>
+<dt><strong><a name="item__2dl_file_2c__2d_2dlogfile_3dfile">-l file, --logfile=file</a></strong>
+
+<dd>
+<p>to specify a specific log file for epgsearch (default log file is
+epgsearch.log in the epgsearchs config directory)</p>
+</dd>
+</li>
+<dt><strong><a name="item__2dv_n_2c__2d_2dverbose_3dn">-v n, --verbose=n</a></strong>
+
+<dd>
+<p>verbose level for log file. Value 0 means no logging. Other values
+are 1 (general messages), 2 (detailed messages), 3 (planned for extra
+detailed info for debugging purposes)</p>
+</dd>
+</li>
+<dt><strong><a name="item__2dr_2c__2d_2dreloadmenuconf">-r, --reloadmenuconf</a></strong>
+
+<dd>
+<p>reload epgsearchmenu.conf with plugin call. This can be useful when testing
+customized menu layouts.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2dm_file_2c__2d_2dmailcmd_3dfile">-m file, --mailcmd=file</a></strong>
+
+<dd>
+<p>the external command to be used for mail delivery. The default uses
+'sendEmail.pl'. If you are using a different command or script make sure that
+it has the same parameter interface as sendEmail.pl.</p>
+</dd>
+</li>
+</dl>
+<p>
+</p>
+<hr />
+<h1><a name="content">CONTENT</a></h1>
+<pre>
+ 1. Description
+ 1.1 Menu commands
+ 1.2 Menu search
+ 1.2.1 Menu edit search
+ 1.2.2 Menu search results
+ 1.3 Extended 'now' and 'next'
+ 1.4 Menu setup
+ 2. Search timers
+ 2.1 'Avoid repeats' - internals
+ 2.2 How do we compare two events?
+ 2.3 How and when do we compare?
+ 3. Usage from other plugins or scripts
+ 4. Using extended EPG info
+ 5. Replacing the standard schedule menu
+ 6. Add-ons</pre>
+<p>
+</p>
+<hr />
+<h1><a name="1__description">1. Description</a></h1>
+<p>At first glance EPG-Search looks like the schedules menu entry of VDR.
+By pressing the key '0', one can toggle the bottom color keys to access
+additional functions (the default assignment of the color keys can be
+adjusted by setup):</p>
+<p>
+</p>
+<h2><a name="1_1_menu_commands">1.1 Menu Commands</a></h2>
+<p>This menu displays commands that can be executed on the current
+item. There are 8 built-in commands:</p>
+<pre>
+ - Repeats: Searches for repeats</pre>
+<pre>
+ - Record</pre>
+<pre>
+ - Switch</pre>
+<pre>
+ - Create search
+ Switches to search menu and adds a new search with the name of the current
+ item (to avoid editing the name manually)</pre>
+<pre>
+ - Search in recordings:
+ Search the recordings for a broadcast with the same name</pre>
+<pre>
+ - Mark as 'already recorded':
+ This puts the selected event in the file epgsearchdone.data and instructs
+ epgsearch to avoid recording this event if an according search timer is set
+ to &quot;avoid repeats&quot;. An already created timer will be automatically removed
+ with the next search timer update.</pre>
+<pre>
+ - Add/Remove to/from switch list?:
+ Controls the switch list. If there is an event in the switch list, epgsearch
+ will announce it and switch to the event before it starts. To access the
+ complete switch list, call 'Search/Actions/Switch list'.</pre>
+<pre>
+ - Create blacklist:
+ A blacklist is used to ignore events when using search timers. A search
+ timer can be setup to ignore events from arbitrary blacklists.</pre>
+<p>You can add your own commands to this menu by editing the file
+epgsearchcmds.conf in epgsearchs config directory. There's a sample
+conf file with some sample commands (see directory 'scripts', taken
+from vdr-wiki.de, thanks to the authors).</p>
+<p>The format of the file is the same as VDR's commands.conf or
+reccmds.conf. When a command is executed the following parameters
+are passed to it:</p>
+<pre>
+ $1: the title of the EPG entry
+ $2: the start time of the EPG entry as time_t value (like in the
+ shutdown script)
+ $3: the end time
+ $4: the channel number of the EPG entry
+ $5: the long channel name of the EPG entry
+ $6: the subtitle of the EPG entry, &quot;&quot; if not present</pre>
+<p>To execute a command from the main menu you can also press its
+associated number without opening the commands menu.</p>
+<p>
+</p>
+<h2><a name="1_2_menu_search">1.2 Menu search</a></h2>
+<p>Here you can add, edit, delete and execute your own queries on the
+EPG. The usage and behavior of this menu is similar to VDR's timer
+menu.</p>
+<p>
+</p>
+<h3><a name="1_2_1_menu_edit_search">1.2.1 Menu edit search</a></h3>
+<p>Most things in this menu are quite clear, so only some notes on:</p>
+<dl>
+<dt><strong><a name="item__2d_search_term_3a">- <strong>Search term:</strong></a></strong>
+
+<dd>
+<p>The term to search for. If you like to search for more words, separate
+them by blanks. Leaving this empty (combined with search mode
+'Phrase') will match anything. This is useful, if you search e.g. for
+anything that starts between some times on a specific channel.</p>
+</dd>
+<dd>
+<p>With 'blue' you can also select a template for the new search. If
+one of the templates is set to default, new searches will
+automatically get the settings of the default template.</p>
+</dd>
+<dd>
+<p>Note: fuzzy searching is limited to 32 chars!</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_search_mode_3a">- <strong>Search mode:</strong></a></strong>
+
+<dd>
+<p>'Phrase' searches for the expression within the EPG. 'All words'
+requires, that each word of the expression occurs in the EPG item.
+'at least one word' requires, that only one word occurs in the EPG item.
+'Match exactly' requires, that your search term matches exactly the
+found title, subtitle or description.</p>
+</dd>
+<dd>
+<p>With 'Regular expression' you can setup a regular expression as
+search term. You don't need a leading and trailing '/' in the
+expression. By default these are POSIX extended regular expressions.
+If you like to have Herl compatible regular expression, simply edit
+the plugins Makefile and uncomment #HAVE_PCREPOSIX=1 to
+HAVE_PCREPOSIX=1 (you will need pcreposix installed, comes with
+libpcre from www.pcre.org, but it's already part of most distributions).</p>
+</dd>
+<dd>
+<p>See also <code>epgsearch(4)</code> 'Description of the search process'.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_use_extended_epg_info_3a">- <strong>Use extended EPG info:</strong></a></strong>
+
+<dd>
+<p>Only available if configured, see below 'Using extended EPG info'.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_ignore_missing_categories_3a">- <strong>Ignore missing categories:</strong></a></strong>
+
+<dd>
+<p>If set to 'Yes' this tells epgsearch that a missing EPG category
+should not exclude an event from the results. Caution: Using this without
+any other criterions could flood your timers.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_use_channel_3a">- <strong>Use channel:</strong></a></strong>
+
+<dd>
+<p>Search only for events in the given channels interval, channel
+groups or FTA channels only.</p>
+</dd>
+<dd>
+<p>Channel groups (e.g. sport channels or Pay-TV channels) can be
+managed with a sub-menu called with 'blue'.</p>
+</dd>
+<dd>
+<p>ATTENTION: After changing the channels order please check the
+settings of your search timers!</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_use_day_of_week_3a">- <strong>Use day of week:</strong></a></strong>
+
+<dd>
+<p>Besides the weekdays you can also set up a user-defined selection,
+e.g. search only on Monday and Friday.</p>
+</dd>
+<dd>
+<p>You'll find the user-defined selection in the list after Friday.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_use_blacklists_3a">- <strong>Use blacklists:</strong></a></strong>
+
+<dd>
+<p>You can select one or more or all blacklists here. If any search result
+is also contained in one of the selected blacklists it will be skipped.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_use_in_favorites_menu_3a">- <strong>Use in favorites menu:</strong></a></strong>
+
+<dd>
+<p>Only available if turned on in setup. With this option you can mark a search
+to be used in the favorites menu. The search results of all these searches are
+listed in the favorites menu.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_result_menu_layout_3a">- <strong>Result menu layout:</strong></a></strong>
+
+<dd>
+<p>Only available if you have defined more than one menu template for search
+results in epgsearchmenu.conf. This option is used to assign a different menu
+layout for the search results of this search.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_use_as_search_timer_3a">- <strong>Use as Search Timer:</strong></a></strong>
+
+<dd>
+<p>If set to yes, the plugin will do a background scan of the EPG in
+certain intervals and add a timer, if there is a match. You have to
+activate the 'search timers' in the setup. If set to ``user defined'' one
+can specify time margins with key 'blue' where the search timer is active
+or not.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_action_3a">- <strong>Action:</strong></a></strong>
+
+<dd>
+<p>Default action is creating a timer for the search results. But you can
+also choose to simply announce the found event via OSD or to switch
+to the event one minute before it starts.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_serial_recording_3a">- <strong>Serial recording:</strong></a></strong>
+
+<dd>
+<p>If set to yes, the recordings will be stored in a folder with the name
+of the broadcasting and the recordings itself will have the name of
+the episode. If there is no episode name, the date and time of the
+recording will be used.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_directory_3a">- <strong>Directory:</strong></a></strong>
+
+<dd>
+<p>Here you can assign a directory, where the recording should be stored,
+e.g. 'SciFi'. Use the key 'blue' to select directory entries already
+used in other search entries or given by entries in the file
+epgsearchdirs.conf (simply place your directories here one at each line
+without the leading video directory, also see MANUAL).
+If your provider delivers extended EPG infos you can also use
+variables like ``%Genre%'' or ``%Category%'' in your directory
+entry. These are replaced with the current EPG info, when a timer is
+created.</p>
+</dd>
+<dd>
+<p>See also <code>epgsearch(4)</code> 'Using variables in the directory
+entry of a search timer'.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_delete_recordings_after__2e_2e_2e_days_3a">- <strong>Delete recordings after ... days:</strong></a></strong>
+
+<dd>
+<p>Some recordings should only be kept for a few days, like news. With
+this feature you can tell epgsearch to delete them automatically
+after ... days.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_pause_if__2e_2e_2e_recordings_exist_3a">- <strong>Pause if ... recordings exist:</strong></a></strong>
+
+<dd>
+<p>If the given numbers of recordings currently exists, then epgsearch
+will not create further timers. After deleting one or more
+recordings it will go on generating new timers.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_avoid_repeats_3a">- <strong>Avoid repeats:</strong></a></strong>
+
+<dd>
+<p>If you don't want to record repeats, this feature tries to check if
+an event was already recorded/programmed and skips it. Please refer
+to the section 'Avoid repeats - internals' below before using it.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_allowed_repeats_3a">- <strong>Allowed repeats:</strong></a></strong>
+
+<dd>
+<p>If you like to accept a certain amount of repeats you can give here
+their number.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_only_repeats_within__2e_2e_2e_days_3a">- <strong>Only repeats within ... days:</strong></a></strong>
+
+<dd>
+<p>Give here the number of days a repeat has to follow its first
+broadcast. 0 is equal to no restriction.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_compare_title_3a">- <strong>Compare title:</strong></a></strong>
+
+<dd>
+<p>When comparing to events then specify here if the title should be
+compared.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_compare_subtitle_3a">- <strong>Compare subtitle:</strong></a></strong>
+
+<dd>
+<p>When comparing to events then specify here if the subtitle should be
+compared. If there is no subtitle than this event is always
+different to an event with/without a subtitle.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_compare_description_3a">- <strong>Compare description:</strong></a></strong>
+
+<dd>
+<p>When comparing to events then specify here if the description should
+be compared.</p>
+</dd>
+<dd>
+<p>For comparison all parts of the description, that look like a
+category value, are removed first. The remaining text will be
+compared. If this is similar at 90% (regarding the
+Levinshtein-Distance algorithm) then it will be accepted as equal.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_compare_categories_3a">- <strong>Compare categories:</strong></a></strong>
+
+<dd>
+<p>With the button 'setup' you can also specify which categories should
+be compared. As with subtitles an event is different if it has no
+according category value.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_priority_2c_lifetime_2c_margins_for_start_and_">- <strong>Priority, lifetime, margins for start and stop:</strong></a></strong>
+
+<dd>
+<p>Each search timer can have its own settings for these parameters.
+Defaults can be adjusted in the plugins setup.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_vps_3a">- <strong>VPS:</strong></a></strong>
+
+<dd>
+<p>If set to yes, VPS is used, but only, if activated in VDR's setup menu and
+if the broadcasting has VPS information.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_auto_delete_3a">- <strong>Auto delete:</strong></a></strong>
+
+<dd>
+<p>to automatically delete a search timer if the following is true:</p>
+</dd>
+<dd>
+<pre>
+ * after x recordings, or
+ * after x days after the first recording</pre>
+</dd>
+<dd>
+<p>Only complete recordings are counted. The deletion is executed directly after
+the correspondig recording</p>
+</dd>
+</li>
+</dl>
+<p>To toggle the flag 'Use as search timer' without editing the search
+entry you can use the key '2'. This will call directly the second
+command of the command menu.</p>
+<p>
+</p>
+<h3><a name="1_2_2_menu_search_results">1.2.2 Menu search results</a></h3>
+<p>This menu displays the search results. A 'T' lets you know, that there
+is already a timer for the event. A 't' means that there's only a
+partial timer for it, as in standard schedules menu.</p>
+<p>
+</p>
+<h2><a name="1_3_extended__now__and__next__and_favorites">1.3 Extended 'now' and 'next' and favorites</a></h2>
+<p>By setup, one can add up to 4 additional times to extend the green
+button, e.g. 'afternoon', 'prime time', 'late night'. Times, that are
+already passed, are skipped (you will not get 'afternoon' at evening) with the
+exception that a time will be displayed for the next day, if it is less then
+20h in the future.
+In these menus you can shift the currently displayed time by pressing
+FastRew or FastFwd to move back and forward in time. If you don't have
+these keys on your remote, you can access this function by pressing
+'0' to toggle the green and yellow button to '&lt;&lt;' and '&gt;&gt;'. This toggling
+can be adjusted by setup.</p>
+<p>You can display a progress bar in 'now' and 'next'. When using text2skin you
+should use the setup option ``text2skin'' in the setup option ``Show progress in
+'Now'''/Show progress in 'Next'`` (the setting 'graphical' may also work with
+text2skin, but this depends on the selected skin).</p>
+<p>Furthermore you can enable in the setup an favorites list. You can configure
+your searchtimers (``Use in favorite list'') to display their results in
+you favorite list. This list display event in the next 24 hours ordered by time.</p>
+<p>
+</p>
+<h2><a name="1_4_menu_setup">1.4 Menu setup</a></h2>
+<p>
+</p>
+<h3><a name="1_4_1_general">1.4.1 General</a></h3>
+<dl>
+<dt><strong><a name="item__2d_hide_main_menu_entry_3a">- <strong>Hide main menu entry:</strong></a></strong>
+
+<dd>
+<p>This hides the main menu entry 'search'. Attention: when the plugin is
+assigned to key 'green' then hiding the plugin will give you VDR's
+standard schedule menu (see below to avoid this).</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_main_menu_entry_3a">- <strong>Main menu entry:</strong></a></strong>
+
+<dd>
+<p>If not hidden, the name of main menu entry can be set here. Default is
+'Program guide'. Note: If you set it to something different from the default
+then the main menu entry is no longer dependent on the OSD language. Setting
+it back to default or empty restores this behavior again.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_start_menu_3a">- <strong>Start menu:</strong></a></strong>
+
+<dd>
+<p>Select the starting menu 'Schedules' or 'Now'</p>
+</dd>
+</li>
+</dl>
+<p>
+</p>
+<h3><a name="1_4_2_epg_menus">1.4.2 EPG menus</a></h3>
+<dl>
+<dt><strong><a name="item__2d_ok_key_3a">- <strong>Ok key:</strong></a></strong>
+
+<dd>
+<p>Choose here the behavior of key 'Ok'. You can use it to display the summary
+or to switch to the corresponding channel. Note: the functionality of key
+'blue' (Switch/Info/Search) depends on this setting.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_red_key_3a">- <strong>Red key:</strong></a></strong>
+
+<dd>
+<p>Select if you like to have Standard ('Record') or 'Commands' as
+assignment for key 'red'.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_blue_key_3a">- <strong>Blue key:</strong></a></strong>
+
+<dd>
+<p>select if you like to have Standard ('Switch') or 'Search' as
+assignment for key 'blue'.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_show_progress_in__27now_27_3a">- <strong>Show progress in 'Now':</strong></a></strong>
+
+<dd>
+<p>In the menu 'what's on now' you can display a progress bar, that
+displays the progress of the current item. When using text2skin you
+should use the setup option ``text2skin'' (the setting 'graphical' may also
+work with text2skin, but this depends on the selected skin).</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_show_channel_numbers_3a">- <strong>Show channel numbers:</strong></a></strong>
+
+<dd>
+<p>Select this if you like to have a leading channel number before each
+item in the EPG menus.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_show_channel_separators_3a">- <strong>Show channel separators:</strong></a></strong>
+
+<dd>
+<p>Display channel group separators between channel in the menus
+'Overview now',...</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_show_day_separators_3a">- <strong>Show day separators:</strong></a></strong>
+
+<dd>
+<p>Display a day separator between events on different days in the
+schedule menu.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_show_radio_channels_3a">- <strong>Show radio channels:</strong></a></strong>
+
+<dd>
+<p>Also list radio channels.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_limit_channels_from_1_to_3a">- <strong>Limit channels from 1 to:</strong></a></strong>
+
+<dd>
+<p>If you have a large channel set you can speed up things when you limit the
+displayed channels with this setting. Use '0' to disable the limit. If the
+current channel is above the limit, the limit is ignored and all channels will
+be displayed again.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d__27one_press_27_timer_creation_3a">- <strong>'One press' timer creation:</strong></a></strong>
+
+<dd>
+<p>If set to 'yes' a timer is immediately created when pressing 'Record' as
+introduced in vdr-1.3.38, else the timer edit menu is displayed.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_show_channels_without_epg_3a">- <strong>Show channels without EPG:</strong></a></strong>
+
+<dd>
+<p>Display channels without EPG to allow switching or create a timer.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_time_interval_for_fr_2fff__5bmin_5d_3a">- <strong>Time interval for FR/FF [min]:</strong></a></strong>
+
+<dd>
+<p>In the menus 'now', 'next', 'user def 1', ... you can shift the
+displayed time by pressing FastRew, FastFwd on your remote control.
+Adjust the amount of minutes to jump here.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_toggle_green_2fyellow_3a">- <strong>Toggle Green/Yellow:</strong></a></strong>
+
+<dd>
+<p>If you don't have FastRew, FastFwd on your remote control, set this to
+yes. When pressing '0' in the menus, this toggles the assignment of
+the color keys and assigns e.g. '&lt;&lt;' and '&gt;&gt;' to 'green' and 'yellow'.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_show_favorites_menu_3a">- <strong>Show favorites menu:</strong></a></strong>
+
+<dd>
+<p>A favorites menu can display a list of your favorite broadcasts. Enable this
+if you want an additional menu besides 'Now' and 'Next'. You can choose
+between displaying this menu before or after the menus with user-defined
+times. Any search can be used as a favorite. You only have to set the option
+'Use in favorites menu' when editing a search.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_for_the_next__2e_2e_2e_hours_3a">- <strong>for the next ... hours:</strong></a></strong>
+
+<dd>
+<p>This value lets you adjust the timespan used to display the favorites.</p>
+</dd>
+</li>
+</dl>
+<p>
+</p>
+<h3><a name="1_4_3_userdefined_epg_times">1.4.3 User-defined EPG times</a></h3>
+<dl>
+<dt><strong><a name="item__2d_use_user_time_1_2e_2e4_3a">- <strong>Use user time 1..4:</strong></a></strong>
+
+<dd>
+<p>Add up to 4 user-defined times besides 'now' and 'next'.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_description_3a">- <strong>Description:</strong></a></strong>
+
+<dd>
+<p>Name of the user-defined time, e.g. 'Afternoon', 'Prime time', 'Late
+night'.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_time_3a">- <strong>Time:</strong></a></strong>
+
+<dd>
+<p>The associated time of the user-defined time.</p>
+</dd>
+</li>
+</dl>
+<p>
+</p>
+<h3><a name="1_4_4_timer_programming">1.4.4 Timer programming</a></h3>
+<dl>
+<dt><strong><a name="item__2d_use_vdr_27s_timer_edit_menu_3a">- <strong>Use VDR's timer edit menu:</strong></a></strong>
+
+<dd>
+<p>When programming a standard timer epgsearch uses an extended menu,
+that also supports a directory item, user defined weekday selection
+and subtitle completion. If you are using a patched version of VDR,
+that also has an extended timer edit menu and like to use this menu
+rather than epgsearch's then set this option to 'Yes'.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_default_recording_directory_3a">- <strong>Default recording directory:</strong></a></strong>
+
+<dd>
+<p>This entry will be used in standard timer programming as default
+directory. You can also use EPG category variables (e.g. 'My
+Movies~%Category%~%Genre%'). When the timer edit menu is launched
+epgsearch tries to replace all variables with the values found in
+the description of the event. If not all variables could be replaced
+then the directory item is left blank.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_add_episode_to_manual_timers_3a">- <strong>Add episode to manual timers:</strong></a></strong>
+
+<dd>
+<p>When manually adding a timer epgsearch can automatically add the
+episode name to the timer file resulting in a sub-folder for the
+later recording, that is named with the episode name. Choose here how
+this should be done. 'smart' tries to recognize if this makes
+sense. Therefore it checks the length of the event and skips the
+subtitle if the event has more than 80min.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_default_timer_check_method_3a">- <strong>Default timer check method:</strong></a></strong>
+
+<dd>
+<p>Manual timers can be checked for EPG changes. Here you can setup the default
+check method for each channel. The following methods exist:
+ * no check
+ * by event ID: checks by an event ID supplied by the channel provider.
+ * by channel and time: check by the duration match.</p>
+</dd>
+<dd>
+<p>Not all channels provide a proper event ID, so you can setup the default for
+each channel here. When programming a manual timer, this default use used in
+epgsearch's own timer edit menu.</p>
+</dd>
+</li>
+</dl>
+<p>
+</p>
+<h3><a name="1_4_5_search_and_search_timers">1.4.5 Search and search timers</a></h3>
+<dl>
+<dt><strong><a name="item__2d_use_search_timers_3a">- <strong>Use search timers:</strong></a></strong>
+
+<dd>
+<p>If yes, the plugin makes a background scan of the EPG and adds timers
+if it finds matching entries. This applies only to searches that are
+marked with 'use as search timer'.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_update_interval_3a">- <strong>Update interval:</strong></a></strong>
+
+<dd>
+<p>The update interval of the background scan for search timers in minutes.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_svdrp_port_3a">- <strong>SVDRP port:</strong></a></strong>
+
+<dd>
+<p>If you are using a SVDRP port other than 2001 then enter this here
+to get the search timers working.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_default_priority_3a">- <strong>Default Priority:</strong></a></strong>
+
+<dd>
+<p>Default priority of generated timers.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_default_lifetime_3a">- <strong>Default Lifetime:</strong></a></strong>
+
+<dd>
+<p>Default lifetime of generated timers.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_margin_at_start_2fstop_3a">- <strong>Margin at start/stop:</strong></a></strong>
+
+<dd>
+<p>Default margins of generated timers.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_no_announcements_when_replaying_3a">- <strong>No announcements when replaying:</strong></a></strong>
+
+<dd>
+<p>suppress event announcements while any replay is active.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_recreate_timers_after_deletion_3a">- <strong>Recreate timers after deletion:</strong></a></strong>
+
+<dd>
+<p>epgsearch remembers by default which timers where already created by search
+timers and will not recreate them if they were removed. To disable this
+behaviour set this to 'Yes'.</p>
+</dd>
+<dd>
+<p>Default margins of generated timers.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_ignore_pay_2dtv_channels_3a">- <strong>Ignore Pay-TV channels:</strong></a></strong>
+
+<dd>
+<p>Set this to 'Yes' if you don't want to have events from Pay-TV channels when
+searching for a repeat.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_search_templates_3a">- <strong>Search templates:</strong></a></strong>
+
+<dd>
+<p>Here you can manage search templates which can be used when creating a
+search.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_blacklists_3a">- <strong>Blacklists:</strong></a></strong>
+
+<dd>
+<p>Here you can manage blacklists which can be used to suppress unwanted events
+within a search.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_channel_groups_3a">- <strong>Channel groups:</strong></a></strong>
+
+<dd>
+<p>Here you can setup channel groups (e.g. Sport channels, Pay-TV
+channels) that can be used as criterion in searches. The same can
+be done in the search edit menu.</p>
+</dd>
+</li>
+</dl>
+<p><strong>Important</strong>: if you get your EPG from external sources make sure that search
+timer updates are disabled while your EPG is updated. The reason for this is
+that epgsearch will remove timers without events assigned to them. This
+situation can exist while the new EPG is feeded to VDR. A simple way to
+disable search timer updates is to use the SVDRP command SETS in your EPG
+update script:</p>
+<p>svdrpsend.pl plug epgsearch SETS off</p>
+<p>&lt;your EPG update script&gt;</p>
+<p>svdrpsend.pl plug epgsearch SETS on</p>
+<p>
+</p>
+<h3><a name="1_4_6_timer_conflict_checking">1.4.6 Timer conflict checking</a></h3>
+<dl>
+<dt><strong><a name="item__2d_ignore_below_priority_3a">- <strong>Ignore below priority:</strong></a></strong>
+
+<dd>
+<p>If a timer will fail with a priority below the given value, you won't get an
+OSD message about this and the conflict will be classified as 'not relevant'
+in the conflicts overview.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_ignore_conflict_duration_less__2e_2e_2e_min_2e">- <strong>Ignore conflict duration less ... min.:</strong></a></strong>
+
+<dd>
+<p>If a conflict will last only the given minutes it will not produce an OSD
+message and the conflict will be classified as 'not relevant'
+in the conflicts overview.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_only_check_within_next__2e_2e_2e_days_3a">- <strong>Only check within next ... days:</strong></a></strong>
+
+<dd>
+<p>Here you can specify the day range that should be used for the conflict
+check.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_after_each_timer_programming_3a">- <strong>After each timer programming:</strong></a></strong>
+
+<dd>
+<p>This performs a conflict check after each manual timer programming and - if
+the new/modified timer is involved in a conflict - pops up an OSD message
+about it.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d__22when_a_recording_starts_3a">- <strong>``When a recording starts:</strong></a></strong>
+
+<dd>
+<p>Set this to 'yes' if the conflict check should be performed when a recording starts.
+In the case of a conlfict you get immediately a message that informs you about it.
+The message is only displayed if the conflict is within the next 2 hours.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_after_each_search_timer_update_3a">- <strong>After each search timer update:</strong></a></strong>
+
+<dd>
+<p>Specify here if you want to have a conflict check after each search timer
+update. If set to 'No':</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_every__2e_2e_2e_minutes_3a">- <strong>every ... minutes:</strong></a></strong>
+
+<dd>
+<p>performs a conflict check in the background every ... minutes and informs
+about relevant conflicts via OSD. Set this to '0' to disable this feature.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_if_conflicts_within_next__2e_2e_2e_minutes_3a">- <strong>if conflicts within next ... minutes:</strong></a></strong>
+
+<dl>
+<dt><strong>- <strong>every ... minutes:</strong></strong>
+
+<dd>
+<p>if you like to have a more frequent check and OSD notification when a
+conflict appears within the given time, use this feature.</p>
+</dd>
+</li>
+</dl>
+<dt><strong><a name="item__2d_avoid_notification_when_replaying_3a">- <strong>Avoid notification when replaying:</strong></a></strong>
+
+<dd>
+<p>Set this to 'yes' if the don't want to get OSD messages about conflicts if
+you currently replay something. Nevertheless messages will be displayed if
+ the first upcoming conflict is within the next 2 hours.</p>
+</dd>
+</li>
+</dl>
+<p>Also have a look at <code>epgsearch(4)</code>, section 'Working with the timer conflict menu'.</p>
+<p>
+</p>
+<h3><a name="1_4_7_email_notification">1.4.7 Email notification</a></h3>
+<p>Please make sure, that 'sendEmail.pl' is in the path of your executables and
+that the 'epgsearchupdmail.templ' and 'epgsearchconflmail.templ' exists in
+epgsearch's configurations directory!</p>
+<dl>
+<dt><strong><a name="item__2d_search_timer_notification_3a">- <strong>Search timer notification:</strong></a></strong>
+
+<dd>
+<p>Enable this, if you want to get an email notification, when the search timer
+background thread has</p>
+</dd>
+<dd>
+<pre>
+ - created a new timer
+ - modified an existing timer
+ - deleted a timer, that was void because of EPG changes or other user
+ actions.</pre>
+</dd>
+<dd>
+<p>(Also requires 'Use search timers' in the search timer setup to be activated.)</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_timer_conflict_notification_3a">- <strong>Timer conflict notification:</strong></a></strong>
+
+<dd>
+<p>Enable this, if you want to get an email notification about timer
+conflicts. The notification will only include 'relevant' conflicts as
+specified in the timer conflict setup. epgsearch will always send a new
+notification if there is any change in the current conflicts.</p>
+</dd>
+<dd>
+<p>(Also requires 'After each search timer update' or 'every ... minutes' in the
+conflict check setup to be activated.)</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_send_to_3a">- <strong>Send to:</strong></a></strong>
+
+<dd>
+<p>The mail adress of the recipient. Note: Some providers (like Arcor) don't
+allow the same adresse for sender and recipient.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_mail_method_3a">- <strong>Mail method:</strong></a></strong>
+
+<dd>
+<p>You can choose between:</p>
+</dd>
+<dd>
+<pre>
+ - sendEmail.pl: this is a simply script shipped with epgsearch, that allows
+ mail delivery also on systems without a configured mail server. Please
+ copy it to your $PATH
+ - sendmail: requires a properly configured mail system</pre>
+</dd>
+</li>
+<dt><strong><a name="item__2d_email_address_3a">- <strong>Email address:</strong></a></strong>
+
+<dd>
+<p>Your <code>full(!)</code> email account address to be used for sending the mail.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_smtp_server_3a">- <strong>SMTP server:</strong></a></strong>
+
+<dd>
+<p>The name of your SMTP server to be used for sending the mails.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_use_smtp_authentication_3a">- <strong>Use SMTP authentication:</strong></a></strong>
+
+<dd>
+<p>Select 'yes' if your account needs authentication to send mails.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_auth_user_3a">- <strong>AUTH user:</strong></a></strong>
+
+<dd>
+<p>Specify the accounts username if your account needs authentication.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_auth_password_3a">- <strong>AUTH password:</strong></a></strong>
+
+<dd>
+<p>Specify the accounts password if your account needs authentication.
+Note: The password is saved as plain text. You have to make sure on your own
+that your system is safe and no VDR configurations files are visible to non
+authorized persons.</p>
+</dd>
+</li>
+</dl>
+<p>After the account setup, check if it works with 'Test'. If you are
+using 'sendEmail.pl' for mail delivery, there should be something like 'Email
+sent successfully' at the end of the test output. The test function is not
+available for method 'sendmail'.</p>
+<p>Also have a look at <code>epgsearch(4)</code>, section 'Email notifications'.</p>
+<p>
+</p>
+<hr />
+<h1><a name="2__search_timers">2. Search timers</a></h1>
+<p>This is quite the same as VDRAdmin's auto-timers, but needs no external
+software. When you create a search, you can give it an option to use
+it as search timer. Now the plugin scans EPG entries in certain update
+intervals (-&gt;setup) in the background and creates timers if there
+are matching entries. If you don't like to get a new timer, but only
+want to be informed about the event set 'Announce only (no timer)' to
+yes.
+Since these search timers are quite useful for serials, you can set
+the option 'serial recording' in a search, which creates timers
+whose recordings are stored in a folder with the serials name and
+whose entries are named with the episode name. If there is no episode
+name, the plugin names the recording with a date/time string.</p>
+<p>To use search timers, you also have to activate them in the plugins setup.
+Also edit the SVDRP port, if you are not using the default 2001.</p>
+<p>If you want to trigger a background scan manually simply</p>
+<p>touch /etc/vdr/plugins/epgsearch/.epgsearchupdate</p>
+<p>This can also be part of your shutdown script. (Add here a sleep
+afterwards to give the plugin the time to finish the scan.)</p>
+<p>For more info about searchtimers please refer to <code>epgsearch(4)</code>,
+'Description of the search process' and 'How do Search Timers work?'</p>
+<p>
+</p>
+<h2><a name="2_1__avoid_repeats___internals">2.1 'Avoid repeats' - internals</a></h2>
+<p>This section explains the feature 'Avoid repeats' for a search timer.
+Sometimes one cannot avoid double recordings of an event only by
+setting the corresponding search criterions.</p>
+<p>Therefore the feature 'avoid repeats' tries to check before creating a
+timer, if the same event was already recorded in the past or if there
+is a timer that records the same event. If so, there will be no new
+timer for the event.</p>
+<p>
+</p>
+<h2><a name="2_2_how_do_we_compare_two_events">2.2 How do we compare two events?</a></h2>
+<p>To check if two events are the same there are many possible settings
+for a search timer. You can choose the title, subtitle, description or
+extended EPG categories within the description of an event to be
+compared with the elements of another event.</p>
+<p>This comparison is always done case-sensitive and for the whole
+term. But the description of an event makes an exception of this.
+First all text within the description will be truncated that looks
+like an extended category entry, e.g. 'Rating: tip'. An extended
+category entry is a line of text beginning with max. 40 signs,
+followed by ':' and ending with max. 60 further signs.
+The reason for this cutting is that some categories like the rating of
+an event are not part of the description of the repeat of the same
+event.</p>
+<p>The remaining text will now be compared by length. If the difference
+is bigger then 90%, then we rate the description of the two events as
+different. If not, we apply the Levinsthein-Distance-Algorithm (LD),
+which makes a fuzzy text comparison. We accept the description of the
+events as equal, if LD returns a match of more then 90%.
+Since LD is quite runtime intensive (O(mn)), you should not choose
+'compare description' as the only comparison criterion, but combine
+it always with other criterions.</p>
+<p>
+</p>
+<h2><a name="2_3_how_and_when_do_we_compare">2.3 How and when do we compare?</a></h2>
+<p>As already mentioned each search timer update checks search timers
+with this feature for recordings in the past or an already existing
+timer for the same event.</p>
+<p>To remember past recordings epgsearch stores their info in the file
+epgsearchdone.data. You can have a look at the contents of this file
+calling 'show recordings done' in the 'actions' of the searches menu.
+This file only stores info about recordings that are complete,
+i.e. that started and stopped just in time. So a broken recording will
+not be stored in this file and epgsearch will automatically try to
+record the next repeat, if there is any.</p>
+<p><strong>How to use it?</strong></p>
+<p>As you see, the whole feature depends on the quality of the EPG.
+After creating such a search timer, you should first check if it does
+what is intended. Therefore the menu of search results has an
+additional mode for the key 'blue' named 'Timer preview'. Here you can
+see, what timers the next update would create. Existing timers are
+labeled with 'T', future timers with 'P'.</p>
+<p>Hint: If the programming results in a conflict simply disable the
+conflicting timer in the timers menu. The next search timer update,
+will try to program a different timer for the same event, if it exists.</p>
+<p><strong>When it works not correctly :-)</strong></p>
+<p>To get a better control of the programming or not-programming of the
+timers when using this feature a log file was introduced. When starting
+epgsearch with the command line option '-v n' where n is the log level
+than you get additional info in the file epgsearch.log. Available log
+levels are 0 (no logging) to 3 (extended logging). See also the manual
+for the command line options.</p>
+<p>
+</p>
+<hr />
+<h1><a name="3__usage_from_other_plugins_or_scripts">3. Usage from other plugins or scripts</a></h1>
+<p>See <code>epgsearch(4)</code>.</p>
+<p>
+</p>
+<hr />
+<h1><a name="4__using_extended_epg_info">4. Using extended EPG info</a></h1>
+<p>Some EPG providers deliver additional EPG information like the type of
+event, the video and audio format, cast,...</p>
+<p>Using tvm2vdr or epg4vdr you can import this into vdr.
+To use this information with search timers one has to configure it
+with the file epgsearchcats.conf in epgsearchs config directory. The
+format of the file is as follows:</p>
+<pre>
+ ID|category name|name in menu|values separated by ','(option)|search mode(option)</pre>
+<pre>
+ - 'ID' should be a unique positive integer
+ (changing the id later on will force you to re-edit your search timers!)
+ - 'category name' is the name as delivered by the EPG provider, e.g. 'Genre'
+ - 'name in menu' is the name displayed in epgsearch.
+ - 'values' is an optional list of possible values
+ - 'search mode' specifies the search mode:
+ text comparison:
+ 0 - the whole term must appear as substring
+ 1 - all single terms (delimiters are ',', ';', '|' or '~')
+ must exist as substrings. This is the default search mode.
+ 2 - at least one term (delimiters are ',', ';', '|' or '~')
+ must exist as substring.
+ 3 - matches exactly
+ 4 - regular expression
+ numerical comparison:
+ 10 - less
+ 11 - less or equal
+ 12 - greater
+ 13 - greater or equal
+ 14 - equal
+ 15 - not equal</pre>
+<p>Sample files for epgsearchcats.conf are delivered with the plugin in the
+directory 'conf'.</p>
+<p>Simply copy the one that fits for you to epgsearchs configurations directory
+filename epgsearchcats.conf and then have a look to the search timers
+edit menu (after a restart of VDR).</p>
+<p>Since setting up a new epgsearchcats.conf is a lot of work, I've added
+a small tool 'createcats', that makes the biggest part of the job. It
+should have been compiled with the plugin and exists in the sources
+directory.</p>
+<p>See <code>createcats(1)</code> for information about how to use it.</p>
+<p>Internals: epgsearch scans the summary of an event for the category
+name followed by ': ' for all categories that have a corresponding
+value set in the search timer. The search is case sensitive regarding
+the category name as also the value.</p>
+<p>
+</p>
+<hr />
+<h1><a name="5__replacing_the_standard_schedule_menu">5. Replacing the standard schedule menu</a></h1>
+<p>To use this plugin as a replacement for the default green key, simply
+put the line</p>
+<pre>
+ Green @epgsearch</pre>
+<p>in your keymacros.conf. If you don't like to get another plugin entry
+in your main menu, first hide it by setup. Then you could use my
+launcher-plugin and put the line</p>
+<pre>
+ Green @launcher x</pre>
+<p>in your keymacros.conf, where x is the position of the Epgsearch
+plugin within launchers menu listing.</p>
+<p>Attention: Hiding the plugin without using the launcher plugin or
+other patches that enable calling hidden plugins will show the standard
+schedules menu when you press the green key. This is not needed
+anymore after VDR &gt;= 1.3.32.</p>
+<p>Another approach is using a patch to VDR that replaces vdr's standard
+schedule menu with epgsearch (vdr-replace-schedulemenu.diff.gz in the
+patches subdir, thanks to the author Uwe/egal@vdrportal). When using
+this patch the entry should look like</p>
+<pre>
+ Gree Schedule</pre>
+<p>This patch is already included in some patch collections, like the
+Bigpatch.</p>
+<p>
+</p>
+<hr />
+<h1><a name="6__addons">6. Add-ons</a></h1>
+<p>epgsearch delivers 2 'mini'-plugins. Both require an installed epgsearch (but
+epgsearch can be hided in the main menu):</p>
+<dl>
+<dt><strong><a name="item__2d_epgsearchonly_3a">- <strong>epgsearchonly:</strong></a></strong>
+
+<dd>
+<p>For those who only want to use the search feature and/or
+search timers or simply want to have a separate main menu entry for the
+search feature. This plugin creates a main menu entry 'Search' which calls
+epgsearch search menu.
+Activation in VDR start script with ``-Pepgsearchonly''.</p>
+</dd>
+</li>
+<dt><strong><a name="item__2d_conflictcheckonly_3a">- <strong>conflictcheckonly:</strong></a></strong>
+
+<dd>
+<p>The timer conflict check can also have its own main menu
+entry which displays epgsearch conflict overview menu. It has a setup option
+to display an information about the last check directly in its main menu entry.
+Activation in VDR start script with ``-Pconflictcheckonly''.</p>
+</dd>
+</li>
+</dl>
+<p>Have fun!</p>
+<p>Christian Wieninger</p>
+<p>
+</p>
+<hr />
+<h1><a name="advanced_description">Advanced description</a></h1>
+<p>See <code>epgsearch(4)</code> or read online</p>
+<p><a href="http://winni.vdr-developer.org/epgsearch/README.DE">http://winni.vdr-developer.org/epgsearch/README.DE</a></p>
+<p><a href="http://winni.vdr-developer.org/epgsearch/README">http://winni.vdr-developer.org/epgsearch/README</a></p>
+<p><a href="http://winni.vdr-developer.org/epgsearch/MANUAL">http://winni.vdr-developer.org/epgsearch/MANUAL</a></p>
+<p>
+</p>
+<hr />
+<h1><a name="see_also">SEE ALSO</a></h1>
+<p><code>epgsearch.conf(5)</code>, <code>epgsearchcats.conf(5)</code>, <code>epgsearchcmds.conf(5)</code>, <code>epgsearchdirs.conf(5)</code>, <code>epgsearchmenu.conf(5)</code>, <code>epgsearchuservars.conf(5)</code>, <code>epgsearchdone.data(5)</code>, <code>epgsearchswitchtimer.conf(5)</code>, <code>epgsearchblacklists.conf(5)</code>, <code>epgsearchchangrps.conf(5)</code></p>
+<p>
+</p>
+<hr />
+<h1><a name="files">FILES</a></h1>
+<p><em>epgsearch.conf</em></p>
+<p>Searchtimers. See <code>epgsearch.conf(5)</code>.</p>
+<p><em>epgsearchcats.conf</em></p>
+<p>Categories, advanced epg. See <code>epgsearchcats.conf(5)</code>.</p>
+<p><em>epgsearchcmds.conf</em></p>
+<p>EPG-commands, like the commands in commands.conf. See <code>epgsearchcmds.conf(5)</code>.</p>
+<p><em>epgsearchdirs.conf</em></p>
+<p>Pre-defined patches which can be selected while editing an searchtimer. See <code>epgsearchdirs.conf(5)</code>.</p>
+<p><em>epgsearchmenu.conf</em></p>
+<p>Configuration of the OSD menu layout. See <code>epgsearchmenu.conf(5)</code>.</p>
+<p><em>epgsearchuservars.conf</em></p>
+<p>User defined variables. See <code>epgsearchuservars.conf(5)</code>.</p>
+<p><em>epgsearchdone.data</em></p>
+<p>The done-data. See <code>epgsearchdone.data(5)</code>.</p>
+<p><em>epgsearchswitchtimers.conf</em></p>
+<p>The switchtimers. See <code>epgsearchswitchtimer.conf(5)</code>.</p>
+<p><em>epgsearchblacklists.conf</em></p>
+<p>The blacklist. See <code>epgsearchblacklists.conf(5)</code>.</p>
+<p><em>epgsearchchangrps.conf</em></p>
+<p>The channelgroups. See <code>epgsearchchangrps.conf(5)</code>.</p>
+<p><em>epgsearchtemplates.conf</em></p>
+<p>Templates for searchtimers. See <code>epgsearchtemplates.conf(5)</code>.</p>
+<p>
+</p>
+<hr />
+<h1><a name="author__man_pages_">AUTHOR (man pages)</a></h1>
+<p>Mike Constabel &lt;epgsearch (at) constabel (dot) net&gt;</p>
+<p>
+</p>
+<hr />
+<h1><a name="report_bugs">REPORT BUGS</a></h1>
+<p>Bugreports (german):</p>
+<p><a href="http://www.vdr-developer.org/mantisbt/">http://www.vdr-developer.org/mantisbt/</a></p>
+<p>Mailinglist:</p>
+<p><a href="http://www.vdr-developer.org/mailman/listinfo/epgsearch">http://www.vdr-developer.org/mailman/listinfo/epgsearch</a></p>
+<p>
+</p>
+<hr />
+<h1><a name="copyright_and_license">COPYRIGHT and LICENSE</a></h1>
+<p>Copyright (C) 2004-2007 Christian Wieninger</p>
+<p>This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.</p>
+<p>This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.</p>
+<p>You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+Or, point your browser to <a href="http://www.gnu.org/licenses/old-licenses/gpl-2.0.html">http://www.gnu.org/licenses/old-licenses/gpl-2.0.html</a></p>
+<p>The author can be reached at <a href="mailto:cwieninger@gmx.de">cwieninger@gmx.de</a></p>
+<p>The project's page is at <a href="http://winni.vdr-developer.org/epgsearch">http://winni.vdr-developer.org/epgsearch</a></p>
+<p>The MD5 code is derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm.</p>
+
+</body>
+
+</html>