LibreLogo Toolbar

From LibreOffice Help
Jump to: navigation, search

LibreLogo är en enkel Logo-liknande programmeringsmiljö med sköldpaddegrafik som skapats för att utbilda informationskunskap (programmering och ordbehandling), DTP och grafikdesign. Se http://www.numbertext.org/logo/librelogo.pdf.

Contents

Verktygsraden LibreLogo (Visa - Verktygsrader - Logo) innehåller förflyttning av sköldpadda, start/stop av programkörning, hem, rensa skärmen, syntaxmarkering/-översättning och en inmatningsrad (kommandorad).

Ikoner för sköldpaddsförflyttningar

De motsvarar Logo-kommandona "FORWARD 10", "BACK 10", "LEFT 15", "RIGHT 15". Genom att klicka på en av ikonerna så kommer markören att fokusera på sköldpaddan och sidan kommer rullas till dess position.

Starta Logo-program

Klicka på ikonen "Starta Logoprogram" för att köra texten i dokumentet (eller i markeringen) som ett LibreLogoprogram. I ett tomt dokument infogas ett exempelprogram och körs.

Klicka på “Stopp”-ikonen för att stoppa programmet.

Home

Klicka på "Hem"-ikonen för att återställa sköldpaddans position och inställningar.

Rensa skärmen.

Klicka på ikonen “Rensa skärm” för att ta bort teckningsobjekt från dokumentet.

Program redigerare/Syntax märkning/Översättning

"Trollstavs"-ikonen skapar en tvåsidig layout för programredigering, utökar kortkommandon till dess fullständiga namn och ser till att kommandon har stora bokstäver. Ändra dokumentspråk (Verktyg - Alternativ - Språkinställningar - Språk - Västerländsk) och klicka på denna ikon för att översätta ett logoprogram till valt språk.

Kommandorad

Tyck Enter i kommandoraden för att köra dess innehåll. För att stoppa programmet använder du ikonen "Stop".

Håll nere Enter för att upprepa kommandot, till exempel på följande kommandosekvens:

FORWARD 200 LEFT 89

För att återställa kommandoraden trippelklicka på den eller tryck Ctrl-A för att markera föregående kommandon och skriv sedan in de nya kommandona.

Användargränssnitt för grundläggande sköldpaddeinställningar

LibreLogos sköldpaddeform är ett vanligt teckningsobjekt av fast storlek. Du kan placera och rotera den som vanligt, med hjälp av musen och roteraikonerna på verktygsraden Bild. Använd inställningarna för att ändra linjebredd, linjefärg och färgyta för att ange LibreLogos attribut PENSIZE, PENCOLOR och FILLCOLOR.

Programredigering

LibreLogo-teckningar och program använder samma dokument. Ritytan för LibreLogo är på första sidan i Writer-dokumentet. Du kan infoga en sidbrytning före LibreLogo-programmet och ange sidans zoomningsgrad med hjälp av "trollstavs"-ikonen i verktygsraden Logo. Förslagsvis kan du även förstora teckenstorleken så att texten blir mer lättläst i den tvåsidiga layouten. Med detta tillvägagångssätt får du ritytan på sida ett och programredigeraren på sidan två.

LibreLogo är ett Logo-liknande programmeringsspråk som lätt kan översättas. Det har redan översatts till flera språk av LibreOffice lokala gemenskaper. Det är bakåtkompatibelt med äldre Logo-system om det handlar om enkla Logoprogram som t.ex. används inom utbildningar.

TO triangle :size
REPEAT 3 [
FORWARD :size
LEFT 120
]
END

triangle 10 triangle 100 triangle 200

