Skrót: WP:TEX, WP:LATEX

Pomoc:Wzory

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania
Dla zaawansowanych
Te informacje dotyczą zarówno edytora wizualnego, jak i edytora wikikodu (Czym to się różni?)

Wzory matematyczne są osadzane w Wikipedii za pomocą oprogramowania LaTeX, będącego zestawem makr upraszczających korzystanie z systemu składania tekstów TeX. Wzory te wprowadza się przy wykorzystaniu LaTeX-owego modułu Math. Wewnętrzna budowa tych wzorów jest taka sama jak reszty kodu artykułu, czyli jest w postaci zwykłego tekstu wykorzystującego odpowiednie znaczniki oraz rozbudowany zestaw własnych poleceń. Wzory chemiczne osadza się za pomocą wikipediowych szablonów {{Chem}} lub {{Chem2}}, ale można też skorzystać ze wzorów matematycznych, a nawet innych modułów LaTeX-u.

Za pomocą składni Math można składać nawet skomplikowane wzory, np.

Jedynym ograniczeniem przy tworzeniu wzorów jest nasza wyobraźnia, a wzory mogą być nawet wielopiętrowe. W wypadku błędu składni pojawi się informacja, że program nie rozumie danego fragmentu kodu.

Wzory można wprowadzać na dwa sposoby:

  • w edytorze wizualnym – wszystkie fragmenty wzoru są wybierane z menu za pomocą myszki, a edytujący wpisuje ręcznie jedynie wartości (argumenty), aczkolwiek zarówno kod, jak i jego efekt są wyświetlane na ekranie, a edytujący ma możliwość wprowadzanie poprawek czy uzupełnień ręcznie,
  • w edytorze kodu – całość kodu wzoru jest wpisywana ręcznie.

Spis treści

Edytor wizualny – podstawy[edytuj | edytuj kod]

VisualEditor Insert Menu-pl.png
Aby dodać wzór, wybierz menu „Wstaw”, a następnie „Wzory matematyczne”. Pojawi się okno składające się z trzech części:
  1. górna wyświetla wygląd wzoru, automatycznie odświeżający się, kiedy piszemy wzór,
  2. środkowa zawiera kod LaTeX,
  3. w dolnej zgromadzono najczęściej wykorzystywane komendy. Są one posegregowane w grupy.

Nie musimy znać kodu LaTeX, ponieważ po kliknięciu na komendę program sam wstawia odpowiedni kod do środkowego pola i podpowiada nam, co możemy zmieniać bez psucia tego, co wstawiło się samo.

Edytor wikikodu – podstawy[edytuj | edytuj kod]

Tworzenie wzorów[edytuj | edytuj kod]

Jeżeli edytujemy artykuł w edytorze wikikodu, czyli edytorze kodu źródłowego, to aby wstawić jakikolwiek wzór, należy wpisać:

<math>zawartość kodu wzoru</math>

Znaczniki <math> i </math> nie należą do składni Math, są one typowymi znacznikami HTML, podlegając typowemu dla składni HTML zachowaniu (np. pominięcie, nadmiar lub złe położenie któregoś ze znaczników). Dopiero pomiędzy parą tych znaczników możemy mówić o składni Math.

Umieszczanie wzorów w treści artykułów[edytuj | edytuj kod]

Wzory umieszcza się w artykułach tak samo jak pozostałą treść. Jeżeli wzór będzie częścią zdania, to będzie w jego ciągu, nie przełamie się i nie zacznie od nowej linii. Wzory można umieszczać wszędzie tam, gdzie tekst, np. w przypisach, opisach grafiki, tabelach, szablonach itd. Popularną metodą jest umieszczanie wzoru od nowej linii, czyli standardowymi metodami formatowania wikitekstu: „* <math>wzór</math>” (1) lub „: <math>wzór</math>” (2), co daje efekt umieszczenia wzoru od nowej linii (z punktorem lub tylko z wcięciem):

przykład 1:

  • wzór

przykład 2:

wzór

Używanie spacji, tabulatora i entera[edytuj | edytuj kod]

Spacje, tabulatory i entery, czyli tzw. białe znaki (ang. white spaces) są w kodzie wzorów zazwyczaj ignorowane przez program, który odstępy reguluje automatycznie. Możemy jednak używać wymienionych znaków na własne potrzeby, dla poprawienia przejrzystości wyglądu samego kodu. Wpływ tych znaków na wygląd wzoru jest żaden, a tylko czasami są one potrzebne składniowo. Jeżeli trzeba skorygować we wzorze światła, robi się to za pomocą specjalnych poleceń.

Kod Efekt
<math>a^2+b^2=c^2</math>
<math> a^2 + b^2 = c^2 </math>
<math>a^2+b^2=
c^2</math>
<math>
a^2+b^2=c^2
</math>
<math>

    a^2+b^2=c^2

            </math>

Tak naprawdę stosownie tabulatora, choć technicznie całkowicie poprawne, jest bez sensu, bo w niesprzyjających warunkach może być słabo bądź w ogóle niewidoczny (za krótki), chyba że użyjemy go na początku wiersza kodu. Ale z drugiej strony stosowanie tabulatora w kodzie artykułów jest w ogóle niezalecane. Pozostaje więc do wykorzystania spacja i enter. Trzeba tu podkreślić, że nawet entery (o ile są użyte wewnątrz składni Math), nie mają wpływu ani na wygląd wzoru, ani na położenie wzoru względem reszty treści artykułu.

W niektórych sytuacjach składnia Math wymaga jednak istnienia w kodzie odstępów. Jeżeli są one wymagane, to nie ma znaczenia, czy jest to spacja, tabulator czy enter. Poniżej podano przykład trzech alternatywnych poprawnych metod zapisu oraz czwartej – wadliwej.

Kod Efekt Komentarz
<math>\mathbb{A}</math> argument poprawnie w klamrze
<math>\mathbb A</math> argument poprawnie po spacji
<math>\mathbb {A}</math> spacja lub klamra są nadmiarowe, ale nie przeszkadzają
<math>\mathbbA</math> Parser nie mógł rozpoznać
(nieznana funkcja '\mathbbA'):
{\displaystyle \mathbbA}
argument bez spacji i bez klamry

Przełamywanie długich wzorów[edytuj | edytuj kod]

Przełamywanie automatyczne[edytuj | edytuj kod]

Nawet najdłuższe wzory są wyświetlane w artykule w jednym kawałku, nie podlegając przełamywaniu pomiędzy wierszami. Jeżeli okno przeglądarki jest za wąskie, to część wzoru pozostanie niewidoczna poza ramką. Jeżeli przewidujemy, że u czytelników dany wzór może się często nie mieścić, możemy użyć prostej sztuczki polegającej na podzieleniu wzoru na części (będące wewnętrznie całościami), czyli na kilka wzorów i ułożyć obok siebie. Wtedy w zależności od wielkości okna przeglądarki wzór może się przełamywać.

Warto jednak wiedzieć, że dwa kody wzorów ułożone bezpośrednio obok siebie w wierszu (na styk) nie generują pomiędzy nimi odstępu (1). Trzeba więc o ten odstęp jakoś zadbać – albo wstawić pomiędzy kody spację (2), albo wstawić znak spacji, np. „\;”, na końcu pierwszego kodu (3):

Kod Efekt Komentarz
<math>fragment 1</math><math>fragment 2</math> źle (1)
<math>fragment 1</math> <math>fragment 2</math> dobrze (2)
<math>fragment 1\;</math><math>fragment 2</math> dobrze (3)

Jak wiadomo, w składni wikitekstu pojedyncze entery nie tworzą nowych akapitów (potrzeba do tego zazwyczaj dopiero dwóch enterów). Jednak pojedynczy enter jest w wikitekście interpretowany jako spacja, tak więc wygodniej od razu ułożyć kody wzorów w sąsiednich wierszach – wzory będą się przecież nadal wyświetlać w jednym wierszu dopóty, dopóki się tam zmieszczą.

Kod Efekt
<math>fragment 1</math>
<math>fragment 2</math>
<math>fragment 3</math>
<math>fragment 4</math>
<math>fragment 5</math>
<math>fragment 6</math>
<math>fragment 7</math>



Stały podział[edytuj | edytuj kod]

Jeżeli chcemy, aby zawsze, na stałe, wzór składał się z kilku wierszy, najwygodniej po prostu podzielić ten wzór na kilka mniejszych wzorów i zastosować podstawowe elementy składni wikitekstu.

Jest jednak pewien problem. Otóż nie wszystkie poniższe metody, choć popularne, są zalecane z powodu Zasady dostępności, która mówi: „nie należy stosować składni do czegoś, do czego ona nie służy (lub formalnie jej składnia jest błędna) – nawet jeśli coś wizualnie na danym urządzeniu prezentuje się poprawnie”.

Wzory bez wcięcia można zrobić tak:

Kod Efekt Komentarz

<math>fragment 1</math><br /> 
<math>fragment 2</math><br />
<math>fragment 3</math>



dobrze
; <math>fragment 1</math>
; <math>fragment 2</math>
; <math>fragment 3</math>
źle, użyto znaczników
„pojęcia listy definicyjnej”

