Menuorg-plugin
(→Tipps) |
Wirbel (Diskussion | Beiträge) |
||
(24 dazwischenliegende Versionen von 13 Benutzern werden nicht angezeigt) | |||
Zeile 4: | Zeile 4: | ||
Organisieren des OSD-Menüs mit Submenüs | Organisieren des OSD-Menüs mit Submenüs | ||
− | + | ===Status=== | |
− | + | Letztes Update 03/2013 | |
− | + | ||
− | + | Plugins mit ähnlicher Funktion: | |
+ | * [[submenu-plugin]] | ||
+ | * [[Proxy-plugin]] | ||
+ | |||
==Softwareanforderungen== | ==Softwareanforderungen== | ||
− | * libxml++2.6 | + | * [http://libxmlplusplus.sourceforge.net/ libxml++2.6] |
==Installation== | ==Installation== | ||
− | |||
===Patches=== | ===Patches=== | ||
− | Das Plugin benötigt einen Patch der auf den VDR angewendet werden muss. Dieser Patch ist so konzipiert, dass er die | + | Das Plugin benötigt einen Patch der auf den VDR angewendet werden muss. Dieser Patch ist so konzipiert, dass er die API des VDR nicht ändert. Dies bedeutet, dass ein Neukompilieren der Plugins entfällt. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
==Konfiguration== | ==Konfiguration== | ||
− | Das Plugin verfügt im Moment noch nicht über eine OSD-Schnittstelle | + | Das Plugin verfügt im Moment noch nicht über eine OSD-Schnittstelle zum Organisieren der Menüs. Deswegen muss noch die Datei ''[[menuorg.xml]]'' per Hand angepasst werden. Diese basiert im Wesentlichem auf dem Format des ''[[Setup-plugin]]''s. |
− | Es gibt 5 verschiedene Menu Items: | + | Es gibt 5 verschiedene Menu-Items: |
− | * <system> : System Menu Items, wie die Kanalliste oder die Timer | + | * <system> : System-Menu-Items, wie die Kanalliste oder die Timer |
− | * <plugin> : Plug-in Menu Items | + | * <plugin> : Plug-in Menu-Items |
− | * <menu> : Ein | + | * <menu> : Ein Untermenu |
* <command> : Um einen externen Befehlt auszuführen | * <command> : Um einen externen Befehlt auszuführen | ||
− | * <separator> : Erzeugt eine Linie | + | * <separator> : Erzeugt eine Linie |
− | Für die | + | Für die System-Items sind folgende Werte zulässig: |
* Schedule | * Schedule | ||
Zeile 40: | Zeile 38: | ||
* Setup | * Setup | ||
− | |||
===Parameter=== | ===Parameter=== | ||
{| class="wikitable" | {| class="wikitable" | ||
Zeile 47: | Zeile 44: | ||
!Beschreibung | !Beschreibung | ||
|- | |- | ||
− | | -c FILE --config=FILE || alternativer Pfad zur | + | | -c FILE --config=FILE || alternativer Pfad zur Konfigurationsdatei (Menüdefiniton) |
|} | |} | ||
− | |||
===Probleme=== | ===Probleme=== | ||
− | Wer in seinen Menu-Namen spezielle | + | Wer in seinen Menu-Namen spezielle Zeichen wie: &, <, >, ', " verwenden möchte, muss diese durch spezielle Platzhalter ersetzten. |
− | + | Umlaute ersetzt man z.B. durch den hexadezimalen Code des Zeichens. Ein ''ä'' wäre dann ''&#xE4;'' (''&#x'' wird immer vorangestellt, '';'' wird immer nachgestellt). | |
− | + | Hier einige deutsche Umlaute und Sonderzeichen: | |
− | Wer vorher das [[submenu-plugin]] verwendet hat, kann das dem | + | {| class="wikitable" |
+ | |- | ||
+ | ! Zeichen !! Code | ||
+ | |- | ||
+ | |ä || &#xE4; | ||
+ | |- | ||
+ | |ö || &#xF6; | ||
+ | |- | ||
+ | |ü || &#xFC; | ||
+ | |- | ||
+ | |Ä || &#xC4; | ||
+ | |- | ||
+ | |Ö || &#xD6; | ||
+ | |- | ||
+ | |Ü || &#xDC; | ||
+ | |- | ||
+ | |ß || &#xDF; | ||
+ | |- | ||
+ | |< || &#x3C; | ||
+ | |- | ||
+ | |> || &#x3E; | ||
+ | |} | ||
+ | |||
+ | Weitere Infos zu XML-Dateien s. [[wikipedia:XML#Entity_references|hier]]. | ||
+ | |||
+ | Noch ein Tipp, um den Code eines Zeichens herauszubekommen: | ||
+ | |||
+ | Vim aufrufen, mit ''i'' in den Einfügemodus wechseln, das Zeichen eingeben, den Einfügemodus mit ''ESC'' verlassen, den Cursor über dem Zeichen positionieren und ''ga'' eingeben. Der Code wird dann unten in der Statuszeile angezeigt. | ||
+ | |||
+ | ===Tipps=== | ||
+ | Wer vorher das [[submenu-plugin]] verwendet hat, kann das dem Menuorg-Plugin beigelegte "vdr-submenu2menuorg"-Skript zum Konvertieren verwenden. | ||
Beispiel zur Benutzung: | Beispiel zur Benutzung: | ||
Zeile 65: | Zeile 91: | ||
vdr-submenu2menuorg /var/lib/vdr/plugins/MainMenu.conf /var/lib/vdr/plugins/menuorg.xml | vdr-submenu2menuorg /var/lib/vdr/plugins/MainMenu.conf /var/lib/vdr/plugins/menuorg.xml | ||
− | + | Weitere Tipps: | |
− | + | Aktuelle VDRs benötigen den Patch nicht mehr. z.B. wenn die eTobi Packete | |
+ | mit Multipatch eingesetzt werden. | ||
+ | Der oben erwähnte Patch wird nur bei selbst kompilierten VDRs benötigt. | ||
+ | |||
+ | Wenn Probleme auftreten, kann man auf der Konsole den VDR starten und nur | ||
+ | das menuorg Plugin angeben. Das führt zu einer Ausgabe mit klarer Angabe des | ||
+ | Fehlers mit der genauen Linie der menuorg.xml, welche Schwierigkeiten macht. | ||
+ | D.h. zum Testen sieht der direkte Aufruf am Beispiel CTVDR (Debian) so aus "/usr/bin/vdr -Pmenuorg" | ||
==Versions-Historie== | ==Versions-Historie== | ||
Zeile 75: | Zeile 108: | ||
! Beschreibung | ! Beschreibung | ||
! Link | ! Link | ||
+ | |- | ||
+ | | 0.5.1 | ||
+ | | 17.03.2013 | ||
+ | | ''Fixed some stupid bugs from the last release'' | ||
+ | | [http://projects.vdr-developer.org/attachments/download/1312/vdr-menuorg-0.5.1.tar.gz 0.5.1] | ||
+ | |- | ||
+ | | 0.4.4 | ||
+ | | | ||
+ | |Fixed GCC4.3 FTBFS | ||
+ | | [http://www.e-tobi.net/blog/files/vdr-menuorg-0.4.4.tar.gz 0.4.4] | ||
|- | |- | ||
| 0.3 | | 0.3 | ||
| 25.08.2007 | | 25.08.2007 | ||
| Fixed charset conversion for menu titles. They will now explicitly be converted to VDR's locale charset falling back to ISO8859-2 on conversion errors. | | Fixed charset conversion for menu titles. They will now explicitly be converted to VDR's locale charset falling back to ISO8859-2 on conversion errors. | ||
− | | [http://www.vdr-portal.de/board/thread.php?threadid=67943] | + | | [http://www.vdr-portal.de/board/thread.php?threadid=67943 0.3] |
|- | |- | ||
| 0.2 | | 0.2 | ||
| 25.08.2007 | | 25.08.2007 | ||
| Fixed bug with burn plug-in - cPlugin::MainMenuEntry() should not be called before all plug-ins Intialize() and Start() were called. | | Fixed bug with burn plug-in - cPlugin::MainMenuEntry() should not be called before all plug-ins Intialize() and Start() were called. | ||
− | | [http://www.vdr-portal.de/board/thread.php?threadid=67943] | + | | [http://www.vdr-portal.de/board/thread.php?threadid=67943 0.2] |
|- | |- | ||
| 0.1 | | 0.1 | ||
| 24.08.2007 | | 24.08.2007 | ||
| Initial revision. | | Initial revision. | ||
− | | [http://www.vdr-portal.de/board/thread.php?threadid=67943] | + | | [http://www.vdr-portal.de/board/thread.php?threadid=67943 0.1] |
|} | |} | ||
+ | |||
+ | ==Aktuelle Version== | ||
+ | [http://projects.vdr-developer.org/attachments/download/1312/vdr-menuorg-0.5.1.tar.gz 0.5.1] | ||
==Links== | ==Links== | ||
− | # [http:// | + | # [http://projects.vdr-developer.org/projects/plg-menuorg Homepage des Plugins] |
[[Kategorie:Plugins]] | [[Kategorie:Plugins]] | ||
+ | [[Kategorie:Admin-Plugins]] | ||
{{i18n|menuorg-plugin}} | {{i18n|menuorg-plugin}} |
Aktuelle Version vom 30. August 2013, 14:03 Uhr
Inhaltsverzeichnis |
[Bearbeiten] Beschreibung
Autor: Thomas Creutz & Tobias Grimm
Organisieren des OSD-Menüs mit Submenüs
[Bearbeiten] Status
Letztes Update 03/2013
Plugins mit ähnlicher Funktion:
[Bearbeiten] Softwareanforderungen
[Bearbeiten] Installation
[Bearbeiten] Patches
Das Plugin benötigt einen Patch der auf den VDR angewendet werden muss. Dieser Patch ist so konzipiert, dass er die API des VDR nicht ändert. Dies bedeutet, dass ein Neukompilieren der Plugins entfällt.
[Bearbeiten] Konfiguration
Das Plugin verfügt im Moment noch nicht über eine OSD-Schnittstelle zum Organisieren der Menüs. Deswegen muss noch die Datei menuorg.xml per Hand angepasst werden. Diese basiert im Wesentlichem auf dem Format des Setup-plugins.
Es gibt 5 verschiedene Menu-Items:
- <system> : System-Menu-Items, wie die Kanalliste oder die Timer
- <plugin> : Plug-in Menu-Items
- <menu> : Ein Untermenu
- <command> : Um einen externen Befehlt auszuführen
- <separator> : Erzeugt eine Linie
Für die System-Items sind folgende Werte zulässig:
- Schedule
- Channels
- Timers
- Recordings
- Commands
- Setup
[Bearbeiten] Parameter
Parameter | Beschreibung |
---|---|
-c FILE --config=FILE | alternativer Pfad zur Konfigurationsdatei (Menüdefiniton) |
[Bearbeiten] Probleme
Wer in seinen Menu-Namen spezielle Zeichen wie: &, <, >, ', " verwenden möchte, muss diese durch spezielle Platzhalter ersetzten.
Umlaute ersetzt man z.B. durch den hexadezimalen Code des Zeichens. Ein ä wäre dann ä (&#x wird immer vorangestellt, ; wird immer nachgestellt).
Hier einige deutsche Umlaute und Sonderzeichen:
Zeichen | Code |
---|---|
ä | ä |
ö | ö |
ü | ü |
Ä | Ä |
Ö | Ö |
Ü | Ü |
ß | ß |
< | < |
> | > |
Weitere Infos zu XML-Dateien s. hier.
Noch ein Tipp, um den Code eines Zeichens herauszubekommen:
Vim aufrufen, mit i in den Einfügemodus wechseln, das Zeichen eingeben, den Einfügemodus mit ESC verlassen, den Cursor über dem Zeichen positionieren und ga eingeben. Der Code wird dann unten in der Statuszeile angezeigt.
[Bearbeiten] Tipps
Wer vorher das submenu-plugin verwendet hat, kann das dem Menuorg-Plugin beigelegte "vdr-submenu2menuorg"-Skript zum Konvertieren verwenden.
Beispiel zur Benutzung:
vdr-submenu2menuorg /var/lib/vdr/plugins/MainMenu.conf /var/lib/vdr/plugins/menuorg.xml
Weitere Tipps:
Aktuelle VDRs benötigen den Patch nicht mehr. z.B. wenn die eTobi Packete mit Multipatch eingesetzt werden. Der oben erwähnte Patch wird nur bei selbst kompilierten VDRs benötigt. Wenn Probleme auftreten, kann man auf der Konsole den VDR starten und nur das menuorg Plugin angeben. Das führt zu einer Ausgabe mit klarer Angabe des Fehlers mit der genauen Linie der menuorg.xml, welche Schwierigkeiten macht. D.h. zum Testen sieht der direkte Aufruf am Beispiel CTVDR (Debian) so aus "/usr/bin/vdr -Pmenuorg"
[Bearbeiten] Versions-Historie
Version | Datum | Beschreibung | Link |
---|---|---|---|
0.5.1 | 17.03.2013 | Fixed some stupid bugs from the last release | 0.5.1 |
0.4.4 | Fixed GCC4.3 FTBFS | 0.4.4 | |
0.3 | 25.08.2007 | Fixed charset conversion for menu titles. They will now explicitly be converted to VDR's locale charset falling back to ISO8859-2 on conversion errors. | 0.3 |
0.2 | 25.08.2007 | Fixed bug with burn plug-in - cPlugin::MainMenuEntry() should not be called before all plug-ins Intialize() and Start() were called. | 0.2 |
0.1 | 24.08.2007 | Initial revision. | 0.1 |