On Sun, Jun 29, 2008 at 5:45 PM, Aditya Mahajan
On Sun, 29 Jun 2008, Oleg Kolosov wrote:
Hi!
Is there are an easy way to get total number of pages/tables/figures etc.? \getnumber[table] of \getnumber[figure] returns 0, \getnumber[page] gives some irrelevant number. I've found command \totalnumberofpages, is there are something similar for others? It would be great to also automatically change the following word as in:
1 figure, but 2 figures
Is there support for that in ConTeXt?
No, but it is easy to define this on your own. To Hans: Is reading utilities not implemented in mkiv? The following works fine with mkii but not with mkiv.
\def\noffigures {1}
\def\savenoffigures {\savecurrentvalue{\noffigures}{\getnumber[figure]}}
\appendtoks \savenoffigures \to \everystoptext
\def\shownoffigures {\noffigures\ % \doifelse{\noffigures}{1}{figure}{figures}}
\starttext
This text has \shownoffigures.
\dorecurse{10}{\placefigure{something}{} \input knuth \endgraf }
\stoptext
As Hans explained the information is load earlier than in MkII but I can show you why your definition can also fail in MkII. \startcomponent myfile \def\noffigures{1} \def\savenoffigures {\savecurrentvalue{\noffigures}{\getnumber[figure]}} \appendtoks \savenoffigures \to \everystoptext \def\shownoffigures{\noffigures} This text has \shownoffigures. \dorecurse{10}{\placefigure{something}{figure}} \stopcomponent This results always in 1 for the total number of figures. A better definition for the countervalue is: \def\shownoffigures {\doifdefinedelse{noffigures}{\noffigures}{0}} without the initial value for \noffigures. Regards Wolfgang