sheep
Aktives Mitglied
Thread Starter
- Dabei seit
- 21.03.2005
- Beiträge
- 1.255
- Reaktionspunkte
- 25
Ich habe ein Unix-Script geschrieben, für welches ich gerne ein Widget als Frontend hätte. Das Script sieht so aus:
Das Script dient dazu, Gesetzesartikel (ich studiere Schweizer Recht ) mit einem Befehl aufzurufen. Bspw. kann der Art. 111 des Strafgesetzbuches mit dem Befehl "gesetz StGB 111" angezeigt werden. Jetzt wäre es natürlich schön, wenn ich ein Widget hätte, welches das Script so aufruft, dass ich nur noch einzutippen brauche "StGB 111" und das Widget daraus den Befehl "gesetz StGB 111" macht und ausführt.
Weiss jemand, wie man so etwas realisiert? Ich habe schon ein klein wenig Ahnung von Widgets (allerdings wirklich nicht viel), aber beim Ausführen von Unix-Befehlen hapert es irgendwie . Habe es nicht hinbekommen...
So habe ich es versucht (im Javascript-File):
function gesetzAnzeigen(artikel)
{
widget.system("gesetz " + artikel, null);
}
wobei das so im HTML-File aufgerufen wird:
<div id="search-field-gesetz"><input
id="searchOR" size="24" placeholder="Gesetzesartikel"
results="10" onsearch="srchOR(this.value);" type="search"></div>
Sieht jemand den Fehler bzw. kann mir sagen, wie man so etwas richtig macht? Bin nicht sicher, ob ich überhaupt auf der richtigen Fährte bin, aber so schwierig kann das ja wohl nicht sein .
Code:
sheep@powerbook:~$ cat /usr/bin/gesetz
#!/bin/bash
#Gesetzesartikel in der Form 'OR 41' in Safari aufrufen
# Fehlerhafte Anzahl Argumente (erwartet: 2) abfangen
if [ "$#" != "2" ]; then
echo "Erlass und Artikel werden erwaret. Bsp.: gesetz OR 41"
exit 1
fi
# SR-Nummer des angegebenen Erlasses ermitteln
declare erlass
case "$1" in
OR)
erlass='220'
;;
ZGB)
erlass='210'
;;
StGB)
erlass='311_0'
;;
BV)
erlass='101'
;;
SVG)
erlass='741_01'
;;
OG)
erlass='173_110'
;;
PrHG)
erlass='221_112_944'
;;
# HIER WEITERE ERLASSE EINFüGN!
# Achtung: Punkt (.) in SR-Nummer wird zu Unterstrich (_)
#Erlass)
# erlass='SR_Nummer'
# ;;
# Eingabe unbekannter Erlasse abfangen
*)
echo "Unbekannter Erlass"
exit 1
;;
esac
# URL generieren
declare url='http://www.admin.ch/ch/d/sr/'$erlass'/a'$2'.html'
# Resultat zur Kontrolle zurückgeben
echo 'Norm : Art. '$2' '$1
echo 'Erlass : SR ' $erlass
echo 'URL : '$url
# URL öffnen
open -a Safari $url
Weiss jemand, wie man so etwas realisiert? Ich habe schon ein klein wenig Ahnung von Widgets (allerdings wirklich nicht viel), aber beim Ausführen von Unix-Befehlen hapert es irgendwie . Habe es nicht hinbekommen...
So habe ich es versucht (im Javascript-File):
function gesetzAnzeigen(artikel)
{
widget.system("gesetz " + artikel, null);
}
wobei das so im HTML-File aufgerufen wird:
<div id="search-field-gesetz"><input
id="searchOR" size="24" placeholder="Gesetzesartikel"
results="10" onsearch="srchOR(this.value);" type="search"></div>
Sieht jemand den Fehler bzw. kann mir sagen, wie man so etwas richtig macht? Bin nicht sicher, ob ich überhaupt auf der richtigen Fährte bin, aber so schwierig kann das ja wohl nicht sein .