Dokumentacja języka Tekster 1.23f

1. Wprowadzenie

Tekster to prosty język skryptowy oparty na plikach .tek.
Pozwala tworzyć interaktywne scenariusze, dialogi, proste gry tekstowe oraz automaty sterowane etykietami.

Interpreter wykonuje kod od góry do dołu, z możliwością skoków i zmiennych tekstowych.


2. Struktura programu

Program składa się z:

Kod wykonywalny musi znajdować się wewnątrz etykiet.

Wcięcia

Każda linia należąca do etykiety musi zaczynać się od 4 spacji.

Przykład:

start:
    druk "Witaj!"
    idzdo koniec

koniec:
    druk "Koniec programu."

3. Komentarze

Komentarze są ignorowane przez interpreter.

Składnia:

kom to jest komentarz
// to też jest komentarz

Komentarz musi zajmować całą linię.


4. Etykiety

Etykieta definiuje blok kodu, do którego można skakać.

Składnia:

nazwa_etykiety:

Zasady:

Interpreter wykonuje tylko kod wewnątrz etykiet.


5. Zmienne

Zmienne są przechowywane jako teksty (stringi).

Tworzenie zmiennej

Zmienne powstają automatycznie przy użyciu:

wez_dane

Użycie zmiennej

W tekście można używać zmiennych poprzez:

@nazwa_zmiennej

Interpreter podmienia je na ich wartości.


6. Komendy języka

Poniżej znajduje się pełna lista komend obsługiwanych przez Tekstera.


6.1. druk — wypisywanie tekstu

Składnia:

druk "tekst"
druk tekst

Przykład:

druk "Witaj @imie!"

6.2. czekaj — opóźnienie

Składnia:

czekaj liczba

1 jednostka = 1/50 sekundy.

Przykład:

czekaj 50   // 1 sekunda

6.3. czysc — czyszczenie ekranu

Czyści terminal ANSI.

Składnia:

czysc

6.4. pauza — zatrzymanie programu

Składnia:

pauza

Wyświetla:

Naciśnij Enter, aby kontynuować...

6.5. pauza.brak — pauza bez komunikatu

Składnia:

pauza.brak

Czeka na Enter, ale nic nie wyświetla.


6.6. idzdo — skok do etykiety

Składnia:

idzdo nazwa_etykiety

Skacze do początku wskazanej etykiety.

Przykład:

idzdo start

6.7. wez_dane — pobieranie danych od użytkownika

Składnia:

wez_dane "pytanie";nazwa_zmiennej

Przykład:

wez_dane "Jak masz na imię?";imie
druk "Witaj @imie!"

6.8. jezeli — instrukcja warunkowa

Składnia:

jezeli zmienna=wartosc wtedy idzdo etykieta

Warunek działa tylko dla operatora =.

Przykład:

jezeli imie=Alan wtedy idzdo powitanie

7. Zasady wykonywania programu

  1. Interpreter wczytuje cały plik .tek.
  2. Wyszukuje wszystkie etykiety i zapamiętuje ich numery linii.
  3. Wykonuje kod od góry do dołu.
  4. Kod wykonywalny musi znajdować się wewnątrz etykiet.
  5. Skoki idzdo zmieniają numer aktualnej linii.
  6. Wcięcia są obowiązkowe — 4 spacje.

8. Przykładowy program

start:
    czysc
    druk "Witaj w programie Tekster!"
    wez_dane "Jak masz na imię?";imie
    jezeli imie=Alan wtedy idzdo specjalne
    druk "Miło Cię poznać, @imie!"
    idzdo koniec

specjalne:
    druk "Witaj, wybrany użytkowniku Alan!"
    idzdo koniec

koniec:
    druk "Do zobaczenia!"
    pauza

9. Błędy i ograniczenia


10. Podsumowanie

Tekster to minimalistyczny język skryptowy idealny do:

Można go łatwo rozszerzyć o nowe funkcje, takie jak pętle, funkcje, typy danych czy operatory logiczne.