Skillnader från Logo programmeringsspråk

  • Listinnehåll är kommaseparerat: POSITION [0, 0]
  • Programblock och listor är annorlunda
    • Programblock behöver blanksteg eller ny rad vid parenteser: REPEAT 10 [ FORWARD 10 LEFT 36 ]
  • Listor kräver angränsande parenteser (utan blanksteg): POSITION [0, 0], och inte POSITION [ 0, 0 ]


  • 1-rads funktionsdeklarationer stöds ej (TO och END behöver radbrytningar).

  • Kolon är valfritt före variabelnamn.

    TO triangle size
    REPEAT 3 [ FORWARD size LEFT 120 ]
    END

  • Strängnotation stöder också ortografi och python-syntax.

    PRINT "ord ; original Logo-syntax
    PRINT “Godtyklig text.” ; ortografi, Writer
    PRINT 'Godtycklig text.' ; Python-syntax

  • Python list- och stränghantering

    PRINT “text”[2] ; skriver ut “x”
    PRINT “text”[1:3] ; skriver ut “ex”

  • Python-liknande FOR-loop
  • Python-liknande variabeldeklaration:

    x = 15
    PRINT x

  • Det finns inga extra sökfunktioner:

    PRINT FILLCOLOR
    p = POSITION
    PRINT p
    REPEAT 10 [ POSITION ANY POSITION p ]

  • Alternativ användning av parenteser i funktionsanrop

    TO star size color
    FILLCOLOR color
    REPEAT 5 [ LEFT 72 FORWARD size RIGHT 144 FORWARD size ]
    FILL
    END

    star 100 “red”
    star (100, “green”)
    star(100, “blue”)

LibreLogo-kommandon

Grundläggande syntax

Skiftlägeskänslighet

Kommando och färgkonstanter är inte skiftlägeskänsliga:

PRINT “Hello, World!”
print “Hello, World, igen!”

Variabelnamn är skiftlägeskänsliga:

a = 5
A = 7
PRINT a
PRINT A

Programrader

Rader av ett LibreLogo-program är stycken i LibreOffice Writerdokument. En programrad kan innehålla flera kommandon:

PRINT “Hello, World!” PRINT “LibreLogo”

Kommentarer

Rader eller delar av rader kan göras till kommentarer genom att lägga till ett semikolon, allt som följer semikolon (i samma stycke) räknas som en kommentar.

; en kommentar
PRINT 5 * 5 ; ytterligare en kommentar

Dela upp programrader i flera stycken

Det är möjligt att dela upp en programrad i flera stycken med hjälp av tecknet ~ (tilde) vid radens slut:

PRINT “Detta är ett väldigt långt ” + ~
“varningsmeddelande”

Sköldpaddsförflyttningar

FORWARD (fd)

FORWARD 10 ; flyttar framåt 10pt (1pt = 1/72 inch = 0,35 mm)
FORWARD 10pt ; se ovan
FORWARD 0.5in ; flytta framåt 0.5 inch (1 inch = 2,54 cm)
FORWARD 1" ; se ovan
FD 1mm
FD 1cm

BACK (bk)

BACK 10 ; flytta bakåt 10pt

LEFT (lt)

LEFT 90 ; sväng 90 grader motsols
LEFT 90° ; se ovan
LT 3h ; sväng 3 timmar mot klockans riktning, dvs 90 grader motsols
LT any ; sväng åt ett slumpmässigt håll

RIGHT (rt)

RIGHT 90 ; sväng 90 grader medsols

PENUP (pu)

PENUP ; flytta sköldpaddan utan att rita något

PENDOWN (pd)

PENDOWN ; rita medan du flyttar sköldpaddan

POSITION (pos)

POSITION [0, 0] ; sväng och flytta till översta, vänstra hörnet
POSITION PAGESIZE ; sväng och flytta till nedersta högra hörnet
POSITION [PAGESIZE[0], 0] ; sväng och flytta till översta, högra hörnet
POSITION ANY ; sväng och flytta till en slumpmässig position

HEADING (seth)

HEADING 0 ; sväng norrut
HEADING 12h ; se ovan
HEADING [0, 0] ; sväng mot vänstra övre hörnet
HEADING ANY ; sväng i en slumpmässig riktning

