Latex Makra dr hab. Bożena Woźna-Szcześniak Akademia im. Jan Długosza bwozna@gmail.com Laboratorium 10
Definiowanie Poleceń \ newcommand{name } [ num ] { d e f i n i t i o n } name - nazwa polecenia num - parametry polecenia. Wartości 1-9. do i-tego argumentu odwołujemy się poprzez #i. definition - definicja polecenia Przykład \ newcommand { \ j b }{ Jan Brzechwa } \ newcommand { \ Jak }{" Jak pan moż e, P a n i e pomidorze?! " }
Zastosowanie Definiowanie Poleceń \ b e g i n { v e r s e } Pan pomidor wlaz ł na t y c z k ȩ I p r z e d r z e ź n i a o g r o d n i c z k ȩ. \ Jak \ end { v e r s e } \ b e g i n { f l u s h r i g h t } \ j b \ end { f l u s h r i g h t } Wykonanie Pan pomidor wlazł na tyczkę I przedrzeźnia ogrodniczkę. "Jak pan może, Panie pomidorze?!" Jan Brzechwa
Definiowanie Poleceń Można zdefiniować co najwyżej 9 parametrów. Parametry sa wartościami liczbowymi. Przykład poleceń z parametrami \ newcommand { \ wbal }{ Wikibook o \ LaTeX} \ newcommand { \ wbalsup } [ 1 ] {To j e s t Wikibook o LaTeX w s p i e r a n a p r z e z #1} \ newcommand { \ wbaltwo } [ 2 ] {To j e s t Wikibook o LaTeX w s p i e r a n a p r z e z #1 i #2} \ newcommand { \wtwo } [ 2 ] [ Wikimedia ] { To j e s t Wikibook o LaTeX w s p i e r a n a p r z e z {#1} i {#2}}
Definiowanie Poleceń Zastosowanie \ b e g i n { i t e m i z e } \ i tem \ wbalsup { Wikimedia } \ i tem \ wbalsup { w i e l u u ż ytkownik ów! } \ i tem \ wbaltwo{ John Doe}{ Anthea Smith } \ end { i t e m i z e } Wykonanie To jest Wikibook o LaTeX wspierana przez Wikimedia To jest Wikibook o LaTeX wspierana przez wielu użytkowników! To jest Wikibook o LaTeX wspierana przez John Doe i Anthea Smith
Przedefiniowywanie Poleceń \ renewcommand {name } [ num ] { d e f i n i t i o n } name - nazwa polecenia już istniejacego num - parametry polecenia. Wartości 1-9. do i-tego argumentu odwołujemy się poprzez #i. definition - definicja polecenia Przykład \ renewcommand { \ b u l l e t } { \ t e x t c o l o r { r e d } { \ odot }} \ renewcommand { \ emph } [ 1 ] {% \ t e x t c o l o r { r e d } { \ t e x t s c {#1}} }
Przedefiniowywanie Poleceń Zastosowanie \ b e g i n { i t e m i z e } \ i tem [ $ \ b u l l e t $] Element 1 \ i tem [ $ \ b u l l e t $] Element 2 \ end { i t e m i z e } Wykonanie Element 1 Element 2
Przedefiniowywanie Poleceń Zastosowanie Coś \ emph{waż nego } p r z e d p r z e d e f i n i o w a n i e m \ verb +\ emph +. \ renewcommand { \ emph } [ 1 ] {% \ t e x t c o l o r { r e d } { \ t e x t s c {#1}} } Coś \ emph{waż nego } po p r z e d e f i n i o w a n i u \ verb +\ emph +. Wykonanie Coś ważnego przed przedefiniowaniem \emph. Coś WAŻNEGO po przedefiniowaniu \emph.
Komenda def Syntaktyka \ d e f <command> < p a r a m e t e r s >{< r e p l a c e m e n t t e x t >} command - nazwa makra parameters - parametry: #1... #9 replacement-text - definicja \def jest komenda T E X-a. \newcommand jest nakładka L A T E X-a na \def. Najbardziej oczywiste korzyści stosowania \newcommand zamiast \def: \newcommand sprawdza czy komenda już istnieje \newcommand pozwala zdefiniować opcjonalny argument Porównaj pliki cw2.tex i cw3.tex
Definiowanie nowego środowiska Składnia \newenvironment{name}[num]{before}{after} Komenda \newenvironment może mieć argument opcjonalny. Nie można tą komendą definiować środowisk już zdefiniowanych. Aby przedefiniować/zmodyfikować istniejącą definicję, należy użyć komendy \renewenvironment. Komenda \newenvironment umieszczana jest przed \begin{document}.
Definiowanie nowego środowiska Przykład \ newenvironment { rama } { \ b e g i n { c e n t e r } \ b e g i n { t a b u l a r } { p { 0. 9 \ t e x t w i d t h } } \ h l i n e \ \ }{ \ \ \ \ \ h l i n e \ end { t a b u l a r } \ end { c e n t e r } } \ b e g i n { document } \ b e g i n { rama } To j e s t t e k s t sformatowany p r z e z ś rodowisko rama \ end { rama } \ end { document }
Definiowanie nowego środowiska Wykonanie To jest tekst sformatowany przez środowisko rama. To jest tekst sformatowany przez środowisko rama.
Przykład Definiowanie nowego środowiska \ newenvironment { rama p } [ 1 ] { \ b e g i n { c e n t e r } \ t e x t b f { # 1 } \ \ [ 1 ex ] \ b e g i n { t a b u l a r } { p { 0. 9 \ t e x t w i d t h } } \ h l i n e \ \ }{ \ \ \ \ \ h l i n e \ end { t a b u l a r } \ end { c e n t e r } } \ b e g i n { document } \ b e g i n { rama p }{To j e s t t y t u ł ramki } To j e s t t e k s t sformatowany p r z e z ś rodowisko rama \ end { rama p} \ end { document }
Definiowanie nowego środowiska Wykonanie To jest tytuł ramki To jest tekst sformatowany przez środowisko rama. To jest tekst sformatowany przez środowisko rama. Zobacz cw4.tex.