Specials en ingebouwde globale variabelen
&Sander.Koning;
Specials en ingebouwde globale variabelen
Specials zijn functies die door &kommander; verwerkt worden. Let erop dat, totdat &kommander; een volledige parser heeft, alle &kommander;-specials eerst uitgevoerd worden en daarna het script. In de meeste gevallen is dat geen probleem, maar soms wel.
@dcop(appId, object, function, arguments)
Doe een &DCOP;-aanroep. @dcop(kmail
, KMailIface
, checkMail()
,
)
@dcopid
Het &DCOP;-id van het proces. (kmdr-executor-@pid)
@dialog(dialog[,parameters])
Start het opgegeven Kommander-dialoogvenster op. Het dialoogvenster wordt gezocht in de dialoogmap en in de huidige map - in die volgorde. Dit gaat vooraf aan de aanroep naar de uitvoerder en stelt de standaardmap in op degene waar de Kommander-toepassing zich in bevindt. Parameters kunnen op de gebruikelijke Unix-manier worden meegegeven of u kunt parameters met naam meegeven als variable=value
. U kunt de meegegeven parameters dan terugvinden in de global pool. @global(variable) retourneert value
.
@env(environmentVariable)
Expandeert naar de opgegeven omgevingsvariabele. @env(PWD) expandeert naar $PWD. Onthoud dat $
deel van de shell is en niet gebruikt moet worden.
@exec(command)
retourneert de uitvoer van het uitvoeren van de opgegeven opdracht. @exec(ls -l).
@execBegin ... @execEnd
hetzelfde als @exec, maar met ondersteuning voor #! en meerregelige scripts. Dit ondersteunt diverse scripttalen door ze te declareren of door het gebruik van #!.
@execBegin(php)
@execBegin#!/usr/bin/php
De eerste gebruikt de naam van het uitvoerbare bestand van PHP. &kommander; zoekt in het PATH naar php en als dit niet gevonden is, wordt gezocht of het in &kommander; is ingesteld buiten uw pad. Zo niet, dan wordt de gebruiker verteld dat het niet gevonden kan worden. Het weede voorbeeld gebruikt de klassieke #!
die voor- en nadelen kan hebben. Als u een betaversie van PHP5 hebt, bijvoorbeeld, in /usr/local/bin die niet gevonden zou worden omdat de versie in /usr/bin gevonden zou worden is dit nuttig. Maar, als u het dialoogvenster verspreidt naar iemand die PHP alleen in /usr/local/bin heeft wordt deze niet gevonden als u de #! gebruikt. #! gebruiken is dus niet zonder risico en het wordt aangeraden het uitvoerbare bestand te gebruiken als u bestanden deelt.
@global(variable)
expandeert naar de waarde van de opgegeven globale variabele.
@null
Retourneert null. Nu Kommander op een lege widgetText controleert bij het uitvoeren, voorkomt dit foutieve fouten in het geval van een niet-ingestelde staat op een widget.
@parentPid
Het &PID; van het ouderproces.
@pid
Het &PID; van het proces.
@readSetting(key, defaultValue)
leest een waarde uit kommanderrc
@selectedWidgetText
de geselecteerde inhoud in een widget die meer dan één waarde kunnen weergeven, zoals lijstwidgets
@setGlobal(variable, value)
Stelt de globale variabele in op de opgegeven waarde.
@widgetText
de inhoud van een widget
@writeSetting(key, value)
schrijf waarde naar kommanderrc
De functiegroep "Array"
@Array.values(array)
Retourneert een EOL-gescheiden lijst van alle waarden in de array. Kan gebruikt worden om door een array te lopen.
@Array.keys(array)
Retourneert een EOL-gescheiden lijst van alle sleutels in de array
@Array.setValue(array, key, value)
Stel sleutel en waarde in voor een element van een array. Als geen array bestaat wordt deze aangemaakt.
@Array.clear(array)
Verwijder alle elementen uit de array.
@Array.count(array)
Retourneer aantal elementen in de array.
@Array.value(array,key)
Retourneer de waarde die bij de opgegeven sleutel hoort.
@Array.remove(array,key)
Verwijder element met de opgegeven sleutel uit de array.
@Array.fromString(array,string)
Voeg alle elementen in de tekenreeks toe aan de array. De tekenreeks moet van het formaat key\tvalue\n zijn.
@Array.toString(array,string)
Retourneer alle elementen in de array in key\tvalue\n formaat.
De functiegroep "File"
@File.read(file)
Retourneer inhoud van het opgegeven bestand.
@File.write(filestring)
Schrijf gegeven tekenreeks naar een bestand.
@File.append(filestring)
Voeg gegeven tekenreeks toe aan het einde van een bestand.
De functiegroep "String"
@String.length(string)
Retourneert het aantal tekens in de tekenreeks.
@String.contains(string,substring)
Controleer of de tekenreeks gegeven subreeks bevat.
@String.find(string)
Retourneer positie van een subreeks in de tekenreeks, of -1 als deze niet gevonden werd.
Een optionele startpositie voor het vinden van volgende voorkomens is beschikbaar vanaf Alpha 6.
@String.left(string, int)
Retourneer de eerste n tekens van de tekenreeks.
@String.right(string, int)
Retourneer de laatste n tekens van de tekenreeks.
@String.mid(string, int start, int end)
Retourneer subreeks van de tekenreeks vanaf opgegeven positie.
@String.remove(string, substring)
Verwijder alle voorkomens van een gegeven subreeks.
@String.replace(string, substring find, substring replace)
Vervang alle voorkomens van een gegeven subreeks door een gegeven vervanging.
@String.upper(string)
Zet de tekenreeks om naar hoofdletters.
@String.lower(string)
Zet de tekenreeks om naar kleine letters.
@String.compare(string, string)
Vergelijk twee tekenreeksen. Retourneer 0 als ze gelijk zijn, -1 als de eerste lager is, 1 als de eerste hoger is.
@String.isEmpty(string)
Controleer of de tekenreeks leeg is.
@String.isNumber(string)
Controleer of de tekenreeks een geldig getal is.
Ingebouwde globale variabelen
Ingebouwde globale variabelen worden net als gewone globale variabelen benaderd met @global.
@global(_KDDIR)
De map waar het huidige dialoogvenster zich in bevindt.
@global(_NAME)
De naam van het dialoogvenster