Tytuły

Do dyspozycji mamy predefiniowane polecenia do tworzenia tytułów (numerowanych i nienumerowanych):
Tytuły numerowane

\part[ref]{tekst}

ref określa nazwę (etykietę) na którą można się powołać. Nazw (etykiet) może być kilka, powinny być one oddzielone przecinkiem -- wszystkie mogą służyć do powołania się na ten tytuł (wartością etykiety jest numer nagłówka). tekst stanowi treść tytułu; domyślnie, polecenie \part nie wyprowadza treści tytułu (parametr placehead=no; p. poniżej o definiowaniu własności nagłówków), ale następuje przejście do nowej strony (nieparzystej), strony dokumentu są numerowane w obrębie danej części jako: numer części-numer strony).

Wszystkie poniżej wymienione polecenia mają analogiczną składnię.

\chapter[ref]{tekst}domyślnie, polecenie powoduje przejście do nowej strony
\section[ref]{tekst}
\subsection[ref]{tekst}
\subsubsection[ref]{tekst}
Tytuły nienumerowane
\title[ref]{tekst}
\subject[ref]{tekst}
\subsubject[ref]{tekst}
\subsubject[ref]{tekst}
\subsubsubject[ref]{tekst}

Użycie poleceń nagłówkowych

Składnia poleceń do tworzenia tytułów wygląda następująco:
\nazwa[etykiety]{wartość licznika}{treść}
\nazwa{treść}
\nazwa{wartość licznika}{treść}
gdzie:
etykiety -- nazwy, na które można powołać się (może być ich kilka, muszą być oddzielone przecinkiem),
treść -- treść tytułu,
wartość licznika -- a ściślej tekst, który będzie podany zamiast właściwego numeru dla danego nagłówka -- nie ma nic wspólnego z wartością licznika (ale licznik tego poziomu zostanie zwiększony), parametr ten jest interpretowany w powyższy sposób tylko wtedy, gdy wartość atrybutu ownnumber wynosi yes; w przeciwnym razie parametr jest traktowany jako tekst nagłówka,
w treści tytułu możemy użyć polecenia \nomarking{tekst}, które spowoduje, że w nagłówku lub stopce tekst zostanie zastąpiony przez ... (trzy kropki).

W ConTeXt-cie nie ma obowiązku zachowania kolejności poziomów; numer nagłówka danego poziomu będzie zawierał jedynie wcześniej użyte poziomy.

Należy pamiętać, że wygląd nagłówka może zależeć od kontekstu w którym się znajduje (np.: sposób numeracji: cyframi, kolejnymi literami, numeracja rzymska; dodatkowy tekst np.: Rozdział lub Dodatek itp.) -- p. definiowanie własnych nagłówków.

Tworzenie własnych tytułów na podstawie już istniejących

Do tworzenia własnych nagłówków służy polecenie:
\definehead[nazwa][przodek]
nazwa jest nazwą nowego polecenia; w momencie tworzenia dziedziczone są wszystkie cechy (również licznik) obiektu określonego jako przodek.

Tworzenie własnych nagłówków

Postać polecenie \definehead może mieć bardziej skomplikowaną postać:
\definehead[nazwa][definicje własności]
nazwa jest nazwą nowo tworzonego polecenia nagłówkowego
definicje własności mają następującą budowę: nazwa własności=wartość
można definiować jednocześnie kilka własności, poszczególne elementy muszą być oddzielone przecinkiem (,)
nazwa własnościdopuszczalne wartości
section nazwa jest nazwą obiektu utworzonego poleceniem \definesection -- określa położenie numeracji danego nagłówka, a tym samym jego poziom w hierarchii
default nazwa jest nazwą obiektu utworzonego poleceniem \definehead (lub predefiniowanego) -- określa z jakiego nagłówka mają być przejęte cechy (wydaje się, że zdefiniowanie tej własności jest obowiązkowe)

Zmiana własności nagłówków

