#!/bin/sh # # setting up the setup menu. . /etc/init.d/rc.functions setupdir="${1-/etc/setup}" setupmenufile="${2-/etc/vdr/plugins/setup/setup.xml}" tmpdir="${3-/tmp/setup.$$}" # xml-daten als Verzeichnisstruktur abbilden rm -rf $tmpdir mkdir $tmpdir cd $tmpdir for file in $setupdir/*.xml; do grep . "$file" | while read line; do name=${file##*/} TEXTDOMAIN="${name%.*}-$name" if [ -z "${line#*}" ]; then name=`echo "$line" | sed 's/.* name="\($(tr '"'"'\)\?\([^'"'"'"]*\).*/\2/'` mkdir -p "$name" cd "$name" sed 's/ name="[^"]*"//' -i args.xml 2>/dev/null echo -n " name=\"$(tr "$name")\"" >> args.xml if [ -z "${line#*command=\"*\">}" ]; then command="${line#*command=\"}" command="${command%%\"*}" echo -n " command=\"$command\"" >> args.xml fi elif [ -z "${line#*}" ]; then cd .. else eval "echo \"$(echo "$line" | sed 's/"/\\"/g')\"" >> menu.xml fi done done touch end.xml # VDR-Plugins hinzufügen cd /tmp plugindir=$tmpdir/TV/VDR/Plugin-Arguments mkdir -p $plugindir [ -e $plugindir/args.xml ] || echo -n " name=\"Plugin-Arguments\"" >> $plugindir/args.xml vdr -L /usr/lib/vdr/ -h 2>/dev/null | grep "Plugins:" -A1000 | grep "^$" -A1000 > /tmp/vdrhelp.$$ vdr -L /usr/lib/vdr/ -V 2>/dev/null | grep "vdr " -A1000 | sort | while read line; do name="${line%% *}" help1="${line#* - }" if [ "$name" = "vdr" ]; then var="VDR_ARGS" else var="VDR_PLUGIN_ARGS_${name%%-*}" fi rm -rf /usr/share/doc/$name/setting mkdir -p /usr/share/doc/$name grep "^$name" -A100 /tmp/vdrhelp.$$ | while read help; do if [ -n "$help" -a -z "${help##[a-z]*}" -a -n "${help##$name*}" ]; then break fi IFS="" echo "$help" >> /usr/share/doc/$name/setting done echo "" >> "$plugindir/menu.xml" done rm /tmp/vdrhelp.$$ # Verzeichnisstruktur in xml Datei zusammenfassen rm -f $setupmenufile mkdir -p ${setupmenufile%/*} echo '' >> $setupmenufile echo '' >> $setupmenufile echo '' >> $setupmenufile echo '' >> $setupmenufile echo '' >> $setupmenufile { find $tmpdir/* 2>/dev/null | sort; echo "$tmpdir/end.xml"; } | while read file; do path="${file%/*.xml}/" while [ -n "${path%%$lastpath*}" ]; do echo '' >> $setupmenufile lastpath="${lastpath%/*/}/" done if [ -d "$file" ]; then echo "/dev/null`>" >> $setupmenufile lastpath="$path" elif [ -z "${file##*/menu.xml}" ]; then cat "$file" >> $setupmenufile fi done echo '' >> $setupmenufile echo '' >> $setupmenufile rm -r $tmpdir