summaryrefslogtreecommitdiff
path: root/macros/latex209/contrib/misc/xrefwarn.sty
blob: 37df6b5df3ae0361ae7a3b9c4ae0dafdf349737a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
%%% ====================================================================
%%%  @LaTeX-style-file{
%%%     author          = "Nico Verwer",
%%%     version         = "1.2",
%%%     date            = "24 February 1992",
%%%     filename        = "xrefwarn.sty",
%%%     address         = "Dept. of Computer Science
%%%                        Rijksuniversiteit te Utrecht
%%%                        P.O. box 80.089
%%%                        3508 TB Utrecht
%%%                        the Netherlands",
%%%     telephone       = "+31 30 533921",
%%%     FAX             = "+31 30 513791",
%%%     email           = "nico@cs.ruu.nl (Internet)",
%%%     codetable       = "ISO/ASCII",
%%%     keywords        = "LaTeX, x-ref warnings",
%%%     supported       = "yes",
%%%     docstring       = "Normally, LaTeX issues a warning every
%%%                        time it encounters an undefined cross-
%%%                        reference or citation. Thus you will get
%%%                        many identical warnings. The effect of
%%%                        this style file is that only one warning
%%%                        is issued for every cross-reference or 
%%%                        citation.",
%%%  }
%%% ====================================================================

\ifx\xrefwarnLoaded\undefined\else\endinput\fi
\let\xrefwarnLoaded\empty

\def\@citex[#1]#2{\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi
  \def\@citea{}\@cite{\@for\@citeb:=#2\do
    {\@citea\def\@citea{,\penalty\@m\ }\@ifundefined
       {b@\@citeb}{{\bf #2}\@warning
       {Citation `\@citeb' on page \thepage \space undefined}
       \global\@namedef{b@\@citeb}{{\bf ?}}}%
\hbox{\csname b@\@citeb\endcsname}}}{#1}}

\def\ref#1{\@ifundefined{r@#1}{{\bf {#1}?}
   \@ifundefined{rr@#1}{\global\@namedef{rr@#1}{}\@warning
   {Reference `#1' on page \thepage \space 
    undefined}}{}}{\edef\@tempa{\@nameuse{r@#1}}\expandafter
    \@car\@tempa \@nil\null}}

\def\pageref#1{\@ifundefined{r@#1}{{\bf {#1}?}
   \@ifundefined{rr@#1}{\global\@namedef{rr@#1}{}\@warning
   {Reference `#1' on page \thepage \space 
    undefined}}{}}{\edef\@tempa{\@nameuse{r@#1}}\expandafter
    \@cdr\@tempa\@nil\null}}