Wzory z wcięciem:

Kod Efekt Komentarz
: <math>fragment 1</math> 
: <math>fragment 2</math>
: <math>fragment 3</math>
może być, na razie nic
lepszego nie wymyślono
:: <math>fragment 1</math>
:: <math>fragment 2</math>
:: <math>fragment 3</math>

Jeśli stosujemy elementy wypunktowania listy:

Kod Efekt Komentarz

* <math>fragment 1</math><br /><math>fragment 2</math><br /><math>fragment 3</math>

lub

* <math>fragment 1
</math><br /><math>fragment 2
</math><br /><math>fragment 3</math>



może być, na razie nic
lepszego nie wymyślono
* <math>fragment 1</math>
: <math>fragment 2</math>
: <math>fragment 3</math>
źle – pomieszano
różne porządki

Justowanie wzorów[edytuj | edytuj kod]

Nie ma specjalnych poleceń układania kilku wzorów względem siebie i ich justowania (do lewej, w osi, do prawej), ale można wykorzystać do tego celu któreś z poleceń do budowy tablic, np.:

Więcej informacji znajduje się w rozdziale o tablicach.

Numerowanie wzorów[edytuj | edytuj kod]

Użycie szablonu
Wzory można numerować za pomocą szablonu {{wzór}}, dodającego numer przy prawym marginesie strony, np.

: {{wzór|<math>c=\sqrt{a^2+b^2}</math>|1}}

da wynik:

                               
(1)

Można później linkować do wzoru za pomocą szablonu {{LinkWzór}}, np. {{LinkWzór|1}} stworzy link: (1)

Numeracja nie jest automatyczna. To edytujący decyduje o wyborze konkretnej liczby. Szablon umożliwia również dopisywanie prostych komentarzy.

Użycie tablicy
Do ręcznej numeracji można również wykorzystać któreś z poleceń opisanych w rozdziale o tablicach, np.:

  

Cytowanie kodu wzoru[edytuj | edytuj kod]

Aby kod wzoru razem ze znacznikami wyświetlał się czytelnikowi w postaci natywnej, wystarczy użyć znaczników <nowiki>...</nowiki>:

Kod Efekt
<math>a^2+b^2=c^2</math>
<nowiki><math>a^2+b^2=c^2</math></nowiki> <math>a^2+b^2=c^2</math>

Ewentualnie można użyć html-owych znaczników tekstu preformatowanego. Na przykład zapis „<pre><math>a^2+b^2=c^2</math></pre>” daje w wersji wikipediowej taki efekt:

<math>a^2+b^2=c^2</math>

Wyszukiwanie wzorów[edytuj | edytuj kod]

Korzystając z wikipediowej wyszukiwarki, można tworzyć zapytania uwzględniające kod artykułu. W tym celu należy rozpocząć zapytanie frazą „insource:”, a po niej podać treść zapytania ujętą w dwa ukośniki. Treść zapytania podaje się, wykorzystując podstawowe elementy składni wyrażeń regularnych, przez co pewne elementy składniowe podaje się w nieco trudniejszej postaci. Na przykład backslash to dwa backslashe, każdy z nawiasów też trzeba poprzedzić backslashem, działają powtórzenia, kwantyfikatory itp., ale już dowolnej cyfry nie można podać jako „\d”, tylko trzeba posiłkować się „[0-9]”. Na przykład:

Szukany ciąg Zapytanie
\frac {trzy dowolne cyfry} insource:/\\frac \{[0-9]{3}\}/
</math>ewentualne spacje<math> insource:/\<\/math> *\<math>/

Więcej informacji o wikipediowej implementacji wyrażeń regularnych można znaleźć w tym artykule, aczkolwiek nie wszystko będzie tutaj działać.


Uwaga! W dalszej części artykułu w przykładach kodu, znaczniki <math> i </math> zostały najczęściej pominięte.

Kolory[edytuj | edytuj kod]

Aby znakom wzoru nadać kolor, wystarczy polecenie „\color” z parametrem wskazującym, jaki to kolor.

  • Parametrem jest spora grupa nazw kolorów w języku angielskim. Nie ma sensu wymieniać wszystkich. Są oczywiście White, Yellow, Pink, Red, Green, Blue, Brown, Black...
  • Wielkość liter parametru nieistotna.
  • Spacje, jak zwykle, ignorowane.
{ \color { parametr } reszta kodu }
 = 
{\color{parametr}reszta kodu}

Parametr wraz z otaczającą go klamrą są niezbędne. Druga, zewnętrzna klamra, może nie być użyta, ale wtedy kolor zostanie nadany aż do końca wzoru, do znacznika „</math>”.

Kod Efekt Komentarz
a+1= {\color {red} b+2} =c+3 obie klamry
a+1=\color {red} b+2=c+3 bez zewnętrznej klamry

Poza kodem wzorów można zastosować składnię HTML:

  • dla znaków np. „<span style="color: red">...</span>”,
  • dla tła np. „<span style="background: gray">...</span>”.

Style czcionki[edytuj | edytuj kod]

Przegląd stylów[edytuj | edytuj kod]

W LaTeX-u istnieje wiele zdefiniowanych stylów czcionki (ang. font style) i jeszcze więcej fontów mogących je obsługiwać. W składni wiki działają tylko niektóre style, każdy obsługiwany tylko przez jeden font niezależnie od przeglądarki.

Podstawowy sposób wyświetlania wzorów to czcionka kursywna dla zmiennych (litery), dla pozostałych znaków zwykła antykwa. Litery w zmiennych zazwyczaj lekko rozsunięte (choć dla niektórych liter bywa odwrotnie). Rozsuwane są też światła przy podstawowych znakach działań matematycznych: plus, dywiz jako minus itd.

Dodatkowe style czcionki wpływają na krój czcionki (wygląd znaków), w tym także na znaki podstawowych działań (plus, dywiz jako minus itd.), i w odróżnieniu od stylu domyślnego zazwyczaj mają standardowe odstępy pomiędzy wszystkimi znakami (niektóre tylko dopasowują plus, dywiz jako minus itd.).

Zestawienie poleceń
Styl Efekt Polecenia
seria \math... seria \text... \rm (itp.) różne inne
Roman \mathrm \textrm \rm \hbox, \mbox, \text,
\operatorname
Italic Roman \mathit \textit \it \mathop
Bold Roman \mathbf \textbf \bf \bold
Sans serif \mathsf \textsf
Typewriter \mathtt \texttt
Script \mathcal \cal
Fraktur \mathfrak
Double-struck \mathbb \Bbb
  • Styl double-struck („\mathbb”) ma wpływ tylko na wielkie litery, pozostawiając resztę znaków w postaci antykwy.
  • Wyjaśnienie nazw niektórych poleceń: Bold Roman (bf = boldface), Double-struck (bb = blackboard bold), Script (cal = calligraphic).
Właściwości poleceń
Polecenia Znaki spoza ASCII Spacje Wyświetlanie innych poleceń Proste działania
\mathrm, \rm,
\mathit, \it (itd.)
Parser nie mógł... ignoruje jako wzór, np.






\operatorname Parser nie mógł... ignoruje, na krańcach
dodaje własne
jako wzór, np.
\mathop Parser nie mógł... ignoruje, na krańcach
dodaje własne
jako wzór, np.
\textrm,
\textit (itd.)
Parser nie mógł... ignoruje jako kod, np.






\text tak wyświetla Parser nie mógł... Parser...

Część stylów jest zaszłością historyczną, są niezalecane, pozostawione dla kompatybilności wstecznej, kompatybilności z kodem spoza Wikipedii lub do szczególnych, rzadkich zastosowań. Najczęściej stosowane to:

  • seria „\mathrm”, „\mathit” itd... uniwersalna, dla większości zastosowań, szczególnie bardziej skomplikowanych,
  • polecenie „\text” dla prostych fragmentów (głównie dla zamiany liter z kursywy na antykwę), fragmentów ze spacjami oraz znakami spoza ASCII (w tym polskimi).
  • polecenie „\operatorname” dla nazw poleceń niemających własnego polecenia w kodzie.

Składnia[edytuj | edytuj kod]

Kod Efekt
\mathrm{abc}
\mathrm {abc}
\mathrm {a b c }
\mathrm {a\;b\;c}
\mathbf abc
\mathbf {abc}

 
  1. Wyświetlany tekst powinien być w klamrze, przy czym spacje pomiędzy poleceniem a klamrą otwierającą są ignorowane, np. „\mathrm {abc}” = „\mathrm{abc}”,
  2. Spacje wewnątrz klamry są ignorowane, np. „\mathrm{ a b c }” = „\mathrm{abc}”,
  3. Klamra nie jest potrzebna, jeśli po poleceniu stylu jest inne polecenie. Wtedy to drugie polecenie jest „jakby klamrą”. Np. „\mathrm\sqrt” nada styl wszystkiemu, co jest opisane w tym pierwiastku, a „\mathrm\frac” nada styl całemu ułamkowi niezależnie od jego skomplikowania.
  4. Aby wyświetlić spacje (lub inne odstępy), dla większości stylów trzeba użyć specjalnych poleceń, np. „\mathrm{a\;b\;c}”. Tylko „\operatorname” i „\text” wyświetlają natywne spacje.
  5. Można też użyć zapisu bez klamry (konieczna spacja), ale wtedy zmodyfikowany zostanie tylko pierwszy znak, np. w zapisie „\mathrm abc” zostanie zmodyfikowana pierwsza litera, czyli „a”.
  6. Jedynie polecenie „\text" (a więc także „\hbox" i „\mbox") zawsze wymaga klamry.