Do zmiany własności nagłówków służy polecenie:
\setuphead[nazwy][definicje własności]
gdzie:
nazwy są listą nazw nagłówków (predefiniowanych lub utworzonych poleceniem \definehead) (elementy listy muszą być oddzielone przecinkiem),
natomiast definicje własności jest listą niżej podanych atrybutów i ich wartości (domyślne wartości są zaznaczone podkreśleniem).

Zmianę własności wszystkich nagłówków można zrealizować za pomocą polecenia (nie wszystkie własności mogą wystąpić na liście polecenie \setupheads???):
\setupheads[definicje własności]
nazwa atrybutudopuszczalne wartości
style atrybut definiuje font użyty do składu nagłówka np.:
normal -- antykwa,
bold -- wytłuszczenie,
slanted -- pochylenie,
boldslanted -- wytłuszczenie i pochylenie,
sc -- ,,smallcaps'',
type -- czcionka ,,maszynowa'',
cap -- wersaliki,
small -- zmniejszenie wielkości
lub dowolne inne określenia związane ze zmianą rodzaju czcionki lub jej wielkości
textstyle j.w. -- definicja określa font użyty do składu tekstu nagłówka (,,przykrywa'' definicję określoną atrybutem style)
numberstyle j.w. -- definicja określa font użyty do składu numeru nagłówka (,,przykrywa'' definicję określoną atrybutem style)
number
yes -- włącza numerowanie nagłówków,
no -- wyłącza numerowanie nagłówków
ownnumber
yes -- pozwala na wstawienie własnego tekstu w polu numeracji nagłówków, czyli na oznaczanie nagłówków w nietypowy sposób (niezależny od innych poziomów) (p. używanie poleceń do tworzenia nagłówków),
no -- wyłączenie wyżej opisanej możliwości
page
left -- powoduje zmianę strony przed nagłówkiem, będzie on wyprowadzony na najbliższą stronę parzystą (tylko przy zadeklarowaniu druku dwustronnego),
right -- powoduje zmianę strony przed nagłówkiem, będzie on wyprowadzony na najbliższą stronę nieparzystą (tylko przy zadeklarowaniu druku dwustronnego),
yes -- powoduje zmianę strony przed nagłówkiem,
jeżeli atrybut nie ma nadanej wartości (domyślnie) nie jest zmieniana strona przed nagłówkiem (patrz też opis następnego atrybutu)
continue
yes -- jeżeli jest włączona zmiana strony przed nagłówkiem (poprzedni atrybut) i na danej stronie znajduje się nagłówkiem wyższego poziomu, zmiana strony jest blokowana,
no -- jeżeli jest włączona zmiana strony przed nagłówkiem (poprzedni atrybut) i na danej stronie znajduje się tytuł wyższego poziomu, to mimo to zmiana strony zstanie wykonana
header
none --nagłówek strony nie pojawi się,
empty --nagłówek strony będzie pusty,
high -- ,
nomarking-- w nagłówku strony nie pojawi się treść tytułu
before \command -- polecenie (bezparametrowe) jest wywoływane (o ile zostało zdefiniowane) bezpośrednio przed wyprowadzeniem całego nagłówka (obecność polecenia może mieć wpływ na to, że zmiany wartości atrybutu alternative zostaną zignorowane)
after\command -- polecenie (bezparametrowe) jest wywoływane (o ile zostało zdefiniowane) bezpośrednio po wyprowadzeniem całego nagłówka. Przykład:
\setuphead[section][
before={\blank[3*big]},
after=\nowhitespace\hairline]