Andra skölpaddekommandon

HIDETURTLE (ht)

HIDETURTLE ; döljer sköldpaddan (tills kommandot showturtle används)

SHOWTURTLE (st)

SHOWTURTLE ; visa sköldpadda

HOME

HOME ; nollställ sköldpaddans ursprungliga position och inställningar

CLEARSCREEN (cs)

CLEARSCREEN ; tar bort ritade objekt från dokumentet

FILL och CLOSE

FILL ; close and fill the actual line shape or points
CLOSE ; close the actual line shape or join the actual points

Example: filling a regular triangle:

FORWARD 50 LEFT 120 FORWARD 50 FILL

Example: drawing a regular triangle:

FORWARD 50 LEFT 120 FORWARD 50 CLOSE

Penninställningar

PENSIZE (ps)

PENSIZE 100 ; ange linjebredden till 100 punkter
PENSIZE ANY ; motsvarar PENSIZE RANDOM 10

PENCOLOR/PENCOLOUR (pc)

PENCOLOR “red” ; ange pennfärgen till röd (via färgnamn, se färgkonstanter)
PENCOLOR [255, 255, 0] ; anger en gul färg (RGB lista)
PENCOLOR 0xffff00 ; anger gul färg (hexadecimal kod)
PENCOLOR 0 ; anger svart färg (0x000000)
PENCOLOR ANY ; slumpmässig färg
PENCOLOR [5] ; anger röd färg (via färgidentifierare, se färgkonstanter)
PENCOLOR “invisible” ; genomskinlig "färg" för former utan synligt område
PENCOLOR “~red” ; ange en slumpmässig röd färg

PENTRANSPARENCY

PENTRANSPARENCY 80 ; ange transparensen för pennans färg till 80%

PENCAP/LINECAP

PENCAP “none” ; utan extra linjeslut (standard)
PENCAP “round” ; avrundat linjeslut
PENCAP “square” ; fyrkantigt linjeslut

PENJOINT/LINEJOINT

PENJOINT “rounded” ; avrundade linjeskarvar (standard)
PENJOINT “miter” ; skarpa linjeskarvar
PENJOINT “bevel” ; kapade linjeskarvar
PENJOINT “none” ; ingen linjeskarv

PENSTYLE

PENSTYLE “solid” ; solid linje (default)
PENSTYLE “dotted” ; prickad linje
PENSTYLE “dashed” ; streckad linje

 ; anpassat mönster av prickar och streck angivet av en lista med följande argument:
 ; – antal intilliggande punkter
 ; – prickarnas längd
 ; – antal intilliggande streck
 ; – streckens längd
 ; – avstånd mellan strickar/streck
 ; – typ (valfri):
 ; 0 = prickar är rektangulära (default)
 ; 2 = prickar är kvadratiska (avstånd och längd anges i förhållande till pennstorleken)

PENSTYLE [3, 1mm, 2, 4mm, 2mm, 2] ; ...––...––...––

Fyllningsinställningar

FILLCOLOR/FILLCOLOUR (fc)

