From fa943c88824be38c97f683bccd10b5c12ab7cead Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 15 Jan 2007 01:15:09 +0000 Subject: ltxindex update git-svn-id: svn://tug.org/texlive/trunk@3493 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/ltxindex/README | 148 +------ Master/texmf-dist/doc/latex/ltxindex/ltxindex.pdf | Bin 0 -> 87099 bytes .../texmf-dist/source/latex/ltxindex/ltxindex.dtx | 441 +++++++++++++++++++++ .../texmf-dist/source/latex/ltxindex/ltxindex.ins | 35 ++ Master/texmf-dist/tex/latex/ltxindex/ltxindex.sty | 147 +++---- Master/texmf-dist/tpm/ltxindex.tpm | 11 +- Master/texmf/lists/ltxindex | 4 +- 7 files changed, 555 insertions(+), 231 deletions(-) create mode 100644 Master/texmf-dist/doc/latex/ltxindex/ltxindex.pdf create mode 100644 Master/texmf-dist/source/latex/ltxindex/ltxindex.dtx create mode 100644 Master/texmf-dist/source/latex/ltxindex/ltxindex.ins diff --git a/Master/texmf-dist/doc/latex/ltxindex/README b/Master/texmf-dist/doc/latex/ltxindex/README index 966fabee59f..61df56b47fd 100644 --- a/Master/texmf-dist/doc/latex/ltxindex/README +++ b/Master/texmf-dist/doc/latex/ltxindex/README @@ -1,137 +1,15 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% ltxindex.sty, a LaTeX package to typeset indices with GNU's Texindex -% Copyright (C) 2004 by Jose-Luis Rivera -% -% This program is free software; you can redistribute it and/or modify -% it under the terms of the GNU General Public License as published by -% the Free Software Foundation; either version 2, or (at your option) -% any later version. -% -% This program is distributed in the hope that it will be useful, -% but WITHOUT ANY WARRANTY; without even the implied warranty of -% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -% GNU General Public License for more details. -% -% You should have received a copy of the GNU General Public License -% along with this program; if not, write to the Free Software -% Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% WARNING!!! This code is fairly experimental. % -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% ltxindex.sty provides a simple package to produce indices with -% texindex instead of makeindex. -% In my experience, texindex is fairly simpler to use. -% If you don't need anything fancy, this package may be just for you! -% -% This package only implements the standard indices used by -% texinfo, and only defines the concept index (cp) by default. -% You can't define custom indices, and you must set up fn, ky, pg, -% tp, and vr indices on your own. -% -% Usage: -% -% Call this package in the preamble: \usepackage{ltxindex} -% -% The package implements the following commands, -% -% \cpindex{} indexes , without typesetting it in the -% main text. -% -% \cpsubindex{}{} indexes under -% , without typesetting it in the main text. -% -% \indexcp{} typesets and puts it in the index. -% -% \subindex{}{} typesets in the main -% document and puts it under in the index. -% -% You may set up fnindex, kyindex, pgindex, tpindex, and vrindex with the -% command \newindex{??}, where ?? is either fn, ky, pg, tp, or vr. -% This way, you enable commands \??index{}, which allows you to -% index in the appropriate index. -% Texinfo shortcuts \cindex, \findex, \kindex, \pindex, \tindex, and -% \vindex, are also available. -% -% \synindex{foo}{bar} makes index foo feed into index bar. -% -% \syncodeindex{foo}{bar} is similar, but puts all entries made for -% index foo inside bold. -% -% As in Texinfo, all these commands produce auxiliary files .?? -% -% Once you're done with the main body of your document, you ask -% LaTeX to typeset the index with the command \printindex{??}, wherever -% you like. Make sure you precede it with some informative heading, -% like \section*{Concept Index}. -% -% Run LaTeX on filename to produce the .aux and .?? files -% Run texindex on every .?? unsorted index file you created -% for your document. (.cp index, by default). texindex will -% create a sorted index file for every index file (.cps, by -% default). -% ReRun LaTeX to incorporate the indices. -% ReRun texindex on every index file (to secure right cross-references). -% ReRun LaTeX to put everything in order. -% -% You may avoid all this work in drafting and proofreading: -% this package prints "(Index is empty)" or "(Index is nonexistent)" -% strings in the appropriate places if the indices are unsorted or -% undefined. -% -% TODO's AND KNOWN ISSUES -% -% * two column output is somewhat clumsy; you may have to edit the -% .??s file manually to add \columnbreak's in the appropriate places. -% Moreover, there is something funny in its implementation. See below. -% * devise a more general mechanism to create arbitrary indices. -% * write some macros to modify the appearance of the index (by means -% of some commands or package options). -% * a properly documented latex (dtx) distribution. -% * PDF is not supported at all. -% -% ACKNOWLEDGEMENTS -% -% As you may see by simple inspection of the code, I just ``borrowed'' -% the code from the old latexinfo.sty, available at CTAN, and patched -% it up to run as a LaTeX package. -% Thus, all credits should go to Richard Stallman, Robert J. Chassell, -% & Michael Clarkson. -% -% CAVEATS -% -% This package is distributed along the lines of the GNU General Public -% License version 2.0, in compliance with the original license for -% latexinfo.sty. -% There are additional conditions imposed on the use --not the -% distribution-- of the package, due to the usage of the multicol.sty -% package, by Frank Mittelbach. -% In particular, even though muticol.sty is a required file for any LaTeX -% installation, you are `morally' required to pay a license fee if you -% use it as a part of a proprietary or commercially distributed product -% based on or using multicol.sty. The ltxindex package is distributed -% `gratis', so as long as you distribute or use this package for a -% non-commercialor non-proprietary end product (document or software), -% you don't acquire this moral obligation. -% Otherwise, you are morally required to pay that fee NOT because of your -% usage of ltxindex.sty, but because of the usage of multicol.sty. -% See multicol.dtx for details. -% -% Confused? Well, just comment out the lines containing the strings -% -% \RequirePackage{multicol} -% \begin{multicols}{2} -% \end{multicols} -% -% The output is ugly, but free from moral trouble. -% -% Send suggestions, bug reports, or complaints (and hopefully, bits of -% code too!) to jlrn7yahoocom. -% -% Jose-Luis Rivera -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +ltxindex is a simple package to make indices for LATEX documents with +GNU's texindex. Though missing some important functionality, texindex +is much simpler to use; and if you don't need anything fancy, such an +index may be useful. +This package only implements the standard indices used by texinfo, and +only defines the concept index (cp) by default. You can't define custom +indices (yet), and you must set up the fn, ky, pg, tp, and vr indices on +your own. Read the manual for more information on usage, plans, and +limitations. + +Good luck and happy TeXing, + +Luis. diff --git a/Master/texmf-dist/doc/latex/ltxindex/ltxindex.pdf b/Master/texmf-dist/doc/latex/ltxindex/ltxindex.pdf new file mode 100644 index 00000000000..855690103b8 Binary files /dev/null and b/Master/texmf-dist/doc/latex/ltxindex/ltxindex.pdf differ diff --git a/Master/texmf-dist/source/latex/ltxindex/ltxindex.dtx b/Master/texmf-dist/source/latex/ltxindex/ltxindex.dtx new file mode 100644 index 00000000000..aa3fa836565 --- /dev/null +++ b/Master/texmf-dist/source/latex/ltxindex/ltxindex.dtx @@ -0,0 +1,441 @@ +%\iffalse meta-comment +% ltxindex.dtx generated using /usr/local/bin/makedtx version 0.9b (c) Nicola Talbot +% Command line args: +% -src "ltxindex\.sty=>ltxindex.sty" +% -doc "README" +% ltxindex +% Created on 2006/11/26 15:10 +% +% ltxindex.sty, a LaTeX package to typeset indices with GNU's Texindex +% Copyright (C) 2004 by Richard Stallman, Robert J. Chassell, +% Michael Clarkson, \& Luis Rivera. +% +% This program is free software; you can redistribute it and/or modify +% it under the terms of the GNU General Public License as published by +% the Free Software Foundation; either version 2, or (at your option) +% any later version. +% +% This program is distributed in the hope that it will be useful, +% but WITHOUT ANY WARRANTY; without even the implied warranty of +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +% GNU General Public License for more details. +% +% You should have received a copy of the GNU General Public License +% along with this program; if not, write to the Free Software +% Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +% +%\fi +% +%\iffalse +%\NeedsTeXFormat{LaTeX2e}[1995/06/01] +%\ProvidesPackage{ltxindex} +% [2004/06/30 v0.1b ltxindex: LaTeX indexing, texindex style] +%\fi +% +%\iffalse +%<*driver> +\documentclass{ltxdoc} +\usepackage{ltxindex} +\newcommand{\texindex}{\texttt{texindex}} +\newcommand{\ltxindex}{\textsf{ltxindex}} +\OnlyDescription +\begin{document} + \DocInput{ltxindex.dtx} +\end{document} +% +%\fi +% +% \CheckSum{541} +% +% \CharacterTable +% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +% Digits \0\1\2\3\4\5\6\7\8\9 +% Exclamation \! Double quote \" Hash (number) \# +% Dollar \$ Percent \% Ampersand \& +% Acute accent \' Left paren \( Right paren \) +% Asterisk \* Plus \+ Comma \, +% Minus \- Point \. Solidus \/ +% Colon \: Semicolon \; Less than \< +% Equals \= Greater than \> Question mark \? +% Commercial at \@ Left bracket \[ Backslash \\ +% Right bracket \] Circumflex \^ Underscore \_ +% Grave accent \` Left brace \{ Vertical bar \| +% Right brace \} Tilde \~} +% +% \changes{0.1}{2004/06/30}{First Release} +% \changes{0.1b}{2007/12/14}{Made a first dtx file} +% +% \GetFileInfo{ltxindex.sty} +% +% \title{\ltxindex: Making \LaTeX\ indexes with GNU's \texindex% +% \thanks{This file documents version~\fileversion, as of~\filedate. +% Please send comments and bug reports to jlrn77 at gmail dot com.}} +% \author{Luis Rivera} +% \date{December 14, 2006} +% \maketitle +% +% \ltxindex\ is a simple package to make indices for \LaTeX\ +% documents with \texindex\ instead of |makeindex|. +% Though missing some important functionality, \texindex\ seems much +% simpler to use; +% and if you don't need anything fancy, such an index may be useful. +% +% This package only implements the standard indices used by +% texinfo, and only defines the concept index (cp) by default. +% You can't define custom indices (yet), and you must set up the fn, ky, pg, +% tp, and vr indices on your own. +% +% \section{Usage} +% +% Call this package in the preamble: |\usepackage{ltxindex}| +% +% The package implements the following commands, +% +% |\cpindex|\marg{concept} indexes \emph{concept}, without typesetting it in the +% main text. +% +% |\cpsubindex|\marg{concept}\marg{subconcept} indexes \emph{subconcept} under +% \emph{concept}, without typesetting it in the main text. +% +% |\indexcp|\marg{concept} typesets \emph{concept} and puts it in the |cp| index. +% +% |\subindex|\marg{subconcept}\marg{concept} typesets \emph{subconcept} in the main +% document and puts it under \emph{concept} in the |cp| index. +% +% You may set up fnindex, kyindex, pgindex, tpindex, and vrindex with the +% command |\newindex|\marg{??}, where |??| is either fn, ky, pg, tp, or vr. +% This way, you enable commands |\??index|\marg{word}, which allows you to +% index \emph{word} in the appropriate index. +% Texinfo's shortcuts |\cindex|, |\findex|, |\kindex|, |\pindex|, |\tindex|, and +% |\vindex|, are also available. +% +% |\synindex|\marg{foo}\marg{bar} subsumes index \emph{foo} under index \emph{bar}. +% +% |\syncodeindex|\marg{foo}\marg{bar} is similar, but typesets all entries for +% index \emph{foo} in boldface. +% +% As in Texinfo, all these commands produce auxiliary files |.??| +% +% Once you're done with the main body of your document, you ask +% \LaTeX\ to typeset the index with the command |\printindex|\marg{??}, wherever +% you like. Make sure you precede it with some informative heading, +% like |\section*{Concept Index}|. In short: +% +% \begin{description} +% \item{Run} \LaTeX\ on filename to produce the |.aux| and |.??| files +% \item{Run} \texindex\ on every unsorted index file (|.??|) you created +% for your document (|.cp|, by default). \texindex\ will +% create a sorted index file for your index file (|.cps|, by +% default). +% \item{ReRun} \LaTeX\ to incorporate the indices. +% \item{ReRun} \texindex\ on every index file (to ensure right cross-references). +% \item{ReRun} \LaTeX\ to put everything in order. +% \end{description} +% +% You may avoid all this work in drafting and proofreading: +% the package prints ``(Index is empty)'' or ``(Index is nonexistent)'' +% in the appropriate places if the indices are unsorted or +% undefined. +% +% \section{Acknowledgements} +% +% As you may see by simple inspection of the code, I just ``borrowed'' +% the code from the old |latexinfo.sty|, available on CTAN, and patched +% it up to run as a \LaTeX\ package. +% Thus, all credits should go to Richard Stallman, Robert J. Chassell, +% \& Michael Clarkson. +% +% \section{To Do's and Warnings} +% +% \begin{itemize} +% \item Two column output is somewhat clumsy; you may have to edit the +% |.??s| file manually to add |\columnbreak|'s in the appropriate places. +% \item Devise a more general mechanism to create arbitrary indices. +% \item Write some macros to modify the appearance of the index (by means +% of some commands or package options). +% \item PDF is not supported at all. +% \item Documentation is wanting; I may improve it when I implement +% user-defined indexes. +% \item There is something odd about the license of this package. +% +% This package is distributed along the lines of the GNU General Public +% License version 2.0, in compliance with the original license for +% |latexinfo.sty|. +% +% There are additional conditions imposed on the use ---not the +% distribution--- of the package, due to the usage of the \textsf{multicol} +% package, by Frank Mittelbach. +% Even though \textsf{multicol} is a required file for any \LaTeX\ +% installation, you are \emph{morally} required to pay a license fee if you +% use it as a part of a proprietary or commercially distributed product +% based on or using \textsf{multicol}. The \ltxindex\ package is distributed +% `gratis', so as long as you distribute or use this package for a +% non-commercial or non-proprietary end product (document or software), +% you don't acquire this moral obligation. +% Otherwise, you are morally required to pay that fee, because of the usage +% of \textsf{multicol}. +% See the file |multicol.dtx| for details. +% +% Confused? Well, just comment out the lines containing the strings +% \begin{verbatim} +% \RequirePackage{multicol} +% \begin{multicols}{2} +% \end{multicols} +% \end{verbatim} +% The output will be ugly, but free from moral trouble. +% +% I may get around this odd situation when I implement another way of setting +% multiple columns independently of Mittelbach's package. +% \end{itemize} +% +%\StopEventually{} +% +%\section{The Code} +% +% This package may require the package \textsf{multicol} to typeset the index +% in a two column environment. This should be the default behavior, save +% the case documented above. +% \begin{macrocode} +\RequirePackage{multicol} +% \end{macrocode} +% Index generation facilities +% +% Define the texinfo user-accessible indexing commands for backwards +% compatability. +% +% \begin{macrocode} +\def\cindex{\cpindex} +\def\pindex{\pgindex} +\def\vindex{\vrindex} +\def\tindex{\tpindex} +\def\kindex{\kyindex} +\def\findex{\fnindex} +% \end{macrocode} +% +% |\newindex{foo}| defines an index named foo. +% It automatically defines |\fooindex| such that +% |\fooindex ...rest of line...| puts an entry in the index foo. +% It also defines |\fooindfile| to be the number of the output channel for +% the file that accumulates this index. The file's extension is foo. +% The name of an index should be no more than 2 characters long +% for the sake of vms. +% \begin{macrocode} +\def\newindex#1{\csname newindex#1\endcsname} +% \end{macrocode} +% +% Yes I know this could be done shorter, but safer?? +% +% \begin{macrocode} +\def\newindexcp{\if@filesw \newwrite\@cpindexfile + \immediate\openout\@cpindexfile=\jobname.cp + \def\cpindex{\@bsphack\begingroup + \def\protect####1{\string####1\space}\@sanitize + \@wrindex\@cpindexfile}% + \def\cpsubindex{\@bsphack\begingroup + \def\protect####1{\string####1\space}\@sanitize + \@wrsubindex\@cpindexfile}% + \def\cpindexbold{\@bsphack\begingroup + \def\protect####1{\string####1\space}\@sanitize + \@wrindexbold\@cpindexfile} + \typeout{Writing concepts index file \jobname.cp }% + \fi} + +\def\cpindex{\@bsphack\begingroup \@sanitize\@index} +\def\cpsubindex{\@bsphack\begingroup \@sanitize\@index} +\def\cpindexbold{\@bsphack\begingroup \@sanitize\@index} + +\def\@wrindex#1#2{\let\thepage\relax + \xdef\@gtempa{\write#1{\string \entry{#2}{\thepage}{#2}}}\endgroup + \def\@tempa{}\def\thing{#2}\ifx\thing\@tempa\relax\else\@gtempa\fi + \if@nobreak \ifvmode\nobreak\fi\fi\@esphack} + +\def\@wrindexbold#1#2{\let\thepage\relax \let\bf\relax + \xdef\@gtempa{\write#1{\string \entry{#2}{\b{\thepage}}{#2}}}\endgroup + \def\@tempa{}\def\thing{#2}\ifx\thing\@tempa\relax\else\@gtempa\fi + \if@nobreak \ifvmode\nobreak\fi\fi\@esphack} + +\def\@wrsubindex#1#2#3{\let\thepage\relax + \xdef\@gtempa{\write#1{\string \entry{#2 #3}{\thepage}{#2}{#3}}}\endgroup% + \@gtempa + \if@nobreak \ifvmode\nobreak\fi\fi\@esphack} + +\def\@index#1{\endgroup\@esphack} + +\def\pgindex{\@bsphack\begingroup \@sanitize\@index} +\def\newindexpg{\if@filesw \newwrite\@pgindexfile + \immediate\openout\@pgindexfile=\jobname.pg + \def\pgindex{\@bsphack\begingroup + \def\protect####1{\string####1\space}\@sanitize + \@wrindex\@pgindexfile} + \def\pgindexbold{\@bsphack\begingroup + \def\protect####1{\string####1\space}\@sanitize + \@wrindexbold\@pgindexfile} + \typeout{Writing index file \jobname.pg }\fi} + +\def\pgindex{\@bsphack\begingroup \@sanitize\@index} +\def\pgindexbold{\@bsphack\begingroup \@sanitize\@index} + +\def\newindexvr{\if@filesw \newwrite\@vrindexfile + \immediate\openout\@vrindexfile=\jobname.vr + \def\vrindex{\@bsphack\begingroup + \def\protect####1{\string####1\space}\@sanitize + \@wrindex\@vrindexfile} + \def\vrindexbold{\@bsphack\begingroup + \def\protect####1{\string####1\space}\@sanitize + \@wrindexbold\@vrindexfile} + \typeout{Writing variable index file \jobname.vr }\fi} + +\def\vrindex{\@bsphack\begingroup \@sanitize\@index} +\def\vrindexbold{\@bsphack\begingroup \@sanitize\@index} + +\def\newindextp{\if@filesw \newwrite\@tpindexfile + \immediate\openout\@tpindexfile=\jobname.tp + \def\tpindex{\@bsphack\begingroup + \def\protect####1{\string####1\space}\@sanitize + \@wrindex\@tpindexfile} + \def\tpindexbold{\@bsphack\begingroup + \def\protect####1{\string####1\space}\@sanitize + \@wrindexbold\@tpindexfile} + \typeout{Writing datatype index file \jobname.tp }\fi} + +\def\tpindex{\@bsphack\begingroup \@sanitize\@index} +\def\tpindexbold{\@bsphack\begingroup \@sanitize\@index} + +\def\newindexky{\if@filesw + \newwrite\@kyindexfile + \immediate\openout\@kyindexfile=\jobname.ky + \def\kyindex{\@bsphack\begingroup + \def\protect####1{\string####1\space}\@sanitize + \@wrindex\@kyindexfile}\typeout{Writing key index file \jobname.ky} + \fi} + +\def\kyindex{\@bsphack\begingroup \@sanitize\@index} +\def\kyindexbold{\@bsphack\begingroup \@sanitize\@index} + +\def\newindexfn{\if@filesw \newwrite\@fnindexfile + \immediate\openout\@fnindexfile=\jobname.fn + \def\fnindex{\@bsphack\begingroup + \def\protect####1{\string####1\space}\@sanitize + \@wrindex\@fnindexfile} + \def\fnindexbold{\@bsphack\begingroup + \def\protect####1{\string####1\space}\@sanitize + \@wrindexbold\@fnindexfile} + \typeout{Writing function index file \jobname.fn }\fi} + +\def\fnindex{\@bsphack\begingroup \@sanitize\@index} +\def\fnindexbold{\@bsphack\begingroup \@sanitize\@index} +% \end{macrocode} +% +% |\synindex{foo}{bar}| makes index foo feed into index bar. +% +% \begin{macrocode} +\def\synindex#1#2{\expandafter\xdef \csname @#1index\endcsname{% + \noexpand\csname @#2index\endcsname}% +\expandafter \chardef \csname @#1indexfile\endcsname=\csname @#2indexfile\endcsname} +% \end{macrocode} +% +% |\syncodeindex{foo}{bar}| similar, but put all entries made for index foo +% inside bold. +% +% \begin{macrocode} +\def\syncodeindex#1#2{% +\expandafter\let\expandafter\synindexfoo\expandafter=\csname#2indfile\endcsname +\expandafter\let\csname#1indfile\endcsname=\synindexfoo +\expandafter\xdef\csname#1index\endcsname{% % Define \xxxindex +\csname#1boldindex\endcsname{#2}}% +} +% \end{macrocode} +% +% Define the macros used in formatting output of the sorted index material. +% This is what you call to cause a particular index to get printed. +% Write |\section*{Function Index}| to |\printindex{fn}| +% +% \begin{macrocode} +\newskip\secondaryindent +\secondaryindent=0.5cm +% \end{macrocode} +% +% In case index foo is undefined, or sorted index |foo.??s| is empty... +% +% \begin{macrocode} +\ifx\putwordIndexNonexistent\undefined + \gdef\putwordIndexNonexistent{(Index is nonexistent)} +\fi +\ifx\putwordIndexIsEmpty\undefined + \gdef\putwordIndexIsEmpty{(Index is empty)} +\fi +% \end{macrocode} +% +% The command |\printindex| typesets the index in the appropriate place. +% This is the piece of code where the \textsf{multicol} package is used, +% and some replacement is needed. +% +% \begin{macrocode} +\def\printindex#1{ +\def\indexbackslash{\rawbackslashxx} +\tolerance=9500 \advance\baselineskip -1pt +\openin 1 \jobname.#1s +\ifeof 1 + \putwordIndexNonexistent + \else + \read 1 to \temp + \ifeof 1 + \putwordIndexIsEmpty + \else + \begin{multicols}{2} + \input \jobname.#1s + \end{multicols} + \fi +\fi +\closein 1 +} +% \end{macrocode} +% +% These macros are used by the sorted index file itself. +% Change them to control the appearance of the index. +% +% \begin{macrocode} +\def\Dotsbox{\hbox to 1em{\hss.\hss}} % Used by index macros +\def\pline{\hbox to\hsize} + +\def\initial#1{% +{\bigbreak\pline{\large\bf#1\hfill}\kern 2pt\penalty3000}} + +\def\entry #1#2{ +{\parfillskip=0in \parskip=0in \parindent=0in \small +\hangindent=1in \hangafter=1% +\noindent\hbox{#1}\leaders\Dotsbox\hskip 0pt plus 1filll\relax #2\par +}} + +\def\primary #1{\pline{\small#1\hfil}} + +\def\secondary #1#2{ +{\parfillskip=0in \parskip=0in \small +\hangindent =1in \hangafter=1 +\noindent\hskip\secondaryindent\hbox{#1}\leaders\Dotsbox\hskip 0pt plus 1filll#2\par +}} +% \end{macrocode} +% +% Args are the skip and penalty (usually negative) +% +% \begin{macrocode} +\def\dobreak#1#2{\par\ifdim\lastskip<#1\removelastskip\penalty#2\vskip#1\fi} +% \end{macrocode} +% +% Now we set up the default concept index... +% +% \begin{macrocode} +\newindex{cp} +% \end{macrocode} +% +% ...and two useful macros to save typing time +% +% \begin{macrocode} +\newcommand{\indexcp}[1]{#1\cpindex{#1}} +\newcommand{\subindexcp}[2]{#1\cpsubindex{#2}{#1}} +% \end{macrocode} +% +% et voil\`a! +% +%\Finale diff --git a/Master/texmf-dist/source/latex/ltxindex/ltxindex.ins b/Master/texmf-dist/source/latex/ltxindex/ltxindex.ins new file mode 100644 index 00000000000..b3744de7e7d --- /dev/null +++ b/Master/texmf-dist/source/latex/ltxindex/ltxindex.ins @@ -0,0 +1,35 @@ +% ltxindex.ins generated using /usr/local/bin/makedtx version 0.9b 2006/11/26 15:10 +\input docstrip +\keepsilent +\usedir{tex/latex/ltxindex} +\preamble + + ltxindex.sty, a LaTeX package to typeset indices with GNU's Texindex + Copyright (C) 2004 by Richard Stallman, Robert J. Chassell, + Michael Clarkson, \& Luis Rivera. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + + WARNING!!! This code is fairly experimental. + +\endpreamble + +\askforoverwritefalse + +\generate{\file{ltxindex.sty}{\usepreamble\defaultpreamble +\usepostamble\defaultpostamble\from{ltxindex.dtx}{ltxindex,package}} +} + +\endbatchfile diff --git a/Master/texmf-dist/tex/latex/ltxindex/ltxindex.sty b/Master/texmf-dist/tex/latex/ltxindex/ltxindex.sty index 6e42246fa5c..ffe45e93ec8 100644 --- a/Master/texmf-dist/tex/latex/ltxindex/ltxindex.sty +++ b/Master/texmf-dist/tex/latex/ltxindex/ltxindex.sty @@ -1,60 +1,42 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% ltxindex.sty, a LaTeX package to typeset indices with GNU's Texindex -% Copyright (C) 2004 by Jose-Luis Rivera -% -% This program is free software; you can redistribute it and/or modify -% it under the terms of the GNU General Public License as published by -% the Free Software Foundation; either version 2, or (at your option) -% any later version. -% -% This program is distributed in the hope that it will be useful, -% but WITHOUT ANY WARRANTY; without even the implied warranty of -% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -% GNU General Public License for more details. -% -% You should have received a copy of the GNU General Public License -% along with this program; if not, write to the Free Software -% Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% WARNING!!! This code is fairly experimental. % -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% - - +%% +%% This is file `ltxindex.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% ltxindex.dtx (with options: `ltxindex,package') +%% +%% ltxindex.sty, a LaTeX package to typeset indices with GNU's Texindex +%% Copyright (C) 2004 by Richard Stallman, Robert J. Chassell, +%% Michael Clarkson, \& Luis Rivera. +%% +%% This program is free software; you can redistribute it and/or modify +%% it under the terms of the GNU General Public License as published by +%% the Free Software Foundation; either version 2, or (at your option) +%% any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +%% +%% WARNING!!! This code is fairly experimental. +%% \NeedsTeXFormat{LaTeX2e}[1995/06/01] \ProvidesPackage{ltxindex} - [2004/06/30 v0.1] -\message{indexing, texindex style} - + [2004/06/30 v0.1b ltxindex: LaTeX indexing, texindex style] \RequirePackage{multicol} - -% Index generation facilities - -% Define the texinfo user-accessible indexing commands for backwards -% compatability. - \def\cindex{\cpindex} \def\pindex{\pgindex} \def\vindex{\vrindex} \def\tindex{\tpindex} \def\kindex{\kyindex} \def\findex{\fnindex} - - -% \newindex {foo} defines an index named foo. -% It automatically defines \fooindex such that -% \fooindex ...rest of line... puts an entry in the index foo. -% It also defines \fooindfile to be the number of the output channel for -% the file that accumulates this index. The file's extension is foo. -% The name of an index should be no more than 2 characters long -% for the sake of vms. - \def\newindex#1{\csname newindex#1\endcsname} - -% Yes I know this could be done shorter, but safer?? - \def\newindexcp{\if@filesw \newwrite\@cpindexfile \immediate\openout\@cpindexfile=\jobname.cp \def\cpindex{\@bsphack\begingroup @@ -84,8 +66,8 @@ \if@nobreak \ifvmode\nobreak\fi\fi\@esphack} \def\@wrsubindex#1#2#3{\let\thepage\relax - \xdef\@gtempa{\write#1{\string \entry{#2 #3}{\thepage}{#2}{#3}}}\endgroup% - \@gtempa +\xdef\@gtempa{\write#1{\string \entry{#2 #3}{\thepage}{#2}{#3}}}\endgroup% +\@gtempa \if@nobreak \ifvmode\nobreak\fi\fi\@esphack} \def\@index#1{\endgroup\@esphack} @@ -99,7 +81,7 @@ \def\pgindexbold{\@bsphack\begingroup \def\protect####1{\string####1\space}\@sanitize \@wrindexbold\@pgindexfile} - \typeout{Writing index file \jobname.pg }\fi} +\typeout{Writing index file \jobname.pg }\fi} \def\pgindex{\@bsphack\begingroup \@sanitize\@index} \def\pgindexbold{\@bsphack\begingroup \@sanitize\@index} @@ -112,7 +94,7 @@ \def\vrindexbold{\@bsphack\begingroup \def\protect####1{\string####1\space}\@sanitize \@wrindexbold\@vrindexfile} - \typeout{Writing variable index file \jobname.vr }\fi} +\typeout{Writing variable index file \jobname.vr }\fi} \def\vrindex{\@bsphack\begingroup \@sanitize\@index} \def\vrindexbold{\@bsphack\begingroup \@sanitize\@index} @@ -125,16 +107,18 @@ \def\tpindexbold{\@bsphack\begingroup \def\protect####1{\string####1\space}\@sanitize \@wrindexbold\@tpindexfile} - \typeout{Writing datatype index file \jobname.tp }\fi} +\typeout{Writing datatype index file \jobname.tp }\fi} \def\tpindex{\@bsphack\begingroup \@sanitize\@index} \def\tpindexbold{\@bsphack\begingroup \@sanitize\@index} -\def\newindexky{\if@filesw \newwrite\@kyindexfile +\def\newindexky{\if@filesw + \newwrite\@kyindexfile \immediate\openout\@kyindexfile=\jobname.ky \def\kyindex{\@bsphack\begingroup - \def\protect####1{\string####1\space}\@sanitize - \@wrindex\@kyindexfile}\typeout{Writing key index file \jobname.ky }\fi} + \def\protect####1{\string####1\space}\@sanitize + \@wrindex\@kyindexfile}\typeout{Writing key index file \jobname.ky} + \fi} \def\kyindex{\@bsphack\begingroup \@sanitize\@index} \def\kyindexbold{\@bsphack\begingroup \@sanitize\@index} @@ -147,60 +131,45 @@ \def\fnindexbold{\@bsphack\begingroup \def\protect####1{\string####1\space}\@sanitize \@wrindexbold\@fnindexfile} - \typeout{Writing function index file \jobname.fn }\fi} +\typeout{Writing function index file \jobname.fn }\fi} \def\fnindex{\@bsphack\begingroup \@sanitize\@index} \def\fnindexbold{\@bsphack\begingroup \@sanitize\@index} - -% \synindex{foo}{bar} makes index foo feed into index bar. \def\synindex#1#2{\expandafter\xdef \csname @#1index\endcsname{% - \noexpand\csname @#2index\endcsname}% +\noexpand\csname @#2index\endcsname}% \expandafter \chardef \csname @#1indexfile\endcsname=\csname @#2indexfile\endcsname} - -% \syncodeindex{foo}{bar} similar, but put all entries made for index foo -% inside bold. \def\syncodeindex#1#2{% \expandafter\let\expandafter\synindexfoo\expandafter=\csname#2indfile\endcsname \expandafter\let\csname#1indfile\endcsname=\synindexfoo -\expandafter\xdef\csname#1index\endcsname{% % Define \xxxindex +\expandafter\xdef\csname#1index\endcsname{% % Define \xxxindex \csname#1boldindex\endcsname{#2}}% } - -% Define the macros used in formatting output of the sorted index material. -% This is what you call to cause a particular index to get printed. -% Write -% \section*{Function Index} -% \printindex{fn} - \newskip\secondaryindent \secondaryindent=0.5cm - -% In case index foo is undefined, or sorted index foo.??s is empty... -\ifx\putwordIndexNonexistent\undefined \gdef\putwordIndexNonexistent{(Index is nonexistent)}\fi -\ifx\putwordIndexIsEmpty\undefined \gdef\putwordIndexIsEmpty{(Index is empty)}\fi - +\ifx\putwordIndexNonexistent\undefined + \gdef\putwordIndexNonexistent{(Index is nonexistent)} +\fi +\ifx\putwordIndexIsEmpty\undefined + \gdef\putwordIndexIsEmpty{(Index is empty)} +\fi \def\printindex#1{ \def\indexbackslash{\rawbackslashxx} \tolerance=9500 \advance\baselineskip -1pt \openin 1 \jobname.#1s -\ifeof 1 - \putwordIndexNonexistent - \else +\ifeof 1 + \putwordIndexNonexistent + \else \read 1 to \temp \ifeof 1 \putwordIndexIsEmpty - \else + \else \begin{multicols}{2} \input \jobname.#1s \end{multicols} \fi \fi -\closein 1 +\closein 1 } - -% These macros are used by the sorted index file itself. -% Change them to control the appearance of the index. - \def\Dotsbox{\hbox to 1em{\hss.\hss}} % Used by index macros \def\pline{\hbox to\hsize} @@ -220,16 +189,10 @@ \hangindent =1in \hangafter=1 \noindent\hskip\secondaryindent\hbox{#1}\leaders\Dotsbox\hskip 0pt plus 1filll#2\par }} - -%%% Args are the skip and penalty (usually negative) \def\dobreak#1#2{\par\ifdim\lastskip<#1\removelastskip\penalty#2\vskip#1\fi} - -% Now we set up the default concept index... \newindex{cp} - -% ...and two useful macros to save typing time \newcommand{\indexcp}[1]{#1\cpindex{#1}} \newcommand{\subindexcp}[2]{#1\cpsubindex{#2}{#1}} - -% et voil\`a! \endinput +%% +%% End of file `ltxindex.sty'. diff --git a/Master/texmf-dist/tpm/ltxindex.tpm b/Master/texmf-dist/tpm/ltxindex.tpm index b20430c2641..e6b9aa08a12 100644 --- a/Master/texmf-dist/tpm/ltxindex.tpm +++ b/Master/texmf-dist/tpm/ltxindex.tpm @@ -3,7 +3,7 @@ ltxindex Package - 2006/01/09 00:44:40 + 2007/01/10 14:01:34 1.0 rahtz @@ -19,14 +19,19 @@ commands available in Texinfo by default. 33508 - + texmf-dist/tex/latex/ltxindex/ltxindex.sty texmf-dist/tpm/ltxindex.tpm - + texmf-dist/doc/latex/ltxindex/README texmf-dist/doc/latex/ltxindex/copying.txt +texmf-dist/doc/latex/ltxindex/ltxindex.pdf + +texmf-dist/source/latex/ltxindex/ltxindex.dtx +texmf-dist/source/latex/ltxindex/ltxindex.ins + Package/ltxindex diff --git a/Master/texmf/lists/ltxindex b/Master/texmf/lists/ltxindex index de891f3305e..d2f7124653c 100644 --- a/Master/texmf/lists/ltxindex +++ b/Master/texmf/lists/ltxindex @@ -1,6 +1,8 @@ texmf-dist/doc/latex/ltxindex/README texmf-dist/doc/latex/ltxindex/copying.txt - +texmf-dist/doc/latex/ltxindex/ltxindex.pdf +texmf-dist/source/latex/ltxindex/ltxindex.dtx +texmf-dist/source/latex/ltxindex/ltxindex.ins texmf-dist/tex/latex/ltxindex/ltxindex.sty texmf-dist/tpm/ltxindex.tpm -- cgit v1.2.3