diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/refcheck/refdemo.tex |
Initial commit
Diffstat (limited to 'macros/latex/contrib/refcheck/refdemo.tex')
-rw-r--r-- | macros/latex/contrib/refcheck/refdemo.tex | 237 |
1 files changed, 237 insertions, 0 deletions
diff --git a/macros/latex/contrib/refcheck/refdemo.tex b/macros/latex/contrib/refcheck/refdemo.tex new file mode 100644 index 0000000000..a40d2c9c5a --- /dev/null +++ b/macros/latex/contrib/refcheck/refdemo.tex @@ -0,0 +1,237 @@ +\documentclass[11pt]{article} +\usepackage{refcheck} +\textwidth=360pt +\begin{document} +\baselineskip=4.5mm +\textheight=40\baselineskip +\pagestyle{myheadings} + +\parindent=1em\parskip=0.75ex +\makeatletter + +\thispagestyle{empty} + +\enlargethispage{-8mm} + +\def\RefCheck{\textsl{Refcheck\/}} +\def\AmS{\mbox{$\mathcal{A}$\kern-0.17em\raise-2.1pt\hbox{$\mathcal{M}$}% +\kern-0.115em$\mathcal{S}$}} +\renewcommand{\refname}{{\normalsize References}} +\def\curversion{1.9.1} +\def\curvertime{2013/02/14} + +\section*{\RefCheck{\tiny${}^{\mathrm{\ \ ver. +\curversion}}_{\mathrm{\curvertime}}$} for \LaTeXe} +\markboth{\hfill\bfseries\RefCheck\ for \LaTeXe\hfill}% +{\hfill\bfseries\RefCheck\ for \LaTeXe\hfill} +This short demo file describes usage of \RefCheck\ package +with \LaTeXe. The package looks for useless labels, +unlabelled equations, unused bibliography references +and puts `keys' of labels on margins. + +To start checking, one should just write +\begin{verbatim} + \documentclass{article} + \usepackage{refcheck} +\end{verbatim} +at the beginning of document and compile the file twice. +Then, comments on references could be found in \texttt{.log} file and +in the margins. + +Consider the set of equations +\begin{eqnarray} +&&a=b\label{eq.1}\\ +&&b=c\label{eq.2}\\ +&&c=d, +\end{eqnarray} +written as +\begin{verbatim} + \begin{eqnarray} + &&a=b\label{eq.1}\\ + &&b=c\label{eq.2}\\ + &&c=d, + \end{eqnarray} +\end{verbatim} +Then the \texttt{.log} file will contains the following messages: +{\small +\begin{verbatim} + Package refcheck Warning: Unused label `eq.2' on input line 44. + Package refcheck Warning: Unlabelled equation (3) on input line 46. +\end{verbatim} +} +\noindent +because the equation (\ref{eq.1}) is +referenced here by \verb#(\ref{eq.1})#, the label {\tt eq.2} of the second +equation is not used and the last equation is numbered but it is not +labelled. + +Keys of labels are written in the marginal notes when the option +\textit{showrefs\/} (default) or the command \verb#\showrefnames# are +invoked. This regime can be set off by the option \textit{norefs} or (at +any point of text) by the command \verb#\norefnames#. + +These marks include some information on labels. Namely, useless +labels are underlined and bounded by `\texttt{?}', the mark `\unl@bld@mark' +means that the equation is unlabelled. Marks are framed for +the labels which are used in text. + +\newpage + +The package is working in the same way with bibliography. +Consider the following short list of books: + +\vspace{-1\baselineskip} + +\begin{thebibliography}{9} + \bibitem{book1}A book. + \bibitem{book2}Another book. + \bibitem{book3}Third book. +\end{thebibliography} +defined as follows +\begin{verbatim} + \begin{thebibliography}{9} + \bibitem{book1}A book. + \bibitem{book2}Another book. + \bibitem{book3}Third book. + \end{thebibliography} +\end{verbatim} +Further, we use the labels of \cite{book1,book2} with the +command \verb#\cite{book1,book2}# and do not use the label +`book3'. Then, the \texttt{.log} file will contain the following message +{\small +\begin{verbatim} + Package refcheck Warning: Unused bibitem `book3' on input line 88. +\end{verbatim}} + +Commands \verb#\showcitenames# and \verb#\nocitenames# for +bibliography are analogous to the commands \verb#\showrefnames# and +\verb#\norefnames#. They set on and off \RefCheck\ to write keys of +bibitems to output. The same function is for the options +\textit{showcites\/} (default) and \textit{nocites}. + +Options \textit{msgs\/} (default) and \textit{nomsgs\/} state whether +\RefCheck\ writes its messages to \texttt{.log} file or not. + +The check of unlabelled equations can be switched off by the option +\mbox{\textit{ignoreunlbld\/}} and on (default) by the option +\textit{chkunlbld\/}. + +\medskip + +\RefCheck\ generally works with \AmS-\LaTeX\ and \textbf{hyperref}, +but the packages must be loaded \underline{before} the \RefCheck\ package. + +\medskip + +\RefCheck\ can be used with the \textbf{xr} package. Suppose one invokes\\ +\verb#\usepackage{xr}# \verb#\externaldocument[A:]{apps}#\\ in document foo1.tex and\\ +\verb#\usepackage{xr}# \verb#\externaldocument[B:]{apps}#\\ in document foo2.tex. +Then the commands \verb#\refcheckxrdoc[A:]{foo1}# and \verb#\refcheckxrdoc[B:]{foo2}# +used in apps.tex allows to check usage of labels from apps.tex in the +external files foo1.tex and foo2.tex. + +\medskip + +Note the problem with implicitly cited labels. For +example, if there is a set of equations which are labelled with +$\,$\texttt{a1,a2,...an}$\,$ and referred in document by +\verb#(\ref{a1})--(\ref{an})#, then the labels +$\,$\texttt{a2,a3,...an-1}$\,$ cannot be recognized as `used'. + +\medskip +\bigskip + +\textbf{Summary of options and commands:} +\medskip + +\noindent +\verb#\refcheckxrdoc[prefix]{foo}# to check usage of labels +of the current document in the file foo.tex where they are used +via \verb#\usepackage{xr}# and +\verb#\externaldocument[prefix]{thisdocument}# + +\medskip + +\begin{raggedright} +\begin{tabular}{|l|l|c|l|} +\hline +Option & Command & Switch & Function\\ +\hline +showrefs$^{*}$ & \verb#\showrefnames# & on & to put keys of labels\\ +\cline{1-3} +norefs & \verb#\norefnames# & off & in the marginal notes\\ +\hline +showcites$^{*}$ & \verb#\showcitenames# & on & to put bibitem keys\\ +\cline{1-3} +nocites & \verb#\nocitenames# & off & in the marginal notes\\ +\hline +msgs$^{*}$ & \verb#\setonmsgs# & on & to write \RefCheck's\\ +\cline{1-3} +nomsgs & \verb#\setoffmsgs# & off & messages to \texttt{.log}\\ +\hline +chkunlbld$^{*}$ & \verb#\checkunlbld# & on & to check unlabelled\\ +\cline{1-3} +ignoreunlbld & \verb#\ignoreunlbld# & off & equations\\ +\hline +\end{tabular} +\end{raggedright} +\par\noindent +\mbox{\qquad}$*$ default + +\bigskip + +\def\item{\noindent\mbox{\kern0.5em$\bullet$\kern0.5em}} + +\textbf{Versions of \RefCheck, acknowledgments and bugs:} + +\item +Versions \textbf{1.0--1.3} worked with \LaTeX2.09. Many +thanks to Antonio Loria for his useful comments on those versions. +Version \textbf{1.2} of \RefCheck\ can be found in +\texttt{/tex-archive/obsolete/macros/latex209/contrib/} in CTAN. + +\item +\textbf{1.4} was the first version of \RefCheck\ for \LaTeXe, it had a +few bugs in its functionality for \AmS-\LaTeXe's \verb#\eqref#, +\verb#\tag#, \verb#split# and \verb#multline#. Many thanks to +Cornelius C. Noack and Mikhail Zotov for finding the problem. + +\item +In the version~\textbf{1.5} the bugs were removed, but it was found +(thanks to Mikhail Zotov) that the version marks \AmS-\LaTeXe's +\verb#equation*# and \verb#gather*# as unlabelled. The versions +\textbf{1.6} solved the problem. + +\item The version \textbf{1.7} (optimized code of \textbf{1.6}) was +found by Adriano Pascoletti to work incorrectly in \verb#\caption# (more +generally, when \verb#\ref#, \verb#\pageref# occur in a material +processed to \verb#\write#, in particular, to be put into \texttt{.toc}, +\texttt{.lot}, \texttt{.lof} files). + +\item The version \textbf{1.8} was intended to solve the +problem. Besides, some more work was done to provide compability with +\AmS-\LaTeX\ and \textbf{hyperref}. + +\item The version \textbf{1.9} added possibility to check usage of labels in external +files. More compability with \textbf{cite} package was achieved. + +\item The current minor version \textbf{\curversion} is intended to fix the bug discussed +at \\ +{\small\texttt{http://tex.stackexchange.com/questions/88046/problem-with-refcheck}}.\\ +Besides, the format of refcheck warnings is changed. + +\bigskip + +\textbf{New options and commands:} + +\item +Version \textbf{1.5}: \textit{msgs\/} and \textit{nomsgs\/}. + +\item +Version \textbf{1.6}: \textit{ignoreunlbld\/} and +\textit{chkunlbld\/} (suggested by Miroslav Fikar). + +\item +Version \textbf{1.9}: \verb#\refcheckxrdoc#. + +\end{document} |