Update LuaTeX testfiles for ^@ change
[latex2e.git] / trunk / base / ltidxglo.dtx
blob73e92318933411d00a6d837a1ac7613d3dfe3e23
1 % \iffalse meta-comment
3 % Copyright 1993-2016
4 % The LaTeX3 Project and any individual authors listed elsewhere
5 % in this file.
7 % This file is part of the LaTeX base system.
8 % -------------------------------------------
10 % It may be distributed and/or modified under the
11 % conditions of the LaTeX Project Public License, either version 1.3c
12 % of this license or (at your option) any later version.
13 % The latest version of this license is in
14 %    http://www.latex-project.org/lppl.txt
15 % and version 1.3c or later is part of all distributions of LaTeX
16 % version 2005/12/01 or later.
18 % This file has the LPPL maintenance status "maintained".
20 % The list of all files belonging to the LaTeX base distribution is
21 % given in the file `manifest.txt'. See also `legal.txt' for additional
22 % information.
24 % The list of derived (unpacked) files belonging to the distribution
25 % and covered by LPPL is defined by the unpacking scripts (with
26 % extension .ins) which are part of the distribution.
28 % \fi
29 % \iffalse
30 %%% From File: ltidxglo.dtx
32 %<*driver>
33 % \fi
34 \ProvidesFile{ltidxglo.dtx}
35              [1996/01/20 v1.1e LaTeX Kernel (Index and Glossary)]
36 % \iffalse
37 \documentclass{ltxdoc}
38 \GetFileInfo{ltidxglo.dtx}
39 \title{\filename}
40 \date{\filedate}
41  \author{%
42   Johannes Braams\and
43   David Carlisle\and
44   Alan Jeffrey\and
45   Leslie Lamport\and
46   Frank Mittelbach\and
47   Chris Rowley\and
48   Rainer Sch\"opf}
50 \begin{document}
51  \MaintainedByLaTeXTeam{latex}
52  \maketitle
53  \DocInput{\filename}
54 \end{document}
55 %</driver>
56 % \fi
59 % \section{Index and Glossary Generation}
60 %  Index and Glossary commands.
62 % \DescribeMacro{\makeindex} A preamble command to turn on indexing.
64 % \DescribeMacro{\makeglossary} A preamble command to turn on making
65 % glossary entries.
67 % \DescribeMacro{\index} Make an index entry for |#1|.
69 % \DescribeMacro{\glossary} Make a glossary entry for |#1|.
71 % \StopEventually{}
74 % \changes{v1.0a}{1994/03/31}{Initial version of ltidxbib.dtx,
75 %                             split from ltherest.dtx}
76 % \changes{v1.1a}{1994/05/19}{Initial version of ltidxglo.dtx,
77 %                             split from ltidxbib.dtx}
78 % \changes{v1.1d}{1995/10/25}{Doc cleanup}
81 % \begin{oldcomments}
82 % \makeindex ==
83 %   BEGIN
84 %             \index ==  BEGIN \@bsphack
85 %                              \begingroup
86 %                                 \protect{X} == \string X\space
87 %                                  %% added 3 Feb 87 for \index commands
88 %                                  %% in \footnotes
89 %                                  re-\catcode special characters
90 %                                  to 'other'
91 %                                  \@wrindex
92 %   END
94 %  \@wrindex{ITEM} ==
95 %    BEGIN
96 %        write of {\indexentry{ITEM}{page number}}
97 %      \endgroup
98 %      \@esphack
99 %    END
101 %  INITIALIZATION:
103 %  \index == BEGIN \@bsphack
104 %                  \begingroup
105 %                     re-\catcode special characters (in case '%' there)
106 %                     \@index
107 %            END
109 %  \@index{ITEM} == BEGIN \endgroup \@esphack END
111 % Changes made 14 Apr 89 to write \glossaryentry's instead of
112 % \indexentry's on the .glo file.
113 % \end{oldcomments}
115 %    \begin{macrocode}
116 %<*2ekernel>
117 \message{index,}
118 %    \end{macrocode}
120 % \changes{v1.1b}{1994/11/04}{Removed \cs{if@filesw} from
121 %    \cs{makeindex}.}
123 % \begin{macro}{\makeindex}
124 %    \begin{macrocode}
125 \def\makeindex{%
126   \newwrite\@indexfile
127   \immediate\openout\@indexfile=\jobname.idx
128   \def\index{\@bsphack\begingroup
129              \@sanitize
130              \@wrindex}\typeout
131     {Writing index file \jobname.idx}%
132 %    \end{macrocode}
133 % \changes{v1.1e}{1996/01/20}{Make no-op after use pr/2048}
134 %    Opening the write channel should be done only once
135 %    since on some OS multiple opens are forbidden and in
136 %    any case it is useless. So we turn this into a no-op after
137 %    use.
138 %    \begin{macrocode}
139   \let\makeindex\@empty
141 \@onlypreamble\makeindex
142 %    \end{macrocode}
143 % \end{macro}
145 % \begin{macro}{\@wrindex}
146 % \changes{v1.1b}{1994/11/04}{Added \cs{protected@write} to
147 %    \cs{@wrindex}.}
148 %    \begin{macrocode}
149 \def\@wrindex#1{%
150    \protected@write\@indexfile{}%
151       {\string\indexentry{#1}{\thepage}}%
152  \endgroup
153  \@esphack}
154 %    \end{macrocode}
155 % \end{macro}
157 % \begin{macro}{\index}
158 %    \begin{macrocode}
159 \def\index{\@bsphack\begingroup \@sanitize\@index}
160 %    \end{macrocode}
161 % \end{macro}
163 % \begin{macro}{\@index}
164 %    \begin{macrocode}
165 \def\@index#1{\endgroup\@esphack}
166 %    \end{macrocode}
167 % \end{macro}
169 % \begin{macro}{\makeglossary}
170 % \changes{v1.1b}{1994/11/04}{Removed \cs{if@filesw} from
171 %    \cs{makeglossary}.}
172 %    \begin{macrocode}
173 \def\makeglossary{%
174   \newwrite\@glossaryfile
175   \immediate\openout\@glossaryfile=\jobname.glo
176   \def\glossary{\@bsphack\begingroup
177                 \@sanitize
178                 \@wrglossary}\typeout
179     {Writing glossary file \jobname.glo }%
180 %    \end{macrocode}
181 % \changes{v1.1e}{1996/01/20}{Make no-op after use pr/2048}
182 %    Opening the write channel should be done only once
183 %    since on some OS multiple opens are forbidden and in
184 %    any case it is useless. So we turn this into a no-op after
185 %    use.
186 %    \begin{macrocode}
187   \let\makeglossary\@empty
189 \@onlypreamble\makeglossary
190 %    \end{macrocode}
191 % \end{macro}
193 % \begin{macro}{\@wrglossary}
194 % \changes{v1.1b}{1994/11/04}{Added \cs{protected@write} to
195 %    \cs{@wrglossary}.}
196 %    \begin{macrocode}
197 \def\@wrglossary#1{%
198    \protected@write\@glossaryfile{}%
199       {\string\glossaryentry{#1}{\thepage}}%
200  \endgroup
201  \@esphack}
202 %    \end{macrocode}
203 % \end{macro}
205 % \begin{macro}{\glossary}
206 %    \begin{macrocode}
207 \def\glossary{\@bsphack\begingroup\@sanitize\@index}
208 %    \end{macrocode}
209 % \end{macro}
211 %    \begin{macrocode}
212 %</2ekernel>
213 %    \end{macrocode}
216 % \Finale