spowoduje dodanie dodatkowego odstępu przed tytułem rozdziału oraz poziomej linii oddzielającej pod tytułem. Jako poleceń \command można używać własnych konstrukcji, należy jednak podkreślić, że mogą one wpływać na działanie innych atrybutów zmieniających sposób formatowania nagłówka (np. alternative)
inbetween\command -- polecenie (bezparametrowe) jest wywoływane (o ile zostało zdefiniowane) bezpośrednio przed wyprowadzeniem całego nagłówka, a po poleceniu określonym przez atrybut before
alternative
normal -- o składzie nagłówka decydują inne atrybuty,
margin -- i
inmargin -- akceptowane tylko w przypadku kiedy wartość atrybutu align jest różna od left, a powodują, że numer nagłówka jest prezentowany na marginesie strony,
middle -- tekst nagłówka jest centrowany (numer jest prezentowany w osobnej linii),
paragraph -- numer nagłówka nie jest wyróżniany; stanowi on normalny akapit z tekstem nagłówka,
text -- nagłówek jest składany ,,w ciągu'' łączy się z tekstem przed i po, na ogólnych zasadach; zmiana wartości atrybutu align jest ignorowana
command\command#1#2 -- jeżeli polecenie jest zdefiniowane, to jest ono wywoływane każdorazowo przy wyprowadzaniu nagłówka; za #1 jest podstawiany numer, a za #2 treść nagłówka. Dzięki temu mamy nieograniczoną możliwość wpływu na skład nagłówków.
numbercommand\command#1 -- jeżeli polecenie jest zdefiniowane, to jest ono wywoływane każdorazowo przy wyprowadzaniu nagłówka; za #1 jest podstawiany numer nagłówka. Za pomocą tej własności możemy w łatwy sposób spowodować, aby po numerze była dostawiana kropka np.: \def\kropka#1{#1.}
\setupheads[numbercommand={\kropka}]
textcommand\command#1 -- j.w. ale za parametr podstawiany jest tekst nagłówka
prefix
- -- ,
+ -- ,
text --
placehead
yes -- tekst całego nagłówka zostanie wyprowadzony na wyjście,
no -- tekst nagłówka nie zostanie wyprowadzony na wyjście
incrementnumber
yes -- numery nagłówków są wyprowadzane na wyjście,
no -- numery nagłówków nie są wyprowadzane na wyjście,
file --
align
normal -- nagłówek jest składany w ,,pudełko'' (z wyrównaniem do obu marginesów), chyba że wartością atrybutu alternative jest middle,
left -- tekst nagłówka jest wyrównywany do prawego marginesu,
right -- tekst nagłówka jest wyrównywany do lewego marginesu,
broad--
tolerance wartość parametru ma wpływ na jakość składu nagłówków i jest przekładana na wartość rejestru \tolerance oraz ma bliżej nieokreślony wpływ na skład w przypadku składu wielokolumnowego
verystrict -- ,
strict -- ,
tolerant -- ,
verytolerant -- ,
stretch--
indentnext
yes -- powoduje, że pierwszy akapit po nagłówku będzie ,,wcięty'' (o ile wartość wcięcia jest większa od zera i zostało ono ustalone poleceniem \indenting na wartość first),
no -- pierwszy akapit nie będzie miał ,,wcięcia'' bez względu na inne ustawienia
file nazwa -- własność pozwala na tworzenie różnych wersji nagłówka; w zależności od wcześniej zadeklarowanego skojarzenia (polecenie \coupledocument)
expansion
command--
yes -- ,
no --
separator tekst -- tekst (znak) staje się separatorem liczb wchodzących w skład numeru nagłówka (własność może być zmieniona tylko poleceniem \setupheads)
bodypartlabel nazwa -- użycie atrybutu spowoduje, że numer nagłówka będzie poprzedzony tekstem (może być pusty) przyporządkowanego obiektowi nazwa, powołanemu poleceniem \setuplabeltext. Przykład:
\setuplabeltext[
tytulrozdzialu=Rozdział~]
\setuphead[chapter]
bodypartlabel=tytulrozdzialu]
appendixlabel nazwa -- użycie atrybutu spowoduje, że numer nagłówka będzie poprzedzony tekstem (może być pusty) przyporządkowanego obiektowi nazwa, powołanemu poleceniem \setuplabeltext. Przykład:
\setuplabeltext[
tytulrozdzialu=Dodatek~]
\setuphead[chapter]
bodypartlabel=tytulrozdzialu]


Włodzimierz Macewicz z pomocą i udziałem Grzegorza Sapijaszko