sazba teze casti textu dvema zpusoby

Hans Ginzel hans at kolej.mff.cuni.cz
Mon Dec 17 15:49:58 CET 2001


> Ja uz se potrapil, ale nechtel sem ovlivnovat ostatni svym resenim.
> Jedna se mi o reseni na urovni plainu
> \def\dvakrat{\def\param##1|{##1\endgroup##1}\obeyspaces\param}
> pak se proste napise
> \dvakrat tady    jsou    mezery   | a za oddelovacem uz    ne:)

   Tohle nezafunguje. Jednak Vam chybi hned za prvni otviraci slozenou
zavorkou \begingroup. Mackro \obeyspaces neudela nic jineho, nez zmeni
kategorii mezery na 13 (aktivni znak). Proto se parametr nacte s
aktivnimi mezerami. Takto nacteny parametr se dvakrat vlozi, jednou do
skupiny, po druhe za ni. Ukonceni skupiny ale nema zadny vliv, nebot
mezery jiz byly nacteny jako aktivni a pokazde se pouzije k jejich
expanzi tataz definice z plain.tex, kde je {\obeyspaces\let =\space}.
Tj. oboji bude s mezeramy jako ve zdrojovem textu.

   Je potreba, abyste v druhem pripade aktivni mezeru predefinoval nejak
chytreji, tj. aby se chovala stejne jako tokenprocesor TeXu -- nacetla
se jedna a ostatni zahazovali. Napr. mezera se podiva, co za ni
nasleduje (\futurelet), bude-li to mezera (\ifx), nevysazi se nic, jinak
\space.

   Pokud by jste byl bezradny, muzu poslat sve reseni.

--
					Hans Ginzel

http://www.rfc1855.org/
http://www.ruby-lang.org/en/index.html



More information about the csTeX mailing list