FILLCOLOR “blue” ; fyll med blå färg, se även PENCOLOR
FILLCOLOR “invisible” CIRCLE 10 ; ofylld cirkel
FILLCOLOR [“blue”, “red”] ; övertoning mellan röd och blå
FILLCOLOR [[255, 255, 255], [255, 128, 0]] ; mellan vit och orange
FILLCOLOR [“blue”, “red”, 1, 0, 0] ; ange en axiell toningsgradient (med obligatoriska rotations och inramningsinställningar), möjliga värden: 0-5 = linjär, axiell, radiell, elliptisk, fyrkantig och rektangel transarens
FILLCOLOR [“red”, “blue”, 0, 90, 20] ; linjär med 20% inramning, roterat till 90 grader från sköldpaddans utgångsriktning
FILLCOLOR [“red”, 'blue”, 0, 90, 20, 0, 0, 200, 50] ; från 200% till 50% intensitet
FILLCOLOR [ANY, ANY, 2, 0, 0, 50, 50] ; radiell toning med slumpmässiga färger och 50-50% horisontell och vertikal position från mitten

FILLTRANSPARENCY

FILLTRANSPARENCY 80 ; anger att aktuella fyllnadsfärgen ska vara 80% transparent (genomskinlig)
FILLTRANSPARENCY [80] ; anger linjär transparent toning från 80% till 0%
FILLTRANSPARENCY [80, 20, 1, 90] ; anger axiell transparent toning roterat med 90 grader från sköldpaddans aktuella position
FILLTRANSPARENCY [80, 20, 2, 0, 20, 50, 50] ; anger radiell transparent toning från yttre 80% till inre 20% transparens med 20% inramning och 50-50% horisontell och vertikal position från mitten

FILLSTYLE

FILLSTYLE 0 ; fyll utan skraffering (default)
FILLSTYLE 1 ; enkel svart skraffering (horisontell)
FILLSTYLE 2 ; enkel svart skraffering (45 grader)
FILLSTYLE 3 ; enkel svart skraffering (-45 grader)
FILLSTYLE 4 ; enkel svart skraffering (vertikal)
FILLSTYLE 5 ; röd skraffering i kors (45 degrees)
FILLSTYLE 6 ; röd skraffering i kors (0 grader)
FILLSTYLE 7 ; blå skraffering i kors (45 degrees)
FILLSTYLE 8 ; blå skraffering i kors (0 grader)
FILLSTYLE 9 ; blå skraffering trippelkryssad
FILLSTYLE 10 ; enkel svart skraffering (bred) (45 grader)

 ; anpassad skraffering anger en lista med följande argument:
 ; – style (1 = enkel, 2 = dubbel, 3 = trippel skraffering)
 ; – färg
 ; – avstånd
 ; – grader

FILLSTYLE [2, “green”, 3pt, 15°] ; grön korsad skraffering (15 grader)

Ritobjekt

CIRCLE

CIRCLE 100 ; rita en cirkel (diameter = 100pt)

ELLIPSE

ELLIPSE [50, 100] ; rita en ellips med 50pt samt 100pt i diameter
ELLIPSE [50, 100, 2h, 12h] ; rita en elliptisk sektor (från positionen kl 2 till kl 12)
ELLIPSE [50, 100, 2h, 12h, 2]  ; rita ett elliptiskt segment
ELLIPSE [50, 100, 2h, 12h, 3]  ; rita en elliptisk båge

SQUARE

SQUARE 100 ; rita en kvadrat (storlek = 100pt)

RECTANGLE

RECTANGLE [50, 100] ; draw a rectangle shape (50×100pt)
RECTANGLE [50, 100, 10] ; draw a rectangle with rounded corners

POINT

POINT ; rita en punkt med pennans storlek och färg

CLOSE can join the last points, FILL can fill the shape defined by points. For example, it’s easy to draw a “flat” star starting from its center:

PENUP
REPEAT 5 [
FORWARD 80
POINT
BACK 80
RIGHT 36
FORWARD 50
POINT
BACK 50
RIGHT 120
] FILL

LABEL

LABEL “text” ; skriver ut text vid sköldpaddans position
LABEL 'text' ; se ovan
LABEL "text ; se ovan (endast för enstaka ord)

TEXT

CIRCLE 10 TEXT “text” ; ange texten för det aktuella objektet

Teckensnittsinställningar

FONTCOLOR/FONTCOLOUR

FONTCOLOR “green” ; anger teckensnittsfärgen till grön

FONTFAMILY

FONTFAMILY “Linux Libertine G” ; anger teckensnitt (-sfamilj)
FONTFAMILY “Linux Libertine G:smcp=1” ; anger även teckensnittseffekt (små bokstäver)
FONTFAMILY “Linux Libertine G:smcp=1&onum=1” ; små bokstäver + gammeldags stil

FONTSIZE

FONTSIZE 12 ; anger 12pt

FONTWEIGHT

FONTWEIGHT “bold” ; anger fet stil
FONTWEIGHT “normal” ; anger normal teckentjocklek

FONTSTYLE

FONTSTYLE “italic” ; anger kursiv stil
FONTSTYLE “normal” ; återställer kursiv stil till normal

PICTURE (pic)

PICTURE är till

  • gruppering av figurer;
  • starting new line shapes;
  • sparar svg-bilder och svg-/smil-animationer;
  • behåll konsekvens mellan linjefigurers position och den vänstra kanten.

Gruppering av figurer

; PICTURE [ LibreLogo_kommandon]
PICTURE [ FORWARD 100 CIRCLE 100 ] ; trädliknande grupperad figur

Se även "Grupp" i hjälpen för LibreOffice Writer.

TO tree location
PENUP POSITION location HEADING 0 PENDOWN
PICTURE [ FORWARD 100 CIRCLE 100 ] ; trädliknande grupperad figur
END

PICTURE [ tree [30, 50] tree [100, 50] ] ; grupperade figurer i en grupperad figur

Att påbörja nya streckfigurer

PICTURE ; påbörja en ny streckfigur
FORWARD 10 PICTURE FORWARD 10 ; två streckfigurer

Sparar svg-bilder

PICTURE “example.svg” [ CIRCLE 5 ] ; spara bilden som en SVG-bildfil i användarmappen
PICTURE “Desktop/example.svg” [ FORWARD 100 CIRCLE 5 ] ; som ovan, med en relativ sökväg
PICTURE “/home/user/example.svg” [ CIRCLE 5 ]; absolut sökväg för Unix/Linux
PICTURE “C:\example.svg” [ CIRCLE 5 ] ; absolut sökväg för Windows

Sparar svg-/smil-animationer (teckningar med SLEEP-kommandon)

PICTURE “animation.svg” [ CIRCLE 5 SLEEP 1000 CIRCLE 99 ] ; spara som en svg-/smil-animation (se även SLEEP)
PICTURE “animation2.svg” [ CIRCLE 5 SLEEP 1000 CIRCLE 99 SLEEP 2000 ] ; som ovan, men med SLEEP efter sista objektet vilket resulterar i en loop: efter 2 sekunder så startas svg-animationen om i webbläsare som stöder smil.

Konsekvent vid vänster kant

Använd picture för att hålla linjefigurers placering konsekvent vid vänsterkanten av Writer:

PICTURE [ CIRCLE 20 POSITION [-100, 100] CIRCLE 20 ]

Iterativa satser

REPEAT

; REPEAT antal [ kommandon]

REPEAT 10 [ FORWARD 10 LEFT 45 CIRCLE 10 ] ; upprepa 10 gånger

; antal är valfritt

REPEAT [ POSITION ANY ] ; oändlig loop

REPCOUNT

Loopvariabel (även i FOR- och WHILE-loopar).

REPEAT 100 [ FORWARD REPCOUNT LEFT 90 ]

FOR IN

Loop för listposterna:

FOR i IN [1, 5, 7, 9, 11] [
FORWARD i
LEFT 90
]

En slinga (loop) för alla tecken i en teckensekvens:

FOR i IN “text” [
LABEL i
FORWARD 10
]

WHILE

WHILE TRUE [ POSITION ANY ] ; oändlig loop
WHILE REPCOUNT <= 10 [ FORWARD 50 LEFT 36 ] ; as REPEAT 10 [ ... ]

BREAK

Avbryt loopen.

REPEAT [ ; oändlig loop
POSITION ANY
IF REPCOUNT = 100 [ BREAK ]  ; motsvarigheten för REPEAT 100 [ ... ]
]

CONTINUE

Hoppa till nästa steg i loopen.

REPEAT 100 [
POSITION ANY
IF REPCOUNT % 2 = 0 [ CONTINUE ]
CIRCLE 10 ; rita cirklar på varannan position
]

Villkor

OM

; IF villkor [ sant block ]
 ; IF villkor[ sant block ] [ falskt block ]

IF a < 10 [ PRINT “Small” ]
IF a < 10 [ PRINT “Small” ] [ PRINT “Big” ]

AND, OR, NOT

Logiska operatorer

IF a < 10 AND NOT a = 5 [ PRINT “0, 1, 2, 3, 4, 6, 7, 8 or 9” ]
IF a < 10 AND a != 5 [ PRINT “0, 1, 2, 3, 4, 6, 7, 8 or 9" ] ; som ovan

Subrutiner

TO, END

Nytt ord (eller procedur).

TO triangle
REPEAT [ FORWARD 100 RIGHT 120 ] FILL
END

REPEAT 10 [ triangle PENUP POSITION ANY PENDOWN ]

OUTPUT

Returvärde från funktionen.

TO randomletter
OUTPUT RANDOM “qwertzuiopasdfghjklyxcvbnm”
END

PRINT randomletter + randomletter + randomletter ; skriver ut 3 slumpmässigt valda tecken

STOP

Avslutar process.

TO example number
IF number < 0 [ STOP ]
PRINT SQRT number ; skriver ut kvadratroten
]

example 100
example -1 ; utan utdata och fel
example 25

Standardvariabler

ANY

Standard slumpmässiga färgvärden etc.

PENCOLOR ANY ; slumpmässig pennfärg

TRUE

Logiskt värde.

WHILE TRUE [ POSITION ANY ] ; ändlös loop
PRINT TRUE ; skriver ut true

FALSE

Logiskt värde.

WHILE NOT FALSE [ POSITION ANY ] ; ändlös loop
PRINT FALSE ; skriver ut false

PAGESIZE

PRINT PAGESIZE ; skriver ut pappersstorlekar i punkter, t.ex. [595.30, 841.89]

PI/π

PRINT PI ; skriver ut 3.14159265359

Input/Output

PRINT

PRINT “text” ; skriver ut “text” i en dialogruta
PRINT 5 + 10 ; skriver ut 15

INPUT

PRINT INPUT “Inmatningsvärde?” ; frågar efter och skriver ut en sträng via en frågedialog
PRINT FLOAT (INPUT “Första numret?”) + FLOAT (INPUT “Andra numret?”) ; enkel kalkylator som adderar två värden

SLEEP

SLEEP 1000 ; vänta i 1000 ms (1 sekund)

GLOBAL

Anger globala variabler som används i procedurer.

GLOBAL about
about = “LibreLogo”

TO example
PRINT about
GLOBAL about ; när vi vill lägga till ett nytt värde
about = “nytt värde för den globala variabeln”
END

example
PRINT about

Funktioner

RANDOM

PRINT RANDOM 100 ; slumpmässigt flyttal (0 <= x < 100)
PRINT RANDOM “text” ; slumpmässigt tecken från "text"
PRINT RANDOM [1, 2] ; slumpmässig post från listan (1 eller 2)

INT

PRINT INT 3.8 ; skriver ut 3 (heltalsdelen (integer-delen) av 3.8)
PRINT INT RANDOM 100 ; slumpmässigt heltal (0 <= x < 100)
PRINT INT “7” ; konverterar en strängparameter till ett heltal (en integer)

FLOAT

; konverterar strängparametern till ett flyttal
PRINT 2 * FLOAT "5.5" ; skriver ut 11.0

STR

; konverterar den numeriska parametern till en sträng
PRINT “Resultat: ” + STR 5 ; skriver ut “Resultat: 5”
PRINT 10 * STR 5 ; skriver ut 5555555555

SQRT

PRINT SQRT 100 ; skriver ut 10, kvadratroten av 100

SIN

PRINT SIN 90 * PI/180 ; skriver ut 1.0 (sinus av 90° i radianer)

COS

PRINT COS 0 * PI/180 ; skriver ut 1.0 (cosinus av 0° i radianer)

LOG10

PRINT LOG10 100 ; skriv ut 2.0 (logaritmen av 100)

ROUND

PRINT ROUND 3.8 ; skriver ut 4 (avrundar 3.8)
PRINT ROUND RANDOM 100 ; slumpmässigt heltal (0 <= x <= 100)

ABS

PRINT ABS -10 ; skriver ut 10, det absoluta värdet av -10

COUNT

PRINT COUNT “text” ; skriver ut 4, det antal tecken som strängen “text” innehåller
PRINT COUNT [1, 2, 3] ; skriver ut 3, listans storlek

SET

; konverterar listan till ett Python-set
PRINT SET [4, 5, 6, 6] ; skriver ut {4, 5, 6}
PRINT SET [4, 5, 6, 6] | SET [4, 1, 9] ; skriver ut {1, 4, 5, 6, 9}, union
PRINT SET [4, 5, 6, 6] & SET [4, 1, 9] ; skriver ut {4}, skärningspunkten
PRINT SET ([4, 5, 6, 6]) - SET [4, 1, 9] ; skriver ut {5, 6}, differensen
PRINT SET [4, 5, 6, 6] ^ SET [4, 1, 9] ; skriver ut {1, 5, 6, 9}, symmetriska differensen

RANGE

; Python-liknande listgenerering
PRINT RANGE 10 ; print [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
PRINT RANGE 3 10 ; skriver ut [3, 4, 5, 6, 7, 8, 9]
PRINT RANGE 3 10 3 ; skriver ut [3, 6, 9]

FOR i IN RANGE 10 50 10 [ ; loop för [10, 20, 30, 40]
FORWARD i
LEFT 90
]

LIST

; tar bort upprepade poster från en lista med set och listkonvertering
PRINT LIST (SET [1, 3, 5, 5, 2, 1]) ; skriver ut [1, 3, 5, 2]

TUPLE

Konverterar till en Python tuple (lista som inte går att ändra)

PRINT TUPLE [4, 5]

SORTED

Returnerar en sorterad lista.

PRINT SORTED [5, 1, 3, 4]; skriver ut [1, 3, 4, 5]

SUB

Ersätter teckensekvenser med hjälp av regex-mönster (reguljära uttryck).

PRINT SUB("t", "T", "text"); skriver ut "Text", ersätter "t" med "T"
PRINT SUB("(.)", "\\1\\1", "text"; skriver ut "tteexxtt", dubblerar alla tecken

SÖK

Söker efter teckensekvenser med hjälp av reguljära uttryck.

IF SEARCH ("\w", word) [ PRINT "Bokstav i ordet" ]

FINDALL

Hittar alla teckensekvenser i en sträng som matchar ett givet reguljärt uttryck.

PRINT FINDALL("\w+","Hundar, katter."); skriver ut "Hundar", "katter"], listan med ord.

MIN

PRINT MIN [1, 2, 3]; skriver ut 1, listans minsta element

MAX

PRINT MAX [1, 2, 3]; skriver ut 3, det största elementet i listan

Färgkonstanter

PENCOLOR "SILVER"; välj färg via namn
PENCOLOR[1], väljer färg via identifierare
PENCOLOR "~SILVER"; slumpmässig silverfärg

ID Namn
0 BLACK
1 SILVER
2 GRAY/GREY
3 WHITE
4 MAROON
5 RED
6 PURPLE
7 FUCHSIA/MAGENTA
8 GREEN
9 LIME
10 OLIVE
11 YELLOW
12 NAVY
13 BLUE
14 TEAL
15 AQUA
16 PINK
17 TOMATO
18 ORANGE
19 GOLD
20 VIOLET
21 SKYBLUE
22 CHOCOLATE
23 BROWN
24 INVISIBLE