Specialvärden och inbyggda globala variabler Specialvärden och inbyggda globala variabler Specialvärden är funktioner som behandlas av &kommander;. Du bör vara medveten om att när den gamla tolken används, utförs alla &kommander; specialvärden först och därefter körs skriptet. I det flesta fall är det inte något problem, men i några enstaka fall (särskilt i snurror och villkor) kan det vara det. Listan nedan kan vara något föråldrad. Du rekommenderas att använda funktionsbläddraren för att få hjälp om tillgängliga funktioner. Funktionsbläddraren kan nås inne i editorn Kommander Text, genom att klicka på knappen Funktion.... @dcop(pgmId, objekt, funktion, argument) Gör ett &DCOP;-anrop, @dcop(kmail, KMailIface, checkMail(), ) @dcopid &DCOP;-id för processen (kmdr-executor-@pid) @dialog(dialogruta[,parametrar]) Startar angiven Kommander dialogruta. Dialogrutan letas efter i katalogen med dialogrutor och i arbetskatalogen, i den ordningen. Det här lägger till anropet till Executor i början och ändrar standardkatalog till den som Kommander programmet finns i. Parametrar kan skickas som vanligt i Unix, eller så kan namngivna parametrar som variabel=värde skickas. Därefter hittar du skickade parametrar i den globala uppsättningen. @global(variabel) skulle returnera värde. @env(miljövariabel) Ersätts med den angivna miljövariabeln. @env(PWD) ersätts med $PWD. Kom ihåg att $ ingår i skalet, och ska inte användas. @exec(kommando) Returnerar utmatningen från körningen av det angivna kommandot. @exec(ls -l). @execBegin ... @execEnd Samma som @exec, men stöder inledning med "#!" och skript med flera rader. Det fungerar med diverse skriptspråk antingen genom att deklarera dem eller genom att använda "#!". @execBegin(php) @execBegin(#!/usr/bin/php) Det första exemplet använder namnet på det körbara programmet PHP. &kommander; söker i PATH efter php och om det inte hittas kontrollerar om det är registrerat i &kommander; på en plats som inte finns i sökvägen. Om inte får användaren reda på att det inte kan hittas. Det andra exemplet använder den klassiska inledningen !#, som både kan ha fördelar men också problem. Om du till exempel har en betaversion av PHP5 i /usr/local/bin hittas den inte eftersom en annan hittas i /usr/bin, är det användbart. Om du dock distribuerar dialogrutan till någon som bara har PHP i /usr/local/bin hittas den inte med inledningen som används. Alltså varnas för att använda en inledning, och det rekommenderas att använda det körbara namnet om du delar filer. @global(variabel) Ersätts med värdet på den angivna globala variabeln. @null Returnerar null. Nu när Kommander kontrollerar om widgetText är tom vid körning, förhindrar detta felaktiga fel med fallet då en grafisk komponent har ett tillstånd som inte är angivet. @parentPid Process-id för överliggande process. @pid Process-id för processen. @readSetting(nyckel, förvalt värde) Läser ett värde från kommanderrc. Se också @writeSetting. @selectedWidgetText Det markerade innehållet i en grafisk komponent som kan visa mer än ett värde, som listkomponenter. @setGlobal(variabel, värde) Tilldelar den globala variabeln det angivna värdet. @widgetText Innehållet i en grafisk komponent. @writeSetting(nyckel, värde) Skriv värde till kommanderrc. Alla &kommander;-dialogrutor delar samma kommanderrc-fil, och var och en har sin egen sektion i den. Fältfunktionsgruppen @Array.values(fält) Returnerar en lista åtskild med nyrader med alla värden i fältet. Kan användas för att gå igenom ett fält. @Array.keys(fält) Returnerar en lista med alla nycklar i fältet åtskilda med nyrader. @Array.setValue(fält, nyckel, värde) Anger en nyckel och värde för ett element i ett fält. Om fältet inte finns, skapas det. @Array.clear(fält) Ta bort alla element från fältet. @Array.count(fält) Returnera antal element i fältet. @Array.value(fält,nyckel) Returnera värdet som hör ihop med den givna nyckeln. @Array.remove(fält,nyckel) Ta bort elementet med den givna nyckeln från fältet. @Array.fromString(fält,sträng) Lägger till alla element i strängen till fältet. Strängen ska har formatet nyckel\tvärde\n. @Array.toString(fält,sträng) Returnerar alla element i fältet på formatet nyckel\tvärde\n. Filfunktionsgruppen @File.read(fil) Returnera innehållet i den givna filen. @File.write(fil,sträng) Skriv given sträng till en fil. @File.append(fil,sträng) Skriv given sträng i slutet på en fil. Strängfunktionsgruppen @String.length(sträng) Returnera antalet tecken i strängen. @String.contains(sträng,delsträng) Kontrollera om strängen innehåller en given delsträng. @String.find(sträng) Returnera en delsträngs position i strängen, eller -1 om den inte hittas. Det här kommer att ha ett valfritt heltal med startposition, för användning för att söka igen i version alfa 6. @String.left(sträng, heltal) Returnerar de första n tecknen i strängen. @String.right(sträng, heltal) Returnerar de sista n tecknen i strängen. @String.mid(sträng, heltal start, heltal slut) Returnerar en delsträng av strängen, med början på angiven position. @String.remove(sträng, delsträng) Ta bort alla förekomster av en given delsträng. @String.replace(sträng, delsträng sök, delsträng ersätt) Ersätt alla förekomster av en given delsträng med en given ersättning. @String.upper(sträng) Konvertera strängen till stora bokstäver. @String.lower(sträng) Konvertera strängen till små bokstäver. @String.compare(sträng, sträng) Jämför två strängar. Returnera 0 om de är lika, -1 om den första är tidigare, 1 om den första är senare. @String.isEmpty(sträng) Kontrollera om strängen är tom. @String.isNumber(sträng) Kontrollera om strängen är ett giltigt tal. Inbyggda globala variabler Inbyggda globala variabler kan kommas åt precis som vanliga globala variabler med @global. @global(_KDDIR) Katalogen den nuvarande dialogrutan är i. @global(_NAME) Dialogrutans namn