3.5. Makr� - ve�k� prednos� TeXu

\define\nazov{obsah} n�m umo��uje definova� si vlastn� skratky - makr�. Odteraz kdeko�vek v texte pou�ijeme \nazov, bude namiesto slova \nazov dosaden� len (!!!) obsah zlo�en�ch z�tvoriek (bez samotn�ch z�tvoriek). Preto pozor na zmeny fontov, pou�itie skratiek v exponentoch, ... vo vn�tri z�tvoriek. Napr. \define\dos{\it defin�cie|_|} Po zavolan� \dos zostane zapnut� kurz�va ... d�va:

\define\dos{\it definície } Po zavolaní \dos zostane zapnutá kurzíva\dots\rm

Ak sa chceme vyhn�� predch�dzaj�cim kol�ziam, je lep�ie pou�i� dvojit� z�tvorky \define\nazov{{obsah}} . Potom sa bude so skratkou \nazov zaobch�dza� ako s jedn�m znakom a m��eme pou�i� i $2^\nazov$. Pokia� chceme nejak� skratku pou��va� vo vn�tri i mimo matematick� m�d, je nutn� definova� ju pomocou \define\ga{{\text{$\alpha$}}}. Kdeko�vek v texte teraz m��eme pou�i� \ga, �o d�va

$\alpha$

Kontrolsolvo \text je povolen� v nematematickom m�de (v ktorom len vytla�� obsah z�tvorky) i v matematickom m�de, v ktorom m��e automaticky meni� i ve�kos� p�sma v indexoch a exponentoch. Makr� je mo�n� p�sa� i s parametrami - form�lnymi argumentami (m��e ich by� maxim�lne 9). Napr. \define\zlom#1 #2#3{$\frac{#1_1#1_2\dots#1_n}{#2_1#2_2#\dots#2_n}#$}, ak pou�ijeme \zlom a bc, dostaneme

\define\zlom#1 #2#3{$\frac{#1_1#1_2\dots#1_n}{#2_1#2_2\dots#2_n}#3$} \zlom a bc

ak potrebujeme viacznakov� parameter \zlom a {bc}d d�va

\define\zlom#1 #2#3{$\frac{#1_1#1_2\dots#1_n}{#2_1#2_2\dots#2_n}#3$} \zlom a {bc}d

Ak v�ak pou�ijeme \zlom abc, budeme upozornen� na nespr�vne pou�itie tejto defin�cie, preto�e pre TeX je znak (r�zny od #) za form�lnym argumentom odde�ova�om, ktor�m mus� by� skuto�n� parameter zakon�en�. Ak teda nechceme pou��va� �iadne odde�ova�e, je nutn� p�sa� parametre #1#2... za sebou bez ak�hoko�vek znaku (i bez medzery). Napr. \define \praha#1**{{\it #1\/}} potom pou�itie ``\praha Praha je najkraj�ie mesto** Eur�py.'' d�va

\define\praha#1**{{\it #1\/}}
``\praha Praha je najkraj¹ie mesto** Európy.''

ale ak pou�ijeme ``\praha Praha je najkraj�ie mesto* Eur�py.'' dostaneme chybov� hl�ku. Defin�cia m��e by� umiestnen� kdeko�vek v texte, ov�em kv�li spr�vnemu medzerovaniu je dobr� to robi� na zvl�tnom riadku a ka�d� \define ukon�i� %. Napr. M�m ve�mi \define \a {abeceda } rada TeX. sa na v�stupe objavia za slovom ve�mi dve medzery. Defin�cie s� platn� len v bloku, v ktorom s� uveden�, napr. {\define\p{Praha } \p je pekn�.}, ale pri pou�it� \p mimo z�tvoriek budeme upozornen�, �e TeX slovo \p nepozn�. \redefine \pouzity{\novy} sa pou��va na predefinovanie v�znamu skratiek, ktor� boli TeXom alebo u��vate�om definovan� sk�r (v na�om pr�pade \pouzity). Odteraz \pouzity bude ma� v�znam \novy. Ak chceme "obsah" kontrolslova \pouzity zachova�, mus�me predt�m pou�i� \predefine\novy{\stary}; obsah skratky \stary bude ma� i skratka \novy. Napr. \predefine\bund{\b}\redefine\b{\beta}, lebo \b u� bolo v TeXu definovan�.