Polecenia z serii \math...[edytuj | edytuj kod]

To jest podstawowa i zalecana seria poleceń.

  • Zawierają wszystkie style (rm, it, bf, sf, tt, cal, frak, bb).
  • Można nimi obejmować dowolny fragment kodu (aczkolwiek nie wpływają na działania, tylko na argumenty, a do wnętrza tablic nie sięgają, trzeba każdą komórkę oznaczać oddzielnie).
  • Nic się nie zmienia w zasadach tworzenia kodu („białe znaki” ignorowane, znaki spoza ASCII nieakceptowane).

Polecenie \bold[edytuj | edytuj kod]

Jest to polecenie identyczne z „\mathbf”.

Polecenie \Bbb[edytuj | edytuj kod]

Polecenie zaczyna się nietypowo, bo wielką literą. Wyświetla znaki w stylu Double-struck. Jest to bardzo przestarzałe polecenie i należy je zmieniać na identyczny odpowiednik „\mathbb”.

Polecenie \operatorname[edytuj | edytuj kod]

Działa niemal identycznie z „\math”, ale dywiz jest interpretowany jako dywiz (a nie znak minusa z odstępami). Służy do podawania nazw poleceń antykwą, a nie kursywą (a polecenia te mogą zawierać w nazwie właśnie dywiz). Przeznaczony zwłaszcza dla poleceń niemających własnych nazw w składni Math, stąd nazwa „operatorname”. Z tego też powodu tworzy odstępy przed i po frazie ujętej tym poleceniem, np. „a\operatorname{xyz}b” daje , czego inne polecenia nie robią, wymagając dodatkowych poleceń spacji. Podobnie działa polecenie „\mathop”, też tworząc spacje, ale wyświetlając kursywę.

Polecenia z serii \text...[edytuj | edytuj kod]

  • Są to polecenia: „\textrm”, „\textit”, „\textbf”, „\textsf” i „\texttt”.
  • Nie należy do nich polecenie „\text”.
  • W odróżnieniu od serii „\math...”:
    • nie ma wersji dla: cal, frak, bb,
    • fragmenty kodu zawierające polecenia wyświetlane są w nietypowy sposób ukazujący składnię,
    • proste działania matematyczne (dodawanie, odejmowanie itp.) są nieinterpretowane, są wyświetlane dosłownie jako tekst: w szczególności nie pojawiają się wokół ich zwiększone odstępy, a dywiz pozostaje dywizem (zamiast stać się nieco dłuższym minusem).
    • mogą być wykorzystywane do:
      • przedstawiania wzorów w postaci ich składni,
      • podawania nazw z dywizem,
      • wpisywania liczb z separatorem dziesiętnym w postaci przecinka bez odstępu, aczkolwiek ten ostatni problem można też zrealizować prostszą metodą „{,}” (problem szerzej opisany w rozdziale: Przecinek jako separator dziesiętny).
\textrm{a^b}
\mathrm{a^b}
\textrm{a\,\ \;b}
\mathrm{a\,\ \;b}
\textrm{1-2+3}
\mathrm{1-2+3}
\textrm{1,2x}
\mathrm{1,2x}
\textrm{1:2}
\mathrm{1:2}
\textrm{pre-norm}
\mathrm{pre-norm}
\textrm{\alpha}
\mathrm{alpha}







