Primjedba: Ako postoji varijabla PRINTDEPTHLIMIT sa ne-negativnom integer vrijednoscu, tada ce strukture kompleksnih lista i nizova biti ispisane samo do dozvoljene dubine. To jest, clanovi od clanova od... od clanova ce biti dozvoljeni samo do odredjenog broja. Ispusteni clanovi, oni koji su preko limita dubine, biti ce oznaceni sa `...' za svakoga. Tako ce lista dubine dva, od dva clana izgledati ovako [... ...].
Ako postoji varijabla PRINTWIDTHLIMIT sa ne-negativnom integer vrijednoscu, onda ce samo prvih toliko clanova bilo koje liste ili niza biti ispisani. Jedna trotocka (...) ce zamijeniti sve clanove u strukturi koji nisu ispisani. Isto ogranicenje sirine vrijedi i za broj slova ispisanih u rijeci, osim sto ce PRINTWIDTHLIMIT izmedju 0 i 9 biti tretiran kao 10 za rijeci. Ovaj limit vrijedi ne samo za podatke top-levela, nego i za sve podstrukture sadrzane u njima.
See section printdepthlimit ; section printwidthlimit
PRINT thing PR thing (PRINT thing1 thing2 ...) (PR thing1 thing2 ...)
komanda. Ispise input ili inpute u aktivni write stream (inicijalno terminal). Svi inputi se ispisu na jednoj liniji, rastavljeni jednim razmakom i zavrsavaju sa newline (novom linijom). Ako je input lista, uglate zagrade se ne ispisu, ali se ispisu oko podlista. Viticaste zagrade se uvijek ispisu oko nizova.
TYPE thing (TYPE thing1 thing2 ...)
komanda. Ispise input, ili inpute kao PRINT, osim sto ne stavi newline znak na kraj i ne rastavlja visestruke inpute sa razmacima. Pazite: Ispis na terminal je obicno "line buffered"; tj., znakovi koje ste ispisali sa TYPE se nece stvarno pojaviti na zaslonu dok, ili nije ispisan newline znak (sa PRINT ili SHOW), ili Logo ne pokusa citati sa tipkovnice (bilo na zahtjev vaseg programa ili nakon instrukcijskog prompta). Buffering cini program puno brzim nego bi bio, da se svaki znak ispise odmah. U vecini slucajeva to i ne smeta programu. Da bi zadovoljio programe koji ispisuju mnogo pozicioniranog teksta upotrebljavajuci TYPE, Logo ce prisiliti na ispis svaki puta kada se pozove SETCURSOR. To rjesava vecinu problema sa bufferom. Ipak, povremeno mozete naci za shodno prisiliti trenutacni ispis znakova; to se moze uciniti sa WAIT komandom. WAIT 0 ce prisiliti na ispis, bez cekanja.
See section setcursor ; section wait
SHOW thing (SHOW thing1 thing2 ...)
komanda. Ispise input, ili inpute kao PRINT, osim sto -- ako je input lista, ispise je unutar uglatih zagrada.
See section print
READLIST RL
ucita liniju sa read stream-a (inicijalno terminala) i outputira tu liniju kao listu. Linija je podijeljena u clanove, kao da je upisana u uglatim zagradama u nekoj instrukciji. Ako je read stream file -- i dosli smo na kraj file-a, READLIST outputira praznu rijec (ne praznu listu). READLIST procesira "\", "|" i "~" znakove u read stream-u; outputirana lista nece sadrzati te znakove, ali ce oni imati svoj uobicajeni efekt. READLIST ne tretira ";" kao specijalni znak (znak za komentar).
READWORD RW
ucita liniju sa read stream-a i outputira tu liniju kao rijec. Output je jedna rijec, cak i ako input sadrzi razmake, uglate zagrade, itd. Ako je read stream file -- i dosli smo na kraj filea, READWORD outputira praznu listu (ne praznu rijec). READWORD procesira "\", "|" i "~" znakove u read stream-u. U slucaju kada se "~" znak upotrijebi za nastavak linije, outputirana rijec sadrzi i "~" i newline znak, tako da user program moze tocno znati sto je user upisao. Vertikalne crte (|) su takodjer sacuvane u outputu, Backslash (\) znakovi nisu sacuvani u outputu, ali znak koji ih slijedi na liniji, ima 128 dodan na svoju ASCII vrijednost. Program moze upotrijebiti BACKSLASHEDP da provjeri taj slucaj. ("\" se sacuva samo za neke znakove.)
See section backslashedp
READCHAR RC
ucita jedan znak sa read stream-a i outputira taj znak kao rijec. Ako je read stream file -- i kraj je file-a, READCHAR outputira praznu listu (ne praznu rijec). Ako je read stream terminal, eho je iskljucen kada se pozove READCHAR, i ostaje iskljucen do poziva READLIST ili READWORD ili dok Logo ne ispise svoj prompt. Backslash (\), (|) , i (~) nemaju posebno znacenje u ovom kontekstu.
See section readlist
READCHARS num RCS num
ucita num znakova sa read stream-a i outputira te znakove kao rijec. Ako je read stream file, i kraj je file-a, READCHARS outputira praznu listu (ne praznu rijec). Ako je read stream terminal, eho je iskljucen kada se pozove READCHARS, i ostaje iskljucen do poziva READLIST ili READWORD ili dok Logo ne ispise svoj prompt. Backslash (\), (|) , i (~) nemaju posebno znacenje u ovom kontekstu.
See section readlist ; section readword
SHELL command (SHELL command wordflag)
Pod Unixom, outputira rezultat izvrsenja command kao shell komande. (Komanda je poslana na /bin/sh, a ne csh ili slicno.) Ako je command doslovna lista sa komandne linije i zelite njome poslati "\" shellu, morate upotrijebiti \\ da Logo propusti \. Output je lista koja sadrzi jedan clan za svaku liniju shell generiranog outputa. Obicno je svaka takova linija prikazana kao lista u outputu -- kao da je bila ucitana sa READLIST. Ako je dan i drugi input, bez obzira na vrijednost inputa, svaka linija je prikazana kao rijec u outputu, kao da je bila ucitana sa READWORD. Primjer:
to dayofweek output first first shell [date] : end
Ovaj "first first" je da izvuce prvu rijec iz prve (i jedine) linije shell outputa.
Pod DOS-om, SHELL je komanda, a ne operacija; posalje svoj input DOS komandnom procesoru, ali ne pokupi rezultat komande.
Macintosh, naravno, nije programabilan.
OPENREAD filename
komanda. Otvori imenovani file za citanje. Read pozicija se inicijalno postavi na pocetak file-a. Greska je ako filename ne postoji.
OPENWRITE filename
komanda. Otvori imenovani file za pisanje. Ako je file vec postojao, stara verzija se brise i novi, prazni file se stvori.
OPENAPPEND filename
komanda. Otvori imenovani file za pisanje. Ako file vec postoji, pozicija za pisanje se inicijalno postavlja na kraj file-a, tako da se novo upisani podaci dodaju na kraj.
OPENUPDATE filename
komanda. Otvori imenovani file za citanje i pisanje. Read i write pozicija se inicijalno postavi na kraj starog file-a, ako postoji. Primjedba: svaki otvoreni file ima samo jednu poziciju, istovremeno za citanje i pisanje. Ako je file otvoren istovremeno za citanje i pisanje, tada ce SETREADPOS takodjer pomaknuti i WRITEPOS i obrnuto. Ako naizmjenicno citate i pisete isti file, morate pozvati SETREADPOS izmedju pisanja i citanja i SETWRITEPOS izmedju citanja i pisanja.
See section reader ; section writer ; section setreadpos ; section setwritepos
CLOSE filename
komanda. Zatvori imenovane filove.
ALLOPEN
outputira listu ciji su clanovi imena svih trenutacno otvorenih file-ova. Ta lista ne ukljucuje `dribble' file, ako ga ima.
CLOSEALL (library procedura)
komanda. Zatvori sve otvorene filove. Skracuje FOREACH ALLOPEN [CLOSE ?]
See section foreach ; section close
ERASEFILE filename ERF filename
komanda. Obrise (ukloni) imenovani file, koji ne bi smio trenutacno biti otvoren.
DRIBBLE filename
komanda. Stvori novi file, cije je ime input (kao OPENWRITE) i pocinje biljeziti u taj file sve sto je ucitano sa keyboarda ili ispisano na terminal. To biljezenje je dodatak pisanju u WRITER. Namjera je stvoriti transkripciju Logo rada, ukljucujuci stvari kao prompt znakove i interakciju.
See section openwrite ; section writer
NODRIBBLE
komanda. Prestaje sa kopiranjem informacija u dribble file, i zatvara taj file.
SETREAD filename
komanda. Oznaci imenovani file filename kao read stream -- upotrebljava se za READLIST i slicno. File mora biti prvo otvoren sa OPENREAD ili OPENUPDATE. Ako je input prazna lista, read stream postaje terminal, kao obicno. Promjena read steam-a ne zatvara file koji je prije bio read stream, tako je moguce naizmjenicno citati iz raznih file-ova.
See section readlist ; section openread ; section openupdate
SETWRITE filename
komanda. Postavi imenovani file kao write stream, koji se upotrebljava za PRINT i slicno. File prije toga mora biti otvoren sa OPENWRITE, OPENAPPEND ili OPENUPDATE. Ako je input prazna lista, tada write stream postaje terminal, kao i obicno. Promjenom write stream-a ne zatvara se file koji je prije bio write stream, tako je moguce izmjenicno pisati u nekoliko file-ova.
See section print ; section openwrite ; section openappend ; section openupdate
READER
outputira ime trenutacno aktivnog read stream file-a ili praznu listu, ako je read stream terminal.
WRITER
outputira ime trenutacno aktivnog write stream file-a ili praznu listu, ako je write stream terminal.
SETREADPOS charpos
komanda. Postavi file pointer (pokazivac) read stream file-a tako da slijedeci READLIST itd., pocinje citati sa charpos rednog broja znaka u file-u, brojeci od 0. (Tj., SETREADPOS 0 ce poceti citati od pocetka file-a.) Nema znacenja ako je read stream terminal.
See section readlist
SETWRITEPOS charpos
komanda. Namjesti file pointer (pokazivac) write stream-a tako da slijedeci PRINT, itd., pocinje pisati na charpos rednom broju znaka u file-u, brojeci od 0. (Tj., SETWRITEPOS 0 ce poceti pisati na pocetku file-a.) Nema svrhe ako je write stream terminal.
See section print
READPOS
outputira poziciju u trenutacno aktivnom read stream file-u.
WRITEPOS
outputira poziciju za pisnje u file-u trenutacno aktivnog write stream-a.
EOFP EOF?
predikat, outputira TRUE ako nema vise znakova za citanje u read stream file-u, inace outputira FALSE. (U file-u koji je trenutacno otvoren za citanje.)
FILEP filename (library procedura) FILE? filename
predikat, outputira TRUE ako postoji file sa imenom filename i moze biti citan (UNIX), inace FALSE.
KEYP KEY?
predikat, outputira TRUE ako ima znakova koji cekaju ucitavanje iz "read streama". Ako je "read stream" file, tada je to jednako NOT EOFP. Ako je "read stream" terminal, tada je eho iskljucen i terminal je namjesten na CBREAK (znak po znak, a ne linija po linija) nacin citanja. Ostaje u tom nacinu citanja sve dok neki linijski nacin citanja nije zatrazen (na primjer, READLIST). UNIX OS. zaboravlja (gubi) sve znakove koji cekaju, kada mijenja nacin citanja, tako da prvi KEYP poziv uvijek outputira FALSE.
See section eofp ; section readlist
CLEARTEXT CT
comanda. Obrise text prozor terminala.
SETCURSOR vector
komanda. Input je lista od dva broja, x i y koordinate pozicije na terminalu (ishodiste je lijevi gornji kut, a pozitivan smjer je jugoistok). Terminalski kursor se pomakne na tu poziciju. Ova komanda takodjer uzrokuje ispisivanje znakova u bufferu, ako ih ima.
CURSOR
outputira listu koja sadrzi trenutacne x i y koordinate tekst kursora. Logo se moze zabuniti oko trenutacne pozicije, ako na primjer, utipkate dugu liniju koja se sama spusti u novi red (wrap) ili vam program ispise kontrolne kodove koji djeluju na terminal.
SETMARGINS vector
komanda. Input mora biti lista od dva broja, kao i za SETCURSOR. Obrise zaslon terminala i uredi da svi buduci ispisi budu pomaknuti dolje i desno, kako je indicirano input vektorom. Svaki puta kada se ispise newline (nova linija), Logo ce ispisati x_margin razmaka i za svaki poziv SETCURSOR margine ce biti dodane inputiranim x i y koordinatama. (CURSOR ce javiti poziciju kursora relativnu na margine, tako da ce taj pomak biti nevidljiv za Logo programe.) Svrha ove komande je da omoguci prikaz terminala na televizijskim ekranima u ucionicama.
See section setcursor
SETTEXTCOLOR foreground background SETTC foreground background
komanda (samo za Windows i extended DOS). Inputi su brojevi boja, kao za turtle grafiku. Buduci ispisi teksta u prozoru, upotrijebiti ce navedene boje za foreground (ispisani znakovi) i background (pozadina - prostor ispod tih znakova). Upotreba STANDOUT-a ce vratiti standardne tekst window boje. U extended DOS verziji (ucblogo.exe), boje u textscreen modu su limitirane na brojeve 0-7, i mijenjanje boja se odnosi samo na tekst ispisan od programa, a ne na tekst koji je utipkao user. Ni jedno od ovih ogranicenja se ne odnosi na tekst dio splitscreen moda, koji je zapravo interno ispisan kao grafika.
See section standout
Go to the first, previous, next, last section, table of contents.