summaryrefslogtreecommitdiff
path: root/README
blob: bbfbe2dd36613918f2261cc6e8eb7c0992261b17 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
This is a plug-in for the Video Disk Recorder (VDR).

Written by:                  Thomas Creutz <thomas.creutz@gmx.de>
                             Tobias Grimm <tg@e-tobi.net>

Project's homepage:          URL

Latest version available at: URL

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.

See the file COPYING for the full license information

Description:
------------

This plug-in allows to reorganise VDR's main OSD menu. The new menu structure is
read from an XML config file. It's basic format is based on the format used in
the setup plug-in.

Requirements:
-------------

The plug-in has been tested with vdr 1.4.7 and 1.5.7. It requires the libxml++2.6
library.

Configuration:
--------------

The following parameters are available:

 -c FILE   --config=FILE   loads the specified xml file
                           (default: ConfigDir/plugins/menuorg.xml)

 -s FILE   --schema=FILE   loads the specified schema file
                           (default: ConfigDir/plugins/menuorg.dtd)


Upgrade from vdr-submenu plugin
-------------------------------

There is a convert script in this package. With it you can convert your old 
MainMenu.conf to the XML file which is needet by this plugin.

Example usage:

submenu2menuorg /var/lib/vdr/plugins/MainMenu.conf /var/lib/vdr/plugins/menuorg.xml

Attension: Your destination file will be overwritten without any warning!

When your vdr runs not as root, than you should verify that the file is writeable from vdr.


Menu file format
----------------

The menu configuration file, is a simple XML file and has to conform to it's
syntax rules. The root node always is <menus>.

There are only three kinds of menu items described by the following XML tags:

   <system> : System menu items, like the channels list or the timers
   <plugin> : Plug-in menu items
   <menu>   : A sub menu
   
In the menu hierarchy <system> and <plug-in> are leaf nodes, whereas <menu> is
an internal node. <menu> may contain any number of <system>, <plugin> or <menu>
nodes.

Each node is described by a name attribute. For <system> nodes, the following
names are possible:

  - Schedule
  - Channels
  - Timers
  - Recordings
  - Commands
  - Setup

The name of a <plugin> node describes the plug-ins name, not it's main menu text.

With the name attribute in <menu> nodes, the main menu title of this sub menu
will be set.

<system> or <plugin> items not configured in the menu configuration will not
be visible in VDR's OSD. This means, if you install a new plug-in, you must
manually add it to the menu file, in order to make it available for the
VDR menu.

e.g.:

    <?xml version="1.0" encoding="UTF-8"?>
    <menus>
        <system name="Schedule" />
        <system name="Channels" />
        <system name="Recordings" />
        <menu name="Video/Audio">
            <plug-in name="mp3" />
            <plug-in name="mplayer" />
            <menu name="CD/DVD">
                <plug-in name="burn" />
                <plug-in name="dvdselect" />
                <plug-in name="dvd" />
            </menu>
        </menu>
        <menu name="Timer">
            <system name="Timers" />
            <plug-in name="autotimeredit" />
            <plug-in name="sleeptimer" />
        </menu>
        <menu name="Games">
            <plug-in name="games" />
            <plug-in name="solitaire" />
            <plug-in name="freecell" />
        </menu>
        <menu name="System">
            <system name="Setup" />
            <system name="Commands" />
            <plug-in name="sysinfo" />
            <plug-in name="femon" />
        </menu>
    </menus>