Polecenie \text[edytuj | edytuj kod]

  • Jako jedyne przyjmuje wszystkie znaki spoza ASCII, w tym polskie znaki, grekę, cyrylicę itd... oraz znaki zaawansowanej typografii jak półpauzę czy rozmaite formy cudzysłowu. Wszystkie znaki spoza ASCII są jednak wyświetlane inną czcionką, przez co należy ich unikać, o ile dla danych znaków istnieją stosowne polecenia w składni Math. Jeśli nie, warto rozważyć użycie języka „polskawego” (czyli znaków łacińskich zamiast polskich znaków diakrytycznych), lub o ile to możliwe, wyrzucenie takich znaków poza wzór, czyli do zwykłej treści artykułu (np.  zł, zamiast ).
  • ASCII:
    • akceptowane: !'()*+,-./:;=?[]`
      • apostrof prosty wyświetlany jest jako apostrof typograficzny (górny przecinek), podczas gdy normalnie we wzorze jest to znak prim
    • nieakceptowane: "#$%&<>@\^_{|}~
      • a więc nie można wstawiać frakcji (indeksów), ani poleceń działań (np. \frac), ani poleceń znaków (np. \{ czy \alpha)
  • Jako jedyne wyświetla spacje, ale:
    • wewnątrz wyrażenia wyświetla wszystkie spacje, nawet powtórzone wiele razy,
    • na początku i końcu wyrażenia wyświetla tylko jedną, nawet jeśli w kodzie jest ich więcej, co ilustruje poniższy przykład:.
abc\text{    x    y    }def
  • Można używać tylko pomiędzy innymi poleceniami składni Math, np. jako argumenty lub komentarze. Na przykład akceptowane są znaki nawiasu okrągłego, bo są wprowadzane natywnie, ale już znak nawiasu klamrowego jest poleceniem „\{”, co zakończy się wyświetleniem błędu.
  • Proste działania matematyczne nie są interpretowane: znak plusa czy dywizu są traktowane jako tekst.
  • W odróżnieniu od poprzednich poleceń zawsze trzeba użyć klamry (nawet dla jednego znaku).
  • Identycznie z tym poleceniem działają we wzorach polecenia „\hbox” i „\mbox” (ich specyfika ma znaczenie poza wzorami, co nas nie interesuje).

Na uwagę zwraca fakt, że poleceniem tym można wyświetlić także tzw. spacje wiodące i kończące (ang. leading i trailing spaces), przez co można tworzyć odstępy pomiędzy innymi elementami wzoru. Podobnie zachowuje się polecenie „\operatorname”, dając jednak mniejszy odstęp:

abc\mathrm{def}ghi
abc\mathrm{ def }ghi
abc\operatorname{def}ghi
abc\operatorname{ def }ghi
abc\text{def}ghi
abc\text{ def }ghi

Polecenia \rm, \it, \bf, \cal[edytuj | edytuj kod]

Są to polecenia przestarzałe (ang. deprecated) i o odmiennej składni od reszty. Należy używać ich odpowiedników: „\mathrm”, „\mathit”, „\mathbf” i „\mathcal”, od których różnią się jedynie składnią:

  • jeśli chcemy zmienić fragment tekstu, klamrą zaznaczamy również polecenie, np. „{\rm ...}”, podczas gdy „mathrm {...}”,
  • użycie bez klamry działa jak przełącznik, wpływa na resztę wzoru po prawej stronie (chyba że nastąpi zmiana stylu kolejnym poleceniem).

Problem liter greckich[edytuj | edytuj kod]

  • Liter greckich nie wstawia się natywnie, tylko odpowiednimi poleceniami, np. „\Alpha”, „\alpha”, „\Beta”, „\beta” itd...
  • Małe litery greckie nie reagują na polecenia stylu czcionki. Style mogą je obejmować, ale wygląd pozostanie bez zmian, czyli w kursywie.
  • Wielkie litery greckie są domyślnie w antykwie, czyli proste.
    • Domyślnie (bez stylu) wyglądają tak, jak w stylu Roman (rm).
    • Style Script (cal), Fraktur (frac) i Double-struck (bb) również nic nie zmieniają.
    • Style Italic (it), Bold (bf), Sans serif (sf) i Typewriter (tt) działają, ale tylko na niektóre wielkie litery greckie. Problem polega na tym, że niektóre wielkie litery greckie wyglądają identycznie z literami łacińskimi (np. polecenie „\Alpha” daje identyczny efekt z natywnie wstawioną literą „A”). Style nie działają na żadne z poleceń wielkich liter greckich o wyglądzie „łacińskim”. Wygląda na to, że polecenia tych liter są mapowane do zwykłych znaków z alfabetu łacińskiego, stąd jeżeli trzeba takie litery ostylować, to trzeba to wykonać na zwykłych znakach łacińskich. Natomiast polecenia liter greckich o greckim wyglądzie można modyfikować wymienionymi stylami, jak poniżej:

Inne spojrzenie:

brak stylu, „\mathrm”, „\mathit”, „\mathbf”, „\mathsf”, „\mathtt”, „\mathcal”, „\mathfrac”, „\mathbb”
brak stylu, „\mathrm”, „\mathcal”, „\mathfrac”, „\mathbb”
„\mathit”
„\mathbf”
„\mathsf”
„\mathtt”

Uwaga: kursywienie wielkich liter greckich jest bardzo złą praktyką typograficzną. Należy tego unikać.

Na marginesie można dodać, że opisany problem jest podobny do wyświetlania polskich znaków poleceniem „\text”.

Style tekstu i zmiana wielkości znaków[edytuj | edytuj kod]

Polecenie \displaystyle[edytuj | edytuj kod]

Polecenie „\displaystyle” jest stylem domyślnym i tkwi niewidoczne na początku każdego wzoru utworzonego w składni Math. Można się o tym przekonać w nietypowy sposób, szukając frazy „displaystyle" w artykule z wzorami. Program będzie znajdował każdą taką frazę, choć jej nie podświetli. Jednak nie każdy element wzoru musi być w stylu domyślnym, program czasami sam przechodzi z niego do innego, a wtedy można przywrócić styl domyślny miejscowo (o ile jest ku temu wyraźny powód), jak na poniższych przykładach:

Kod Efekt
a^{2x}
a^{\displaystyle 2x}

Powyższy przykład jest nieco abstrakcyjny, bo raczej nie ma powodu do przywracania nominalnej wielkości znakom we frakcji górnej, ale pokazuje mechanizm działania w prostym wzorze.

Poniżej limes zatraca swoją domyślną budowę po umieszczeniu w mianowniku ułamka (przechodzi wtedy automatycznie z „\displaystyle” do „\textstyle”) i aby to odwrócić, trzeba znów nadać styl domyślny.

Kod Efekt
\frac{1}{\lim_{n\to\infty}}
\frac{1}{\displaystyle\lim_{n\to\infty}}

Polecenia \textstyle, \scriptstyle, \scriptscriptstyle[edytuj | edytuj kod]

Edytujący ma do dyspozycji kilka stylów dodatkowych.

  • „\textstyle” – działa tylko na niektóre elementy wzoru, pomniejszając lub zmieniając ich ułożenie. Służy do osadzania wzorów wewnątrz tekstu akapitowego tak, aby nie wyróżniały się nadmiernie na tle reszty akapitu.
  • „\scriptstyle” (i jego mocniejsza wersja „\scriptscriptstyle”) – robi to samo co „\textstyle”, ale dodatkowo pomniejsza proporcjonalnie wszystkie składniki. Zasadność użycia tego polecenia istniała na Wikipedii w okresie, gdy wyświetlanie wzorów było niedopracowane i wzory w otoczeniu zwykłego tekstu były za duże. Obecnie polecenie to ma bardzo małe zastosowanie (np. do symbolicznego przedstawiania bardzo dużych wzorów), ponieważ wyświetlane w ten sposób wzory są słabo czytelne.

Polecenia te działają od swojego miejsca do końca wzoru. Jeżeli działanie polecenia ma być ograniczone, należy zakres działania objąć klamrą.

Kod Efekt
aaa + \scriptstyle a+\frac12 + bbb
aaa + {\scriptstyle a+\frac12} + bbb

Porównanie dla pojedynczych poleceń:

Elementy kodu Efekt
\displaystyle
(domyślne)
\textstyle
\scriptstyle
\scriptscriptstyle

Porównanie dla dużych wzorów:

\displaystyle (domyślne) \textstyle \scriptstyle \scriptscriptstyle

W przypadku niektórych wyrażeń istnieją własne dla nich, alternatywne metody zmniejszania. Poniżej w drugim wierszu skorzystano z polecenia „\tfrac” służącego do tworzenia zmniejszonych ułamków, które daje taki sam efekt jak zwykłe „\frac” zmniejszone poleceniem „\textstyle”.

Kod Efekt Metoda
Zwykły tekst <math>a+\frac12</math> reszta akapitu. Zwykły tekst reszta akapitu.
Zwykły tekst <math>a+\tfrac12</math> reszta akapitu. Zwykły tekst reszta akapitu. „\tfrac” zamiast „\frac”
Zwykły tekst <math>\textstyle a+\frac12</math> reszta akapitu. Zwykły tekst reszta akapitu. „\textstyle”
Zwykły tekst <math>\scriptstyle a+\frac12</math> reszta akapitu. Zwykły tekst reszta akapitu. „\scriptstyle”

Ograniczenia stylów tekstu[edytuj | edytuj kod]

  • Automatyczne przejście na styl „textstyle” odbywa się w tablicach typu „array”, „cases” i całej serii „matrix”, a na styl „scriptstyle” w tablicy „smallmatrix”. Tylko tablice „align” i „alignat” zachowują całość w „displaystyle” (szerzej opisane w rozdziale o tablicach).
  • Ułamki piętrowe wielokrotnie zagnieżdżone, jak również ułamki piętrowe I poziomu (ale w wymienionych powyżej tablicach), jeżeli są tworzone standardową metodą (polecenie „\frac”), to ulegają automatycznemu pomniejszeniu, na które polecenia stylów tekstu nie działają. Wtedy, aby odtworzyć nominalną wielkość ułamków, należy posłużyć się poleceniem „\dfrac” (szerzej opisane w rozdziale o ułamkach).

Powiększanie całego wzoru w HTML[edytuj | edytuj kod]

Poniższe zestawienie zawiera metody zmiany wielkości całych wzorów stosowane przy użyciu składni HTML. Są one spotykane w wikipediowych artykułach, ale w przeważającej większości przypadków ich użycie jest zbędne, jest raczej efektem nadmiernej kreatywności osoby redagującej artykuł.

<small><math>...</math></small>
<math>...</math>
<big><math>...</math></big>
<font size="1"><math>...</math></font>
<font size="2"><math>...</math></font>
<font size="3"><math>...</math></font>
<math>...</math>
<font size="4"><math>...</math></font>
<font size="5"><math>...</math></font>
<font size="6"><math>...</math></font>
<font size="7"><math>...</math></font>

Powiększone odpowiedniki niektórych znaków[edytuj | edytuj kod]

Istnieje również niewielka grupa poleceń znaków specjalnych, które mają swoje powiększone odpowiedniki:

\cap \bigcap
\circ \bigcirc
\cup \bigcup
\odot \bigodot
\oplus \bigoplus
\otimes \bigotimes
\sqcup \bigsqcup
 
\star \bigstar
\triangledown \bigtriangledown
\bigtriangleup
\uplus \biguplus
\vee \bigvee
\wedge \bigwedge

Odstępy (spacje)[edytuj | edytuj kod]

Odstępy poziome[edytuj | edytuj kod]

Jak wspomniano wcześniej, użycie w kodzie znaków spacji, tabulatora czy entera ma wpływ tylko na wygląd kodu (co oczywiste), natomiast na wygląd wzoru, czyli sposób jego wyświetlania – nie ma, ponieważ program sam ustala światła. Zazwyczaj te światła są poprawne, jednak czasami będziemy chcieli poprawić czytelność wyglądu wyświetlanego wzoru (nie kodu), zwiększając odstępy pomiędzy różnymi elementami, a czasami nawet zmniejszając. Wykonuje się to szeregiem poleceń spacji o różnej długości, w tym jednej spacji o wartości ujemnej.

Co prawda istnieje jedno specjalne polecenie „\text”, którego argumentami mogą być m.in. spacje, nawet wielokrotne, ale nie w każdym miejscu wzoru da się go użyć, a poza tym posługiwanie się poleceniami spacji (zamiast spacji wstawianej natywnie) jest wygodniejsze nie tylko dlatego, że jest ich wiele rozmiarów, ale również dlatego, że trudniej o pomyłkę czy dana spacja natywna jest wstawiona dla czytelności kodu, czy też być może będzie widziana we wzorze.

W wikipediowej wersji składni Math działają tylko niektóre polecenia tworzenia specjalnych odstępów spacjami:

  • „\!” – stały odstęp ujemny −3/18 firetu (ang. small negative space, negative thin space)
  • „\,” – stały odstęp 3/18 firetu (ang. small space, thin space)
  • „\;” – stały odstęp 5/18 firetu (ang. large space, thick space)
  • „\ ” – (backslash + spacja) spacja zwykła (ang. text space)
  • „~” – (znak tyldy) spacja niełamiąca (ang. non-breaking space)
  • „\quad” – stały odstęp równy 1 firetowi (ang. quad space)
  • „\qquad” – stały odstęp równy 2 firetom (ang. double quad space)

Z popularnych spacji na Wikipedii nie jest zaimplementowana średnia spacja (4/18), czyli „\:” (backslash + dwukropek).

Spacja zwykła (a więc i niełamiąca) to 4,5/18 firetu. Przedstawmy zatem definicyjny przelicznik „1/18” w prostszych ułamkach:

„\qquad” „\quad” „\;” „\ ” „~” „\,” „\!”
36/18 18/18 5/18 4,5/18 3/18 –3/18
2/1 1/1 1/3,6 1/4 1/6 –1/6
2 1 0,2(7) 0,25 0,1(6) –0,1(6)

Na uwagę zwraca polecenie spacji zwykłej, które wbrew zasadzie, że tzw. białe znaki nie mają znaczenia, zawiera spację znaczącą. W kodzie wzorów najczęściej stosuje się spację 5/18, czyli backslash ze średnikiem. Spacja ta jest minimalnie szersza od zwykłej, ale niewątpliwie polecenie „\;” jest lepiej widoczne od „\ ”, czyli backslasha ze spacją. Jeżeli w kodzie wzoru widać samotny lewy ukośnik „ze światłem po”, to najprawdopodobniej jest to polecenie spacji zwykłej i niektórzy edytujący przerabiają je na polecenie spacji 5/18 (ze średnikiem) w celu poprawy czytelności kodu. Czasami nawet trzeba to zrobić, jak w poniższym przykładzie.

Przykład przedstawia fragment kodu wzoru zawierającego tablice (ang. matrix), który często dla przejrzystości jest zapisywany w kilku wierszach. W drugim wierszu bezrefleksyjnie umieszczono polecenie spacji zwykłej jako ostatnie w linijce kodu, przez co można je łatwo zepsuć przez nieuwagę (usuwając sam znak spacji) lub też może być ono zepsute botem lub innym skryptem sprzątającym, które traktują znaki spacji na końcach wierszy jak niepotrzebny balast. W efekcie backslash pozbawiony spacji będzie się stykał z enterem. Co prawda „białe znaki” są traktowane przez program teoretycznie tak samo, ale nie w tym przypadku. Polecenie spacji zwykłej nie zadziała, a zamiast wzoru powstanie komunikat o błędzie. Użycie spacji 5/18 likwiduje to zagrożenie:

Kod Efekt
z poleceniem spacji zwykłej z poleceniem spacji 5/18
\begin{bmatrix}
1 \end{bmatrix}, \spacja
I_2 = \begin{bmatrix}
1 & 0 \\
0 & 1 \end{bmatrix}
\begin{bmatrix}
1 \end{bmatrix}, \;
I_2 = \begin{bmatrix}
1 & 0 \\
0 & 1 \end{bmatrix}

Z poleceniami „\quad” i „\qquad” jest problem, ponieważ są to polecenia zakończone literą. Jeżeli bezpośrednio po takim poleceniu postawimy znak nieliterowy (np. backslash, klamrę albo cyfrę), to problemu nie będzie. Jeżeli jednak bezpośrednio po tym poleceniu będziemy chcieli wstawić np. literę oznaczającą zmienną, to program wyświetli komunikat o błędzie składni. W takiej sytuacji konieczne jest postawienie spacji po takim poleceniu (chyba że to polecenie jest ostatnie w wierszu, wtedy enter będzie robił za separator składniowy).

Kod Efekt
bez spacji po ze spacją po bez spacji po ze spacją po
a\!b a\! b tak samo
a\,b a\, b tak samo
a\;b a\; b tak samo
a\ b a\ b tak samo
a~b a~ b tak samo
a\quadb a\quad b Parser nie mógł rozpoznać...
a\qquadb a\qquad b Parser nie mógł rozpoznać...
10 znaków spacji to:
\!
\,
\;
\  (+spacja)
~
\quad
\qquad będzie 2 razy szerzej
Porównanie wyglądu znaków spacji we wzorach w różnych stylach czcionki (spojrzenie I)
Roman Italic Bold Sans serif Typewriter Script Fraktur Double-struck
\!
\,
\;
\  (+spacja)
~
\quad
\qquad
Porównanie wyglądu znaków spacji we wzorach w różnych stylach czcionki (spojrzenie II – odwrócone)
\! \, \; \  (+spacja) ~ \quad \qquad
Roman
Italic
Bold
Sans serif
Typewriter
Script
Fraktur
Double-struck

Odstępy pionowe[edytuj | edytuj kod]

W LaTeX-u istnieje szereg poleceń zarówno regulowania świateł pionowych, jak i metod łamania wiersza. W wikipediowej wersji Math takie możliwości występują tylko jako wewnętrzne parametry w poleceniach tablic.

Przecinek jako separator dziesiętny[edytuj | edytuj kod]

Jeśli zechcemy w zwykły sposób zapisać liczbę w ułamku dziesiętnym, to po przecinku pojawi się niewielki odstęp – np. 22,20 daje . Jest to związane z tym, że w krajach anglosaskich w tym miejscu stawia się kropkę, a przecinek służy do oddzielania grup cyfr (np. w liczbie milion: 2,000,000).

Aby tego uniknąć, wystarczy otoczyć przecinek nawiasem klamrowym – 22{,}20, co daje .

Zjawisko jest zresztą szersze.

  • Każda kropka obok cyfry – niezależnie przed, za czy pomiędzy cyframi, jest do tej cyfry przyciągana.
  • Przecinki i średniki zachowują się neutralnie, tzn. są lekko odpychane.
  • Dwukropek rozpycha wszystkie znaki (jest rozumiany jako działanie matematyczne dzielenia), ale można użyć polecenia „\colon”, a wtedy dwukropek zachowa się jak przecinek lub średnik, np.:
Kod Efekt Wygląd
f : A \to B gorzej
f \colon A \to B lepiej

Ujęcie w klamry każdego z tych znaków przyciąga go do sąsiadów.

Kod Efekt Kod Efekt
 1.1   −   1{.}1   − 
1.a 1{.}a
a.1 a{.}1
a.a ok a{.}a
1,1 ok 1{,}1
1,a 1{,}a
a,1 a{,}1
a,a a{,}a
1;1 ok 1{;}1
1;a 1{;}a
a;1 a{;}1
a;a a{;}a
1:1 + 1{:}1
1:a 1{:}a
a:1 a{:}1
a:a a{:}a

„Przecinkowy” problem można rozwiązać również za pomocą stylu czcionki, np. wyrażenie „dwa i pół centymetra” można w całości objąć jednym poleceniem stylu, przez co osiągniemy jednocześnie aż trzy rzeczy: przecinek bez odstępu, spację wpisaną natywnie (a nie poleceniem spacji) oraz symbol jednostki antykwą (a nie domyślną kursywą):

Kod Efekt
2,5 cm
\text{2,5 cm}

Jednak w przypadku centymetrów kwadratowych nie będzie już tak prosto, bo dwójka we frakcji górnej jest działaniem matematycznym, a to nie działa w poleceniu „\text” i trzeba skorzystać z innych rozwiązań, np. wystawienia dwójki we frakcji górnej poza działanie polecenia „\text”, albo z polecenia „\mathrm”, które z kolei nie wyświetla spacji (szczegóły omówione w rozdziale o stylach czcionki), więc trzeba wstawić spację poleceniem „\ ” i zrobić korektę przecinka:

Kod Efekt
\text{2,5 cm}^2
\text{2,5 }\mathrm{cm^2}
\mathrm{2{,}5\ cm^2}
2{,}5\ \mathrm{cm}^2

Kropki[edytuj | edytuj kod]

Wielokropek

Kod Efekt Komentarz
zalecane niezalecane
\ldots \dotsc
\dotso
na dolnej linii pisma
(wspólnie z kropką, przecinkiem itd.)
\cdots \dotsb
\dotsi
\dotsm
na średniej linii pisma
(wspólnie z plusem, minusem itp.)
\dots
na dolnej lub średniej linii pisma
(kontekstowo)
\vdots
\ddots
  • W składni Math na Wikipedii wszystkie poziome wielokropki wyglądają identycznie i mają identyczne światła. Postawione obok siebie tworzą równą linię.
  • Niezalecane polecenia wielokropków mają znaczenie poza Wikipedią, gdzie nieznacznie różnią się światłami względem innych znaków interpunkcyjnych.
  • Polecenie „\dots” dobiera jedno z dwóch położeń automatycznie, w zależności od sąsiednich znaków.
  • Wielokropki różnią się interlinią, w szczególności pochyłe dają trochę większy odstęp od pionowych:
    .
  • 3 zwykłe kropki mają zazwyczaj identyczny wygląd ze znakami wielokropków, ale nie zachowują poprawnych świateł względem innych znaków, np.:

użyte 3 kropki

użyte „\ldots”
  • Czasami jednak 3 zwykłe kropki nie przybierają nawet typograficznej postaci wielokropka:
użyte 3 kropki
użyte „\ldots”


Przykłady

Litery, symbole, znaki[edytuj | edytuj kod]

Znaki specjalne (zabronione)[edytuj | edytuj kod]

Niektóre znaki, mimo iż zostały wstawione do kodu, nie są wyświetlane we wzorze. Są to tzw. znaki specjalne, czyli składniowe, Żeby je wypisać, trzeba użyć kodów:

Znak Używany do Kod Efekt
{ otwiera grupę \{
} zamyka grupę \}
^ frakcja górna, np. \wedge
_ frakcja dolna, np. \_
\ zaczyna polecenia: instrukcje i symbole specjalne \backslash
% wprowadza komentarz \%
~ spacja niełamiąca \sim
& rozdziela komórki w tablicach \&
$ stosowane w niewidocznej części kodu \$
# stosowane w niewidocznej części kodu \#
spacja w kodzie spacje są ignorowane \znak spacji

Skrypt parsujący pozwala dla wygody pominąć \ przed % i $.

Litery greckie[edytuj | edytuj kod]

Wstawienie symbolu wykonuje się poprzez poprzedzenie jego nazwy odwróconym ukośnikiem. Można też bezpośrednio w tekście (bez Math) używać encji HTML.
Uwaga 1: zarówno w LaTeX-u, jaki w HTML-u, rozróżniane są wielkie i małe litery.
Uwaga 2: w LaTeX-u niektóre małe litery greckie mają swoje warianty typograficzne.

Zapis Math Encje HTML
kod efekt kod efekt kod efekt kod efekt kod efekt
\Alpha
\Beta
\Gamma
\Delta
\Epsilon
\Zeta
\Eta
\Theta
\Iota
\Kappa
\Lambda
\Mu
\Nu
\Xi
\Omicron
\Pi
\Rho
\Sigma
\Tau
\Upsilon
\Phi
\Chi
\Psi
\Omega























\alpha
\beta
\gamma
\delta
\epsilon
\zeta
\eta
\theta
\iota
\kappa
\lambda
\mu
\nu
\xi
\omicron
\pi
\rho
\sigma
\tau
\upsilon
\phi
\chi
\psi
\omega



























\varepsilon


\vartheta

\varkappa





\varpi
\varrho
\varsigma


\varphi


























&Alpha;
&Beta;
&Gamma;
&Delta;
&Epsilon;
&Zeta;
&Eta;
&Theta;
&Iota;
&Kappa;
&Lambda;
&Mu;
&Nu;
&Xi;
&Omicron;
&Pi;
&Rho;
&Sigma;
&Tau;
&Upsilon;
&Phi;
&Chi;
&Psi;
&Omega;
Α
Β
Γ
Δ
Ε
Ζ
Η
Θ
Ι
Κ
Λ
Μ
Ν
Ξ
Ο
Π
Ρ
Σ
Τ
Υ
Φ
Χ
Ψ
Ω
&alpha;
&beta;
&gamma;
&delta;
&epsilon;
&zeta;
&eta;
&theta;
&iota;
&kappa;
&lambda;
&mu;
&nu;
&xi;
&omicron;
&pi;
&rho;
&sigma;
&tau;
&upsilon;
&phi;
&chi;
&psi;
&omega;
α
β
γ
δ
ε
ζ
η
θ
ι
κ
λ
μ
ν
ξ
ο
π
ρ
σ
τ
υ
φ
χ
ψ
ω

Symbole kolorów karcianych[edytuj | edytuj kod]

Przydatne np. do artykułów o brydżu. Bezpośrednio w tekście (bez Math) można używać encji HTML. Jednak przy mniejszych rozmiarach tekstu encje są gorszej jakości, a część przeglądarek nie ma odpowiednich fontów, lub też w drugą stronę – wyświetla je w kolorach i pocieniowane.

Zapis Math Encje HTML
kod efekt kod efekt
\spadesuit
\heartsuit
\diamondsuit
\clubsuit



&spades;
&hearts;
&diams;
&clubs;



Znaki niemające swoich poleceń[edytuj | edytuj kod]

  • Promil. Tylko symbol procenta można łatwo wpisać. Symbol promila nie jest zaimplementowany, ale można zbudować podobne do niego wyrażenie, choć o trochę innym wyglądzie. Jeżeli oba znaki występują we wzorze, wypada również zwykły procent zapisać tą mniej wygodną metodą dla zachowania spójności wyglądu.
Kod Efekt
100\%
100^0\!\!/\!_0
100^0\!\!/\!_{00}


  • Asterysk (asterisk). W normalnym tekście (czyli w większości fontów) znak ten jest sporej wielkości, ale leży dość wysoko. W składni Math ma taką samą wielkość, ale leży na średniej linii pisma (czyli tak jak w foncie Symbol). Zastosowanie frakcji górnej spowoduje przeniesienie, ale i pomniejszenie znaku. Aby zachować wygląd z tekstu, należy we wzorze również wpisać asterysk jako tekst.
Kod Efekt
A*, A^*, A\text{*}

Na marginesie można dodać, że istnieje co prawda polecenie „\ast”, ale w praktyce niczym się nie różni od natywnego asterysku. Jedyna drobna różnica dotyczy sposobu pogrubiania (na znak asterysku zadziała już „\mathbf”, na polecenie „\ast” dopiero „\boldsymbol”).

  • Symbol stopnia. Znak ten buduje się poleceniem „\circ”, które daje znak leżący na średniej linii pisma. Dla symbolu stopnia trzeba więc użyć frakcji górnej, np. „45^\circ” daje . W przypadku np. stopnia Celsjusza trzeba po zbudowanym stopniu zastosować spację ujemną, np.: „100\ ^\circ\!\text{C}” daje . Przy wstawieniu symbolu stopnia bez wartości (np. samej jednostki miary) mogą pojawić się problemy z poprawnym światłem, a wtedy trzeba dodatkowo użyć pustej klamry przed poleceniem frakcji górnej, np. „\mathrm{[m \cdot {}^\circ\!C]}”, co daje .

Nawiasy i inne separatory matematyczne[edytuj | edytuj kod]

Wpisywanie[edytuj | edytuj kod]

Separatory wstawiane ręcznie
Niektóre znaki, jak np. nawiasu zwykłego i kwadratowego, wpisuje się normalnie, ale już znaki klamry (nawiasy sześcienne) nie, bo są elementem składniowym, dlatego aby były widoczne jako treść wzoru, wpisuje się je poleceniami „\{” i „\}”. Czasami może się zdarzyć, że i znaki nawiasu kwadratowego będą składniowe, ale w rzadkich sytuacjach i konkretnych miejscach, przez co nie powinny sprawić problemu edytującemu (np. podając stopień pierwiastka, używa się nawiasu kwadratowego).

Kod Efekt
( ) [ ] \{ \}
\lfloor \rfloor \lceil \rceil \langle \rangle
/ \backslash | \|
\uparrow \updownarrow \downarrow
\Uparrow \Updownarrow \Downarrow

Niektóre znaki mają swoje zdublowane, niczym nie różniące się polecenia:

Kod Efekt
[ ] \{ \} | \|
\lbrack \rbrack \lbrace \rbrace \vert \Vert

Separatory wstawiane automatycznie
Niektóre polecenia same generują separatory (a wtedy dopasowują też ich wielkość). Na przykład:

Kod Efekt
{n \choose k}
\begin{Vmatrix} x & y \\ z & v \end{Vmatrix}
\underbrace{ a+b+\cdots+z }_{26}

Dopasowanie wielkości[edytuj | edytuj kod]

Wszystkie separatory wstawiane ręcznie (i tylko te znaki) można powiększać za pomocą specjalnych poleceń dwiema metodami:

  • metoda automatyczna (polecenia „\left” i „\right” działające jako para) polega na tym, że program precyzyjnie dopasowuje wysokość pary separatorów do wysokości znajdującego się pomiędzy nimi wyrażenia matematycznego, dopasowywane są też światła poziome (a czasami nawet tylko one),
  • metoda ręczna (polecenia typu „\big...” działające indywidualnie) jest rodzajem protezy polegającej na wyborze jednej z czterech dostępnych wielkości.

Polecenia \left i \right[edytuj | edytuj kod]

Znaki normalnie wpisywane mają zwykłą wysokość, wspólną z resztą tekstu. Program nie dopasowuje ich wysokości do sąsiednich wyrażeń. W wielu sytuacjach te znaki będą jednak za niskie i nie dotyczy to tylko np. wielopiętrowych ułamków, ale nawet tak prostych wyrażeń jak potęgowanie czy proste ułamki. Wtedy parę separatorów należy poprzedzić poleceniami „\left” i „\right”.

Przed użyciem \left i \right Po użyciu \left i \right
kod efekt kod efekt
( f^2 ) \left( f^2 \right)
( \frac{a}{b} ) \left( \frac{a}{b} \right)
( \sqrt{1/2} ) \left( \sqrt{1/2} \right)
( \frac{1+\frac...


...\frac{a}{b}}} ) 
\left( \frac{1+\frac...


...\frac{a}{b}}} \right)

