Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Autor: Piotr Szawdyński
Inne materiały

Wstawianie tabeli symetrycznej

[lekcja] Znacznikiem do tworzenia tabeli symetrycznej jest [csv] ... [/csv].
Jako, że nowe narzędzia ociekają finezją w porównaniu do starego Smart Text Converter'a dobrze będzie jeśli będzie do tego jakiś ładny i składny opis jak one działają. Nie przynudzając dłużej przejdę do omawiania mechanizmu służącego do tworzenia tabeli symetrycznej.

Co to jest tabela symetryczna?

Tabelą symetryczną określam tabelę, która posiada tyle samo kolumn w każdym wierszu tabeli.

Pierwotne założenie znacznika [csv]

Założeniem pierwotnym znacznika [csv] było umożliwienie tworzenia w prosty sposób tabeli na stronie. Tworzenie tabeli starym mechanizmem było toporne i żenujące, więc trzeba było wymyślić coś prostego i wygodnego w użyciu. Z czasem jednak okazało się, że fajnie by było jeśli również ta prostota i wygoda umożliwiała również wykorzystywanie wszystkich dostępnych mechanizmów STC wewnątrz tabel. To wszystko obecnie umożliwia nam znacznik [csv], więc teraz wystarczy się dowiedzieć jak z tego wszystkiego korzystać.

Najprostszym formatem tekstowym w którym przechowywano dawniej np. listę kontaktów GG jest plik w formacie *.csv. CSV charakteryzuje się tym, że każda kolejna komórka oddzielona jest średnikiem, natomiast znak entera oznacza przejście do nowego rekordu. Tak jest również i tu. Jeżeli chcemy użyć średnika, bądź znaku nowego wiersza w komórce, możemy objąć całą zawartość wiersza ująć w cudzysłów, tj. " ... ". Jeżeli chcemy użyć cudzysłowia wewnątrz wspomnianej konstrukcji to musimy go zapisać podwójnie, tj. "", co spowoduje wyświetlenie jednego cudzysłowa.

Dokumenty *.csv można również generować za pomocą Excel'a. Wystarczy utworzyć dokument, a następnie zapisać jako plik *.csv, po czym otworzyć plik za pomocą notatnika. Znacznik ten poradzi sobie z treścią, którą wygeneruje nam program Excel.

Sprawa więc zapowiada się banalnie i tak właśnie jest:
abcd
1234
wxyz
Powyższa tabela została wygenerowana za pomocą następującego zapisu:
[csv]a;b;c;d;
1;2;3;4;
w;x;y;z;[/csv]

Parametry znacznika [csv ...]

Ważną cechą znacznika [csv] jest fakt, że może on przyjmować parametry takie jak: extended oraz header. Znaczenie parametrów przedstawiam poniżej.

Parametr header

Użycie tego parametru pozwala nam na stworzenie tabeli, która posiada nagłówek. Pierwszy wiersz jest nagłówkiem, natomiast kolejne to normalne komórki tabeli. Jeśli parametr nie zostanie wpisany, pierwszy wiersz zostanie potraktowany jak cała reszta - innymi słowy będzie zbiorem normalnych komórek tabeli. Przykład:
abcd
1234
wxyz
Powyższa tabela została wygenerowana za pomocą następującego zapisu:
[csv header]a;b;c;d;
1;2;3;4;
w;x;y;z;[/csv]

Parametr extended (ext)

Parametr uaktywnia możliwość włączenia parsera STC dla wybranej komórki. Aby włączyć parser STC w wybranej komórce należy użyć znaczników [run] ... [/run]. Jeśli nie zostanie wywołany tryb extended znacznik [run] zostanie potraktowany jak zwykły tekst. Warto też w tym miejscu dodać, że gdy został użyty znacznik ext i nie chcemy wejść w tryb [run] to należy go poprzedzić backslashem, czyli należy napisać \[run].

Używaj trybu ext rozsądnie

Pamiętaj, że znak [ jest znakiem specjalnym w trybie ext i jeśli będziesz wklejał jakiś plik *.csv w którym będą występowały zapisy \[ to backslashe nie zostaną wyświetlone, które występują bezpośrednio przed [. Rozwiązaniem tego problemu jest dopisanie drugiego slasha przed zapisem \[ tj. wpisanie \\[ albo nie używanie trybu extended jeśli nie potrzebujemy w tabeli używać znacznika [run].

Pisanie wielowierszowe

Jeśli chcemy pisać wielowierszowo bez użycia znacznika [run] to musimy całą zawartość komórki umieścić w cudzysłów. Przykład:
[csv]bla;"ble
ble";ok;
zium;dwa;trzy[/csv]
Efekt:
blable
ble
ok
ziumdwatrzy

Używanie cudzysłowów

Jeśli chcemy użyć znaku cudzysłowa należy go zdublować, tj. napisać dwukrotnie "". Kod, który jest umieszczony wewnątrz sekcji [run] rządzi się własnymi prawami, więc ta uwaga nie dotyczy tego co piszemy wewnątrz tagów [run]...[/run].

Przykład działania #1

Treść zaformatowana

\Bla
[run]ok[/run]
[run]ok[/run]

Treść źródłowa

[csv]Bla
[run]ok[/run]
[run]ok[/run]
[/csv]

Przykład działania #2

Treść zaformatowana

\\Blacośtam
ok
C/C++
#include <cstdio>
int main()
{
    printf( "Jakis tekst\n" );
    return 0;
}
opis kodu
okkoniec

Treść źródłowa

[csv extended header]\\Bla;cośtam;
[run][b]ok[/b][code src="C++"]#include <cstdio>
int main()
{
  printf("Jakis tekst\n");
  return 0;
}
[/code]
[/run];opis kodu;
[run]ok[/run];koniec;
[/csv]
Poprzedni dokument Następny dokument
Zaawansowane Odsyłacze wewnętrzne