Problem roku 2000

Petr Danecek petr at ics.cas.cz
Wed Sep 15 11:56:22 CEST 1999


Dobry den,

jedno reseni me napada. Uvadim jenom myslenku. Snad to pujde i dale
propracovat:

\def\najdi#1 19{\global\setbox0=\hbox{#1}}

\def\makro #1\konec{
  \setbox1=\hbox{#1}		% Kontrolni box
  \setbox2=\hbox{\najdi#1 19}   % V box0 bude
				%   a) cely #1, nevyskytuje-li se 19 v #1
				%   b) text #1 az do prvniho vyskytu 19
  \ifdim\wd0=\wd1		% Jsou-li boxy shodne, 19 v textu neni
	nic		% Dalsi testy pro vyskyt 20?
  \else				% 19 v textu je: box0 obsahuje text pred
	\box0			% ni
  \fi}

\makro Text 19Text\konec        % Vypise "Text"
\makro Text 18Text\konec        % Vypise "nic"

\end

Petr Danecek


On Tue, 14 Sep 1999, Anton Surda wrote:

> Dobry den,
>
> vzdy som si myslel, ze mna, ktory pise datum zasadne rucne sa tento
> popularny problem nemoze nijako tykat. Ukazuje sa vsak, ze moje makra na
> sadzbu zoznamu literatury, ktore su zalozene na cisle 19, budu zachvilu k
> nicomu.
>
> Vedel by mi niekto poradit, ci sa v Texu da skonstruovat makro, ktoreho
> vystupom by bol text az po najblizsie 19 alebo 20? (Vopred neviem co tam
> je!) Dalo by sa vyborne
> vyuzit aj v tabulkach, kde sa jednotlive polozky oddeluju bud & alebo \cr.
>
> Dokazem to urobit len tak, ze nacitam cely odsek, potom z neho vylovim
> potrebnu cast a zbytok vratim. Ukazuje sa vsak, ze zvysok, ktory  vratim
> uz nie je celkom ten isty  ako predtym a niekedy sa sprava inak ako
> bez tejto manipulacie. Da sa to spravit lepsie?
>
> Za odpoved dakuje
>
> Anton Surda
>
>




More information about the csTeX mailing list