\ifthenelse a test na (ne)prazdny #1

Hans Ginzel hans at matfyz.cz
Thu Sep 19 20:54:34 CEST 2002


> > Dobry vecer,

> > \newcommand{\test}[1]{
> >     \ifthenelse{\equal{#1}{}}
> >     {PARAMETR PRAZDNY}{PARAMETR NEPRAZDNY}
> > }
> >
> > Vse fungovalo dobre, dokud nevyvstala potreba predavat
> > do parametru nejen jednoduchy text, ale treba i prostredi:
> >
> > \test{
> >     \begin{flushright}tento text je vpravo\end{flushright}}

   Viz TeXbook naruby sekce 2.3 (specialne strana 49). Petr Olsak tam
radi
	\if:#1:prazdne\else neprazdne\fi

Vyhody tohoto postupu jsou:

	a) je do toho videt
	b) vse se odehrava na urovni expandprocesoru

   Ja pouzivam v plainu

	\ifx \end #1\end ...

nebot nechci, aby se parametr expandoval a mam jistotu, ze nebude
obsahovat \end. Test selze, obsahuje-li parametr neuplnou podminku (\if
\else \fi), nebo je-li \if... jako prvni token. Ale to jiz clovek musi
programovat slozite veci, aby pouzval takovehle parametry.
V LaTeXu neni \end primitivum, tak bych si vybral jine vhodne
skoro nepouzivane primitivum (\nonstopmode).

	Zdravi
--
					Hans Ginzel

http://math.feld.cvut.cz/olsak/tbn.html
http://interviews.slashdot.org/article.pl?sid=02/09/06/1343222
http://www.infoworld.com/articles/op/xml/02/08/26/020826opsource.xml
http://www.manualy.sk/archiv/a534k701.htm





More information about the csTeX mailing list