Para tych poleceń dopasowuje także światła poziome, i to nawet gdy nie znajduje powodu do zmian pionowych:

Kod Efekt
a\{b[c(d)e]f\}g
a\left\{b\left[c\left(d\right)e\right]f\right\}g

Zestawienie wszystkich separatorów:

Przed użyciem \left i \right Po użyciu \left i \right

Dopasowywać tą metodą można także pary różnych znaków, np. nawias okrągły z kwadratowym:

Kod Efekt
\left( \frac12,\frac12 \right]

Jeżeli ma być dopasowany tylko jeden separator (nie do pary), trzeba zamarkować miejsce drugiego poleceniem, w którego składni brakujący separator będzie zastąpiony znakiem kropki: „\left.” lub „\right.”. Na przykład:

Kod Efekt
\left\{ \frac{a}{b} \right.
\left. \frac{a}{b} \right\}

Polecenia \big, \Big, \bigg i \Bigg[edytuj | edytuj kod]

Drugą (obok „\left” i „\right”) metodą powiększania separatorów jest seria poleceń typu „\big...”:

  • działają tylko na najbliższy znak,
  • działają pojedynczo (nie wymagają pary lewy-prawy),
  • mają 4 sztywno ustalone wielkości.

Niegdyś istniały cztery warianty serii tych poleceń: „\big...”, „\bigl...”, „\bigr...” oraz „\bigm...”. Różniły się one dopasowaniem świateł z wybranej strony, obu lub żadnej. Seria „\bigm...” nie jest zaimplementowana, a „bigl...” i „bigr...” działają jako zaszłość historyczna, ale bez różnicy w działaniu z zalecaną serią „\big...”.

