diff options
Diffstat (limited to 'obsolete/macros/inrstex/inrsdoc/index.tex')
-rw-r--r-- | obsolete/macros/inrstex/inrsdoc/index.tex | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/obsolete/macros/inrstex/inrsdoc/index.tex b/obsolete/macros/inrstex/inrsdoc/index.tex new file mode 100644 index 0000000000..7b705d616a --- /dev/null +++ b/obsolete/macros/inrstex/inrsdoc/index.tex @@ -0,0 +1,43 @@ + +\catcode`\|=\active %defines | as an active character in the entire document +{\obeylines \gdef|{\ttverbatim\spaceskip\ttglue\let|=\endgroup}} +%\def\ttspace{{\tt\hskip\ttglue}} + + +% indexing macros mods of texbook + + + +% ^ in non math mode are eaten up + +\def\specialhat{\ifmmode\def\next{^}\else\let\next=\xref\fi\next} +\def\xref{\relax} +\catcode`\^=\active \let ^=\specialhat + +\newswitch{silent} +\chardef\bslash=`\\ +\def\xrefswitch{\ifx\next|\let\next=\vxref % case 1 or 2, |arg| or |\arg| + \else\ifx\next\<\let\next=\anglexref % case 3, "\<arg>" means angle brackets + \else\let\next=\normalxref \fi\fi \next} % case 0, "{arg}" +\def\vxref|{\catcode`\\=\active \futurelet\next\vxrefswitch} +\def\vxrefswitch#1|{\catcode`\\=0 + \ifx\next\empty\def\xreftype{2}% + \def\next{{\tt\bslash\text}}% type 2, |\arg| + \else\def\xreftype{1}\def\next{{\tt\text}}\fi % type 1, |arg| + \edef\text{#1}\makexref} + +{\catcode`\|=0 \catcode`\\=\active |gdef\{@}} +\def\anglexref\<#1>{\def\xreftype{3}\def\text{#1}% + \def\next{\<\text>}\makexref} +\def\normalxref#1{\def\xreftype{0}\def\text{#1}\let\next=\text\makexref} +\def\makexref{{\def\space{ } + \xdef\writeit{\write\ind@file{!\text!\space\string\indpg\xreftype\space + \noexpand\number\pageno.}}\writeit} + \ifsilent\ignorespaces\else\next\fi} + + +\outer\def\indexingon{\openlistfile{ind}% file for index reminders + \def\xref{\futurelet\next\xrefswitch}} + + +\def\indexingoff{\closelistfile{ind} \def\xref{\relax}} |