Keyboard Shorcut für Shell Befehl

  • Tag zusammen,

    betreibe XBMC-PVR seit längerem unter Ubuntu 11.04, was auch recht ordentlich läuft. Da die Integration von PVR (VDR) und XBMC ja noch nicht 100%ig stabil läuft (aber dennoch schone sehr gut ;) ) kommt es doch das ein oder andere Mal dazu, dass sich XBMC komplett aufhängt und nix mehr geht. Da hilft dann nur noch, per STRG+ALT+F1 in eine Text Konsole zu wechseln und per

    killall -9 xbmc.bin

    den XBMC abzuschießen.

    Gibt es eine Möglichkeit, ein Keyboard Shortcut für den Befehl zu erstellen? Per Gnome Tastaturshortcut gehts nicht, da XBMC alle Tastatureingaben vorher abfängt und mittles der Keyboard.xml hab ich keinerlei Möglichkeit gefunden, ein auf Tastendruck externes Kommando abzusetzen, hier gehen ja nur XBMC - interne Aktionen, richtig?

    Hat jmd. nen Tip?

    Vielen Dank schon mal und viele Grüße
    Snoopy

  • Du könntest ein Script erstellen, welches über eine Taste aufgerufen wird.
    Das Problem dabei ist nur, dass dies vom XBMC aufgerufen wird, welches ja beendet wird.
    Hasst du schon mal probiert, dass XBMC zu minimieren anstatt es direkt zu killen?
    Das geht mit der \ Taste. (Rechte Alt-Taste und ß drücken)

  • Du könntest ein Script erstellen, welches über eine Taste aufgerufen wird.
    Das Problem dabei ist nur, dass dies vom XBMC aufgerufen wird, welches ja beendet wird.
    Hasst du schon mal probiert, dass XBMC zu minimieren anstatt es direkt zu killen?
    Das geht mit der \ Taste. (Rechte Alt-Taste und ß drücken)


    Hi don,

    genau DAS habe ich ja vor, mein Problem ist nicht das einzeilige Script, sondern wie ich das Script per Shortcut aus XBMC heraus aufrufen kann; ich hatte das Ganze mal mit nem Testscript probiert, welches in /tmp ne leere Datei anlegt und das mit einem Keyboard Shortcut in GNOME verbunden. Wenn XBMC nicht lief, nur der Desktop zu sehen war, hat das auch funktioniert, die Datei wurde angelegt. Lief XBMC jedoch (ohne Absturz, einfach nur direkt nach dem XBMC Start) funktionierte der GNOME Shortcut nicht mehr, da XBMC offensichtlich vorher alle Tastatureingaben abfängt und die nicht verwendeten NICHT an GNOME weiterreicht.
    Wie also kann ich in XBMC ein Shortcut anlegen, welches ein Script aufruft? Unabhängig davon, ob das überhaupt nocht funzt, wenn XBMC offensichtlich abgestürzt ist, auf den Versuch würde ich es gerne ankommen lassen ;) . Dein Tip mit dem Minimieren hat nicht funktioniert. Wenn XBMC in diesem Zustand ist, kann ich noch nicht mal mehr durch die Menüs navigieren, nur das Wechseln auf eine Textkonsole geht noch.

    Grüße
    Snoopy


  • Am besten in der Keymap einen Befehl wie

    Code
    XBMC.SystemExecute(Pfad zum Script)


    auf eine Taste legen und bei Bedarf drücken...

    mad-max

    XBMC.SystemExecute gibts nicht... oder ich hab was falsch gemacht:

    hab in die systemweite keymaps/keyboard.xml so die Taste "CTRL-K" eingefügt:


    (Die /tmp/t.sh ist einfach nur ein kleines Script, welches eine Datei in /tmp touche'd...und ja, das funzt in der Shell, hat sogar 777 ;) )

    Im XBMC-Log taucht dann dieser eintrag auf:

    Code
    ERROR: Keymapping error: no such action 'xbmc.systemexecute('/tmp/t.sh')' defined

    hab das Ganze auch ohne die Hochkommata in der Parameterübergabe versucht, was zum selben Ergebnis führt
    oder bin ich gerade einfach zu blöd? ?(

  • Wenn das nicht funktioniert, dann kannst du auch erst einen Befehl zum Script hin ausführen, welches dann dein shell-script startet.
    Für mich war das übersichtlicher.
    Hier mal ein Beispiel für ein Script, welches die Wii-Remote startet:
    [HowTo] Wii-Remote


    Sooo... das scheint zumindest mal zu funzen... hab jetzt den o.g. Eintrag in der keyboard.xml so geändert:

    Code
    <k mod="ctrl">RunScript(/tmp/t.py)</k>

    in der /tmp/t.py steht das:

    Code
    import os
    os.system("/tmp/t.sh")

    Rufe also per "RunScript" ein kleines PythonScript auf, welches wiederrum das ShellScript aufruft. Das klappt soweit...Dann scheint meine nächste Scriptsprache nach Bash und PHP auf der Liste wohl Python zu werden ;)

    Jetzt den nächsten Absturz abgewartet und mal schauen, ob XBMC dann überhaupt noch soweit "lebt", dass es das "Kill" script aufruft...Dank euch erst mal :thumbup:

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!