Przykłady użycia:

Kod Efekt
(   \big(   \Big(
\uparrow   \big\uparrow   \Big\uparrow

Spacje są oczywiście ignorowane:

\big(  =  \big ( \big\uparrow  =  \big \uparrow

Poniżej wymieniono wszystkie przypadki użycia:

W kodzie Efekt
bez
\big
\Big
\bigg
\Bigg

Inne spojrzenie:

Kod Efekt
( \big( \Big( \bigg( \Bigg( \dots \Bigg\} \bigg\} \Big\} \big\} \}

Poprawki wyglądu[edytuj | edytuj kod]

Poprawki pionowe
Para poleceń „\left” i „\right” wykonuje dopasowanie indywidualnie dla każdej pary separatorów, stąd w ramach jednego wzoru mogą znaleźć się wyrażenia o zróżnicowanej wysokości. Jest to zjawisko pożądane wizualnie i nie należy tego korygować. Na przykład:

Po użyciu \left i \right

W poniższym przykładzie lewa i prawa para nawiasów została poprawnie dopasowana poleceniami „\left” i „\right”, środkowa zaś ręcznie powiększona poleceniami „bigg”. Co prawda środkowa para jest upodobniona wysokością do prawej, ale ma nadmierne światła wewnętrzne.

\left i \right \bigg \left i \right

Kiepsko wyglądają również światła na zewnątrz nawiasów (a raczej ich brak):

\left i \right \bigg

Poniżej przykład do zastanowienia. W 2. i 3. wierszu użyto specjalnego polecenia „\tfrac”, służącego do osadzania ułamka w wierszu zwykłego tekstu tak, aby się z nim zlewał. Polecenie to tworzy nawiasy niezbyt duże, ale taka jest idea tego polecenia.

Kod Efekt Użyte polecenia
abc [ \frac12 ] def
abc \left[ \frac12 \right] def
\frac ( ), \frac (\left+\right)
abc [ \tfrac12 ] def
abc \left[ \tfrac12 \right] def
\tfrac ( ), \trfac (\left+\right)
abc \big[ \tfrac12 \big] def
abc \Big[ \tfrac12 \Big] def
\tfrac (\big), \tfrac (\Big)

Możemy jednak chcieć z jakichś powodów uwydatnić różnicę pomiędzy zagnieżdżonymi nawiasami w wyrażeniu, które normalnie tego nie potrzebuje:

Kod Efekt Użyte polecenia
(( a + b ) + c)^2
\left(( a + b ) + c\right)^2
\big(( a + b ) + c\big)^2
\Big(( a + b ) + c\Big)^2



bez
\left+\right
\big
\Big

Poniżej przykład, gdzie ingerencja była już potrzebna. Zapis bez poprawek (1) jest zbyt jednolity. Zastosowanie poleceń „\left” i „\right” (2) niewiele pomogło, poprawione zostały tylko odstępy w poziomie. Dopiero gdy zamiast nich użyto poleceń z serii „\big” (3), nastąpił oczekiwany efekt.

Poprawki poziome
Czasami po korekcie wysokości program może nieprecyzyjnie dopasować odległości poziome. Nie jest to specjalnie rażące, ale można dokonać korekty estetycznej najwęższą (3/18) ze spacji. W poniższym przykładzie lekko odsunięto prawy nawias.

Przed korektą Po korekcie
kod efekt kod efekt
\left(\sqrt{1/2}\right) \left(\sqrt{1/2} \, \right)

Tablice[edytuj | edytuj kod]

Zasady ogólne[edytuj | edytuj kod]

Tablice, macierze, układy równań, wyznaczniki itp. tworzy się, umieszczając ich zawartość pomiędzy poleceniami „\begin{...} i „\end{...}”. Istnieje szereg typów tablic, różniących się przede wszystkim sposobem justowania występujących w nich wyrażeń matematycznych – do lewej, w osi lub do prawej oraz odstępami pomiędzy nimi. Typ tablicy podaje się w klamrze, np. „\begin{array}”, „\begin{matrix}” itp. Tablice są strukturami, na które można patrzeć jak na tabele bez ramek, aczkolwiek w niektórych typach tablic można wstawiać pionowe i poziome linie oraz inne separatory. Tak więc tablice składają się z kolumn, wierszy i komórek.

Składnia[edytuj | edytuj kod]

Ponieważ kod tablicy jest mało czytelny w jednym wierszu, zazwyczaj dzieli się go na więcej wierszy, a dla zwiększenia czytelności wstawia się jeszcze w różnych miejscach spacje (jak wiadomo entery i spacje w kodzie nie są interpretowane). Przykładowe polecenie tablicy wygląda tak:

Kod w jednym wierszu Efekt
\begin{matrix}1a&2a&3a\\1b&2b&3b\\1c&2c&3c\end{matrix}
Kod z enterami Kod z enterami i spacjami
\begin{matrix}
1a&2a&3a\\
1b&2b&3b\\
1c&2c&3c
\end{matrix}
\begin{matrix}
1a & 2a & 3a \\
1b & 2b & 3b \\
1c & 2c & 3c
\end{matrix}

Legenda:

  • „{matrix}” oznacza typ tablicy (zawsze musi być podany),
  • „etki” („&”) rozdzielają kolumny,
  • dwa backslashe oznaczają koniec wiersza tablicy, a raczej granicę pomiędzy wierszami, przez co na końcu ostatniego wiersza można je pominąć.

Uwaga: wiersze kodu można łamać w dowolnych miejscach, przez co zarówno „etki”, jak i pary backslashów mogą znaleźć się na początku, w środku lub na końcu wiersza kodu bez wpływu na wyświetlanie wzoru. Zazwyczaj jednak łamie się tak, aby backslashe były na końcach, a „etki”, jeśli je też się łamie, to na początkach wierszy kodu.

Znaczniki „<math>” i „</math>” wstawia się oczywiście tylko raz na początku i końcu kodu wzoru zawierającego tablicę – nawet w układzie wielowierszowym. W kodzie jednego wzoru może być oczywiście więcej tablic (i innych wyrażeń) pomiędzy tą jedną parą znaczników.

Komórki[edytuj | edytuj kod]

  • W każdym miejscu tablicy mogą znajdować się puste komórki.
  • Puste komórki na końcu wiersza można w kodzie pominąć.
  • Puste komórki na końcu wiersza pozostają jednak widoczne jako odstępy. Dotyczy to także najdłuższego wiersza, przez co powstaje dodatkowy odstęp po tablicy:
Kod bez spacji Kod ze spacjami Efekt
\begin{matrix}
1&&&&5&6&7&&\\
1&2&3&4&5&6&7&8&9\\
1&2&3&4&5&6\\
&2&3&4&5&6&7\\
&&3&4&5&6&7&8\\
&&&4&5&6&7&8&9&&&&
\end{matrix}
\begin{matrix}
1 &   &   &   & 5 & 6 & 7 &   & \\
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 \\
1 & 2 & 3 & 4 & 5 & 6 \\
  & 2 & 3 & 4 & 5 & 6 & 7 \\
  &   & 3 & 4 & 5 & 6 & 7 & 8 \\
  &   &   & 4 & 5 & 6 & 7 & 8 & 9 & & & &
\end{matrix} = a

Kolumny[edytuj | edytuj kod]

Tablice różnią się między sobą przede wszystkim właściwościami kolumn, gdzie w zależności od typu tablicy:

  • kolumny są justowane do lewej, w osi lub do prawej w różnych konfiguracjach,
  • występują dwa rodzaje odstępów pomiędzy kolumnami:
    • o ustalonej szerokości lub
    • o zerowej szerokości (wtedy służą do wstawiania znaków matematycznych takich jak plus, minus, równa się itp., które wytwarzają pomiędzy kolumnami typowe dla tych działań odstępy).

Poniższy przykład przedstawia typ tablicy, w której kolumny stykają się parami i są justowane prawo-lewo, a pomiędzy tymi parami są ustalone odstępy. Zerowe odstępy w parach służą wypełnieniu ich znakami podstawowych działań matematycznych, co widać na styku kolumn 1. i 2. (w kodzie dla czytelności wstawiono w niektórych miejscach spacje):

Kod Efekt
\begin{align}
1 &2 &3 &4 &5 &6 \\
11 &22 &33 &44 &55 &66 \\
111 &222 &333 &444 &555 &666
\end{align}
\begin{align}
1 &-2 &-3 &4 &5 &6- \\
11 &+22 &+33 &44 &55 &66+ \\
111 &=222 &=333 &444 &555 &666=
\end{align}

Generalną zasadą jest umieszczanie znaków matematycznych z prawej strony „etki”, aby zachować odstępy typowe dla wzorów:

Kod Efekt
Źle Dobrze Źle Dobrze
+&
\times&
:&
=&
&+
&\times
&:
&=






Powyższy przykład jest wyidealizowany, by pokazać zachowanie się znaków na styku kolumn. W przypadku umieszczenia ich we wspólnej tablicy wygląd jest nieco inny, to znaczy nie ma wyosiowania na znakach działań. Zastanówmy się, jakby to wyosiowanie miało wyglądać:

1. 2. 3. 4. 5. 6.
aaa : aaa
aaa + aaa
aaa = aaa
  1. Tablica „align”. Nieprawidłowe użycie (z „etką” ze złej strony).
  2. Tablica „align”. Poprawne umieszczenie „etki” daje efekt, w którym oś przebiega wzdłuż lewej krawędzi znaków działań matematycznych, skutkiem czego wartości z prawej strony nie są wyrównane.
  3. Tablica „matrix”. Kod bez „etek”, a więc wszystko w jednej kolumnie. Oś przebiega środkiem znaków działań tylko dlatego, że wartości bo obu stronach są takie same. Ponieważ jednak znak dwukropka jest wąski, a znak równości szeroki, wartości po obu stronach rozchodzą się schodkowo, a więc znów rozwiązanie niedoskonałe.
  4. To samo rozwiązanie, co powyżej, ale z różnymi wartościami, ukazuje nietrwałość tego rozwiązania.
  5. Tablica „array” z trzema kolumnami justowanymi kolejno: prawo, środek, lewo. Środkowa kolumna przeznaczona tylko dla działań. Niestety ten typ tablicy narzuca spore odstępy.
  6. To już nie jest wzór w składni „Math”, tylko zwykła tabela z 3 kolumnami odpowiednio justowanymi. Odstępy pionowe są nadmierne, ale wyrównanie wydawałoby się idealne, gdyby nie to, że wokół dwukropka jest znacznie więcej światła niż wokół znaku dodawania, a wokół znaku równości światła jest jeszcze trochę mniej.

Wniosek jest następujący: przy układzie wyrażeń matematycznych z różnymi znakami działań matematycznych idealne wyrównanie wszystkiego jest niemożliwe. Najlepsze w takiej sytuacji jest rozwiązanie numer dwa, czyli takie, w którym za oś wyrównania przyjmuje się lewą krawędź znaków działań matematycznych, przy akceptacji faktu, że z prawej strony będzie nierówno. Takie rozwiązanie jest najbardziej czytelne. Na przykład:

Zasadę można przedstawić obrazowo tak:

Zasada umieszczania znaków działań z prawej strony etki sprawdza się zresztą również w przypadku jednakowych znaków działań matematycznych, stosuje się ją praktycznie zawsze, nawet w przypadku łączenia wzorów z dwóch kawałków oddzielonych znacznikami ...</math> i <math>...

Odstępy pionowe[edytuj | edytuj kod]

Odstępy pomiędzy wierszami można powiększać. Taka potrzeba może zajść na przykład, gdy w tablicy umieszczono szczególnie wysokie wzory. Wartości można podawać w: cm, em, ex, in, mm, pc, pt, px. Najmniej znana z tych jednostek, ale spotykana we wzorach, to ex, będąca odpowiednikiem wysokości liter tekstowych bez wydłużeń górnych i dolnych (ang. x-height) w bieżącym kroju i stopniu pisma. Wartości najlepiej podawać jednak w pokrewnej jednostce – w emach, oznaczających wysokość bieżącego stopnia pisma (czyli po prostu w firetach), bo zachowują proporcje przy różnych rozdzielczościach monitorów. Dla wartości poniżej 1 można pominąć zero, np. [0.5 em] = [.5 em] (spację przed emem można pominąć). Inną metodą jest wstawienie kolejnej pary backslashów, ale da to odstęp równy interlinii, czyli nieco powyżej 1 ema, a to zazwyczaj będzie za dużo. Spacje pomiędzy parami backslashów można oczywiście pominąć, a nawias z emami można umieścić w dowolnym miejscu, nawet na początku następnego wiersza kodu, byle następował w kodzie, ogólnie rzecz biorąc, po backslashach.

Ponadto w poniższym przykładzie nie ma ani jednej „etki”, ponieważ ta tablica jest jednokolumnowa:

Kod Efekt
początek i koniec część środkowa
\begin{align}...



...\end{align}
1+1+1+1+1 \\
1+1+1+1+1 \\ [.5 em]
1+1+1+1+1 \\ [1 em]
1+1+1+1+1 \\ \\
1+1+1+1+1
  

Uwaga: obecność nawiasu kwadratowego w składni tablic powoduje, że aby wyświetlić dowolny otwierający nawias kwadratowy na początku wiersza tabeli, trzeba go w kodzie poprzedzić pustą klamrą „{}” lub w niej umieścić, np.

\begin{align}{} [...   ...// {} [...
\begin{align}{[}...   ...// {[}...  

Pierwsze rozwiązanie wydaje się bardziej eleganckie. Warto dodać, że czasami edytujący nadmiernie się asekurują i zabezpieczają tak każdy nawias kwadratowy w tablicy, np. „{[}a{]}”.

Linie[edytuj | edytuj kod]

  • Linie poziome można wstawiać we wszystkich typach tablic. Robi się to poleceniem „\hline”, które działa tylko w tablicach. Polecenie działa na wiersz znajdujący się po tym poleceniu i wyświetla ono linię nad wierszem. Ponieważ entery nie są we wzorach intrpretowane, polecenie można wstawiać na początku bieżącego wiersza lub dla czytelności po dwóch backslashach w wierszu poprzednim. Linie na samej górze i na samym dole program wyświetla nieco grubsze.
  • Linie pionowe można wstawiać w tablicach typu „array”, co zostało omówione w ich rozdziale.
  • W szczególnych przypadkach można również skorzystać z układu tablic znajdujących się obok siebie lub zagnieżdżonych jedna w drugiej, wykorzystując polecenia separatorów (dla linii pionowych) lub polecenia „\underline” i „\overline” (dla linii poziomych).
Kod Efekt
\begin{matrix}...





...\end{matrix}

\hline 1 & 2 & 3 & 4 & 5 \\
\hline 1 & 2 & 3 & 4 & 5 \\
\hline 1 & 2 & 3 & 4 & 5 \\
1 & 2 & 3 & 4 & 5 \\
1 & 2 & 3 & 4 & 5 \\
\hline
\hline
1 & 2 & 3 & 4 & 5 \\ \hline
1 & 2 & 3 & 4 & 5 \\ \hline
1 & 2 & 3 & 4 & 5 \\
1 & 2 & 3 & 4 & 5 \\
1 & 2 & 3 & 4 & 5 \\ \hline

  

Inne przykłady:

Separatory[edytuj | edytuj kod]

Ponieważ tablica to tylko fragment kodu wzoru, można obok niej z jednej lub nawet z obu stron postawić i dopasować wysokością jakieś separatory (aczkolwiek niektóre typy matryc mają wbudowane własne):

Kod Efekt
\left\{ \begin{matrix}...

...\end{matrix} \right\|
1 &2 &3 \\
1 &2 &3 \\
1 &2 &3
  

Zagnieżdżanie[edytuj | edytuj kod]

Tablice można zagnieżdżać. Wystarczy wstawić kod tablicy do kodu komórki (oczywiście bez dodatkowych znaczników „<math>” i „</math>”):

W przykładzie z pełną ramką posłużono się możliwością budowania linii pionowych z tablicy typu „array”. W przykładzie ze strzałkami matrycę zagnieżdżono w matrycy tylko po to, by wyosiować poziome strzałki, a jak widać, można je w ten sposób umieścić nawet pomiędzy kolumnami. Strzałki pionowe są poza matrycą.

Formatowanie tekstu[edytuj | edytuj kod]

  • Całej tablicy można nadawać style tekstu „\scriptstyle” i „\scriptscriptstyle”, choć pomniejszają one wyrażenia bez wchodzenia w tryb „inline”, „\displaystyle” i „\textstyle” na całej tablicy nie działają.
  • Style czcionki nie działają na polecenia matryc, aczkolwiek matryce mogą być wewnątrz większego wyrażenia objętego stylem czcionki.
  • Poszczególnym komórkom można nadawać wszystkie style tekstu i wszystkie style czcionki.
  • Jednak w przypadku pomniejszonych ułamków piętrowych jedynym wyjściem jest użycie polecenia „\dfrac” (zamiast standardowego „\frac”).

Z powyższego wynika, że sformatowanie całego wiersza tablicy przy wielu kolumnach może okazać się dość uciążliwe.

Ponadto niektóre typy tablic samoczynnie upraszczają trudniejsze wyrażenia, zmieniając styl tekstu, przechodząc z „displaystyle” do „textstyle”, a jeden typ („smallmatrix”) wyświetla całość w „scriptstyle”:

Typ tablicy Fragmenty
prostsze trudniejsze
align i alignat
array, cases i seria matrix
smallmatrix

W tablicach pomniejszających wyrażenia można przywrócić pierwotny wygląd fragmentów, nadając im polecenie „\displaystyle”. W poniższym przykładzie nadano je każdemu z obu ułamków.

 → 

Porównanie typów tablic[edytuj | edytuj kod]

{align}
{alignat}{0}
{alignat}
np. {1}

np. {5}


{array}
np. {lcr|c|lcr|c|c|c}
{matrix}
{cases}