epgsearchuservars.conf - Man Page

User defined variables


In this file you can defines variables which then can be used in epgsearch in any play where variables are possible.


Variables looks like %Variablename%.

“Variablename” can be consist of any alphanumerical character. Space and special characters are not allowed.

The variable names are case-insensitive.

Examples for possible names:

 %Series% %DocuVar1% %ThemesSubtitleDate1%


 %Series%=New series~Thriller

The variable %Series% will be assigned with the string “New series~Thriller”.

Assignments are always strings. Spaces stay spaces.


The variable %Path% gets the content of the variable %Series%.

You can do nearly everything:


The variable %Path% contains now the string “New series~Thriller~Lost”.

Control structures

You can use simple “if then else” constructions.

These constructions cannot contain strings, only variables. Spaces are ignored.


 %Variable%=%Path% ? %Path% : %Foo%

If %Path% is not empty, assign the content of %Path% to %Variable%, otherwise the content of %Foo%.

“%Path% ?” means “not empty?”. You can use other checks.

 %Variable%=%Path%!=5 ? %Path% : %Foo%

“%Path%!=5 ?” means “is %Path% equal 5?”

You can also compare variables.


 %Variable%=%Path%!=%Five% ? %Path% : %Foo%

Other possible checks:

 ==   equal
 !=   not equal

Calling a system command

You can call external commands. The returned string will be assigned to a variable

 %Result%=system(scriptname,%Variable1% %Variable2% -f %Variable3% --dir=%Variable4% --dummy)

Calls the script “scriptname” with the parameters “%Variable1%”, “%Variable2%”, etc. The result will be stored in %Result%.

You can use as many variables as you want.

If needed, epgsearch will quote the variable.

The script must return a string without line break!

If the script returns nothing, an empty string will be assigned to the Variable %Result%.

Possible variables

The following variables exist:

 %time%           - start time in format HH:MM
 %timeend%        - end time in format HH:MM
 %date%           - start date in format TT.MM.YY
 %datesh%         - start date in format TT.MM.
 %time_w%         - weekday name
 %time_d%         - start day in format TT
 %time_lng%       - start time in seconds since 1970-01-01 00:00
 %title%          - title
 %subtitle%       - subtitle
 %summary%        - summary
 %htmlsummary%    - summary, where all CR are replaced with '<br />'
 %eventid%        - numeric event ID

 %<epg-category>% - a value from the extended EPG categories, specified in
                    F<epgsearchcats.conf>, like %genre% or %category%

 %chnr%           - channel number
 %chsh%           - the short channel name
 %chlng%          - the 'normal' channel name
 %chdata%         - VDR's internal channel representation (e.g. 'S19.2E-1-1101-28106')

 %colon%          - the sign ':'
 %datenow%        - current date in format TT.MM.YY
 %dateshnow%      - current date in format TT.MM.
 %timenow%        - current time in format HH:MM
 %videodir%       - VDR video directory (e.g. /video)
 %plugconfdir%    - VDR plugin config directory (e.g. /etc/vdr/plugins)
 %epgsearchdir%   - epgsearch config directory (e.g. /etc/vdr/plugins/epgsearch)

See also epgsearchcats.conf(5).


 # Weekday, Date, Time
 %DateStr%=%time_w% %date% %time%

 # Themes or Subtitle or Date
 %ThemesSubtitleDate1%=%Subtitle% ? %Subtitle% : %DateStr%
 %ThemesSubtitleDate%=%Themes% ? %Themes% : %ThemesSubtitleDate1%

 # Calls this script to get a recording path

See Also

epgsearch(1), epgsearchcats.conf(5)

AUTHOR (man pages)

Mike Constabel <epgsearch (at) constabel (dot) net>

Report Bugs

Bug reports (german):


Mailing list:


Referenced By

epgsearch(1), epgsearch(4), epgsearchdirs.conf(5).

2021-02-19 perl v5.32.1 Epgsearch Version 2.4.0