Anweisungen und eingebaute globale Variable
GeorgSchustergschuster@utanet.atDeutsche Übersetzung
Anweisungen und eingebaute globale Variable
Anweisungen sind Funktionen, die von &kommander; ausgeführt werden. Bis &kommander; über einem vollständigen Parser verfügt, werden alle Anweisungen vor dem Skript ausgeführt. Meistens ist das kein Problem.
@dcop(AnwendungsId, Objekt, Funktion, Argumente)
Führe einen &DCOP; Aufruf durch. @dcop(kmail
, KMailIface
, checkMail()
,
)
@dcopid
Die &DCOP;-ID des Prozesses. (kmdr-executor-@pid)
@dialog(Dialog[,Parameter])
Zeigt den bestimmten Kommander-Dialog an. Der Dialog wird im Dialogordner und im aktuellen Ordner gesucht, in dieser Reihenfolge. Das bestimmt den Aufruf von kommander-executor vor und setzt den Standardordner auf den Ordner, in dem sich die Kommander-Anwendung befindet. Parameter können im in Unix üblichen Weg oder namentlich wie z. B. Variable=Wert
übergeben werden. Übergebene Parameter können im Globalbereich gefunden werden. @global(Variable) würde den Wert
zurückgeben.
@env(Umgebungsvariable)
Füllt die angegebene Umgebungsvariable aus. @env(PWD) setzt $PWD ein. Bitte beachten Sie, dass $
ein Teil der Shell ist und nicht verwendet werden sollte.
@exec(Befehl)
liefert die Ausgabe des damit ausgeführten Befehls zurück. @exec(ls -l).
@execBegin ... @execEnd
gleich wie @exec, unterstützt aber mehrzeilige um Ummantelungs-Skripte. Das dient für einige Skriptsprachen entweder über eine Deklaration oder mittels einer Ummantelung.
@execBegin(php)
@execBegin#!/usr/bin/php
Das Erste benutzt den Namen des PHP-Programms. &kommander; durchsucht den Pfad PATH nach php und sieht, wenn es nicht gefunden wird, nach. ob es mit &kommander; außerhalb des Pfades registriert ist. Ist dies nicht der Fall, meldet es dem Benutzer, dass es nicht gefunden werden konnte. Das zweite Beispiel benutzt die klassische Ummantelung
, die Vorteile aber auch Probleme bringen kann. Wenn zum Beispiel eine Beta-Version von PHP5 in /usr/local/bin vorhanden ist, die nicht gefunden wird, weil es in /usr/bin eine gibt , wäre dies nützlich. Wird der Dialog aber von jemandem verwendet, der PHP nur in /usr/local/bin hat, würde es mit der Ummantelung nicht gefunden. Deshalb ist die Verwendung von Ummantelungen problematisch und die Verwendung des Programmes wird empfohlen, wenn die Dateien weitergegeben werden.
@global(Variable)
wird mit dem Inhalt der angegebenen globalen Variable ersetzt.
@null
Liefert Null zurück. Da &kommander; nun bei der Ausführung auf leere widgetText prüft, verhindert dies im Falle eines undefinierten Status des Bedienelementes Fehler.
@parentPid
Die &PID; des Vaterprozesses.
@pid
Die &PID; des Prozesses.
@readSetting(Schlüssel, Standardwert)
liest einen Wert aus der kommanderrc
@selectedWidgetText
der ausgewählte Inhalt in einem Bedienelement, das mehrere Werte anzeigen kann, wie etwa Listen
@setGlobal(Variable, Wert)
Setzt die globale Variable auf den angegebenen Wert.
@widgetText
der Inhalt eines Bedienelementes
@writeSetting(Schlüssel, Wert)
schreibe den Wert in die kommanderrc
Feldfunktionengruppe (Arrays)
@Array.values(Feld)
Gibt eine mit Zeilenschaltungen getrennte Liste aller Werte eines Feldes zurück. Kann zum Durchgehen eines Feldes verwendet werden.
@Array.keys(Feld)
Gibt eine mit Zeilenschaltungen getrennte Liste aller Schlüssel im Feld zurück.
@Array.setValue(Feld, Schlüssel, Wert)
Setzt einen Schlüssel und Wert für ein Element eines Feldes. Wenn das Feld nicht existiert, wird es erstellt.
@Array.clear(Feld)
Entfernt alle Elemente aus einem Feld.
@Array.count(Feld)
Liefert die Anzahl der Elemente in einem Feld.
@Array.value(Feld,Schlüssel)
Gibt den mit dem angegebenen Schlüssel verbundenen Wert zurück.
@Array.remove(Feld,Schlüssel)
Entfernt das Element mit dem angegeben Schlüssel aus dem Feld.
@Array.fromString(Feld,Zeichenkette)
Fügt alle Elemente der Zeichenkette dem Feld hinzu. Die Zeichenkette sollte ein Schlüssel\tWert\n Format haben."
@Array.toString(Feld,Zeichenkette)
"Liefert alle Elemente im Feld im Schlüssel\tWert\n Format."
Dateifunktionengruppe
@File.read(Datei)
Liefert den Inhalt der angegebenen Datei zurück.
@File.write(DateiZeichenkette)
Schreibt die angegebene Zeichenkette in eine Datei.
@File.append(DateiZeichenkette)
Hängt die angegebene Zeichenkette an das Ende der Datei an.
Zeichenketten-Funktionengruppe
@String.length(Zeichenkette)
Gibt die Anzahl der Zeichen einer Zeichenkette zurück.
@String.contains(Zeichenkette,Unterzeichenkette)
Prüft, ob die Zeichenkette die angegebene Teilzeichenkette enthält.
@String.find(Zeichenkette)
Liefert die Position einer Teilzeichenkette in einer Zeichenkette, oder -1, wenn sie darin nicht gefunden wurde."
Dies wird in Alpha6 eine optionale ganzzahlige Startposition zum Finden weiterer Treffer haben.
@String.left(Zeichenkette, Ganzzahl)
Liefert die ersten n Zeichen der Zeichenkette zurück.
@String.right(Zeichenkette, Ganzzahl)
Liefert die letzten n Zeichen der Zeichenkette zurück.
@String.mid(Zeichenkette, Ganzzahl Start, Ganzzahl Ende)
Liefert eine Teilzeichenkette aus der Zeichenkette, beginnend mit der angegebene Position.
@String.remove(Zeichenkette, Teilzeichenkette)
Entfernt alle Vorkommen einer angegebenen Teilzeichenkette.
@String.replace(Zeichenkette, Teilzeichenkette zu finden, Teilzeichenkette zu ersetzen)
Ersetzt alle Vorkommen einer angegebenen Teilzeichenkette mit dem angegebenen Ersatz.
@String.upper(Zeichenkette)
Wandelt die Zeichenkette in Großbuchstaben um.
@String.lower(Zeichenkette)
Wandelt die Zeichenkette in Kleinbuchstaben um.
@String.compare(Zeichenkette, Zeichenkette)
Vergleicht zwei Zeichenketten. Gibt 0 zurück, wenn sie gleich sind, -1, wenn die Erste kleiner ist und 1, wenn die Erste größer ist
@String.isEmpty(Zeichenkette)
Prüft, ob die Zeichenkette leer ist.
@String.isNumber(Zeichenkette)
Prüft, ob die Zeichenkette eine gültige Zahl ist.
Eingebaute globale Konstanten
Eingebaute globale Konstanten werden gleich wie reguläre globale Variable mit @global angesprochen.
@global(_KDDIR)
Der Ordner, in dem sich der aktuelle Dialog befindet.
@global(_NAME)
Der Name des Dialoges