Total number of figures/tables, etc.
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? -- Best Regards, Oleg Kolosov
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
Aditya Mahajan wrote:
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.
in mkiv i load at everyjob time instead of everystarttext this should work (patch in core-uti.mkiv) but i wonder why i used everyjob % \to \everyjob \to \everystarttext
\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
___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : https://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___________________________________________________________________________________
-- ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
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
maybe this works: \ifx\noffigures\undefined
\def\noffigures{1}
\fi ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
participants (4)
-
Aditya Mahajan
-
Hans Hagen
-
Oleg Kolosov
-
Wolfgang Schuster