Plik tekstowy: Różnice pomiędzy wersjami
(→Include i parametryzacja) |
(→Przykład działania) |
||
(Nie pokazano 17 pośrednich wersji utworzonych przez tego samego użytkownika) | |||
Linia 6: | Linia 6: | ||
(spacja) | (spacja) | ||
(tabulator) | (tabulator) | ||
+ | (znak nowej linii) | ||
; (średnik) | ; (średnik) | ||
, (przecinek) | , (przecinek) | ||
+ | |||
+ | Dla lepszej czytelności zalicza się stosowanie jedynie białych znaków, czyli spacji, tabulatora oraz znaku nowej linii. | ||
Gdy zachodzi potrzeba, aby znak separatora był częścią tokenu, wówczas token należy ująć w cudzysłów, tak jak w poniższym przykładzie. | Gdy zachodzi potrzeba, aby znak separatora był częścią tokenu, wówczas token należy ująć w cudzysłów, tak jak w poniższym przykładzie. | ||
token1 token2 '''"token;3"''' token4 | token1 token2 '''"token;3"''' token4 | ||
− | |||
== Komentarze == | == Komentarze == | ||
− | W plikach tekstowych można stosować | + | W plikach tekstowych można stosować komentarze. Są one ignorowane przez parser. Można w nich zapisywać notatki lub tymczasowo deaktywować wybrane wpisy. |
=== Komentarz liniowy === | === Komentarz liniowy === | ||
Znakiem początkowym komentarza liniowego są dwa ukośniki, a jego końcem jest znak nowej linii: | Znakiem początkowym komentarza liniowego są dwa ukośniki, a jego końcem jest znak nowej linii: | ||
− | // ta treść jest zakomentowana | + | <span style="color:gray;font-style:italic">// ta treść jest zakomentowana</span> |
ale ta już nie | ale ta już nie | ||
Linia 24: | Linia 26: | ||
Komentarzem blokowym można objąć wiele linii tekstu. | Komentarzem blokowym można objąć wiele linii tekstu. | ||
Znakiem początkowym jest ukośnik i gwiazdka, a końcowym - gwiazdka i ukośnik. | Znakiem początkowym jest ukośnik i gwiazdka, a końcowym - gwiazdka i ukośnik. | ||
+ | <span style="color:gray;font-style:italic"> | ||
/* ta treść zajmuje | /* ta treść zajmuje | ||
wiele linii | wiele linii | ||
i jest | i jest | ||
zakomentowana */ | zakomentowana */ | ||
+ | </span> | ||
ale ta już nie jest | ale ta już nie jest | ||
− | == Include | + | == Include == |
Include jest poleceniem które pomaga w modularyzacji plików. | Include jest poleceniem które pomaga w modularyzacji plików. | ||
− | + | Podczas wczytywania pliku gdy parser trafi na polecenie include zawartość dołączonego pliku jest wklejana w miejsce tego polecenia. | |
− | Polecenie | + | |
+ | <span style="color:tomato;font-weight:bold">include</span> ''file parameters'' <span style="color:tomato;font-weight:bold">end</span> | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |+ Opis parametrów | ||
+ | ! Nazwa | ||
+ | ! Znaczenie | ||
+ | |- | ||
+ | | '''file''' | ||
+ | | Ścieżka do pliku, którego zawartość ma być podstawiona w miejsce wpisu. | ||
+ | |- | ||
+ | | '''parameters''' | ||
+ | | Wartości, które zostaną podstawione w miejsce parametrów zdefiniowanych w pliku. | ||
+ | |} | ||
+ | |||
+ | |||
+ | === Parametry === | ||
+ | Polecenie include może przyjmować wartości, które zostaną podstawione w miejsce ciągów parametrycznych w dołączanym pliku. | ||
− | Parametr definiuje się za pomocą | + | ==== Definicja parametru ==== |
+ | Parametr definiuje się za pomocą ciągu parametrycznego: | ||
(pX) | (pX) | ||
gdzie X jest kolejnym indeksem parametru (zaczynając od 1). | gdzie X jest kolejnym indeksem parametru (zaczynając od 1). | ||
+ | |||
+ | ==== Przykład działania ==== | ||
+ | Przykładowa zawartość parametryzowanego pliku (nazwijmy go ''example.txt'') może wyglądać tak: | ||
+ | Cześć, jestem <span style="color:darkviolet;font-weight:bold">(p1)</span>. Mam <span style="color:darkviolet;font-weight:bold">(p2)</span> lat. | ||
+ | |||
+ | Dołączenie powyższego pliku za pomocą polecenia include: | ||
+ | <span style="color:tomato;font-weight:bold">include</span> example.txt Jerzy 50 <span style="color:tomato;font-weight:bold">end</span> | ||
+ | |||
+ | Umieszczenie takiego polecenia spowoduje nastepującą interpretację zawartości pliku ''example.txt'': | ||
+ | Cześć, jestem Jerzy. Mam 50 lat. | ||
+ | |||
+ | ==== Zagnieżdżanie parametru ==== | ||
+ | Dopuszczalne jest także zagniezdzanie parametrów. Jesli zdefiniujemy np. | ||
+ | <span style="color:tomato;font-weight:bold">include</span> foo.inc param1_i_<span style="color:darkviolet;font-weight:bold">(p3)</span> param2 param3 <span style="color:tomato;font-weight:bold">end</span> | ||
+ | to parser przy odczytywaniu takiego include i napotkaniu tokena "wstaw_tutaj_(p1)_oraz_(p2)" wyprodukuje: | ||
+ | wstaw_tutaj_param1_i_param3_oraz_param2 |
Aktualna wersja na dzień 13:45, 6 lip 2022
Artykuł zawiera informacje na temat funkcjonowania plików tekstowych w symulatorze.
Spis treści
Tokeny i separatory
Plik tekstowy składa się z tokenów, czyli ciągów tekstu oddzielonych od siebie separatorami. Podstawowymi separatorami są znaki:
(spacja) (tabulator) (znak nowej linii) ; (średnik) , (przecinek)
Dla lepszej czytelności zalicza się stosowanie jedynie białych znaków, czyli spacji, tabulatora oraz znaku nowej linii.
Gdy zachodzi potrzeba, aby znak separatora był częścią tokenu, wówczas token należy ująć w cudzysłów, tak jak w poniższym przykładzie.
token1 token2 "token;3" token4
Komentarze
W plikach tekstowych można stosować komentarze. Są one ignorowane przez parser. Można w nich zapisywać notatki lub tymczasowo deaktywować wybrane wpisy.
Komentarz liniowy
Znakiem początkowym komentarza liniowego są dwa ukośniki, a jego końcem jest znak nowej linii:
// ta treść jest zakomentowana
ale ta już nie
Komentarz blokowy
Komentarzem blokowym można objąć wiele linii tekstu. Znakiem początkowym jest ukośnik i gwiazdka, a końcowym - gwiazdka i ukośnik.
/* ta treść zajmuje
wiele linii
i jest
zakomentowana */
ale ta już nie jest
Include
Include jest poleceniem które pomaga w modularyzacji plików. Podczas wczytywania pliku gdy parser trafi na polecenie include zawartość dołączonego pliku jest wklejana w miejsce tego polecenia.
include file parameters end
Nazwa | Znaczenie |
---|---|
file | Ścieżka do pliku, którego zawartość ma być podstawiona w miejsce wpisu. |
parameters | Wartości, które zostaną podstawione w miejsce parametrów zdefiniowanych w pliku. |
Parametry
Polecenie include może przyjmować wartości, które zostaną podstawione w miejsce ciągów parametrycznych w dołączanym pliku.
Definicja parametru
Parametr definiuje się za pomocą ciągu parametrycznego:
(pX)
gdzie X jest kolejnym indeksem parametru (zaczynając od 1).
Przykład działania
Przykładowa zawartość parametryzowanego pliku (nazwijmy go example.txt) może wyglądać tak:
Cześć, jestem (p1). Mam (p2) lat.
Dołączenie powyższego pliku za pomocą polecenia include:
include example.txt Jerzy 50 end
Umieszczenie takiego polecenia spowoduje nastepującą interpretację zawartości pliku example.txt:
Cześć, jestem Jerzy. Mam 50 lat.
Zagnieżdżanie parametru
Dopuszczalne jest także zagniezdzanie parametrów. Jesli zdefiniujemy np.
include foo.inc param1_i_(p3) param2 param3 end
to parser przy odczytywaniu takiego include i napotkaniu tokena "wstaw_tutaj_(p1)_oraz_(p2)" wyprodukuje:
wstaw_tutaj_param1_i_param3_oraz_param2