comparison build-aux/texinfo.tex @ 17623:454e4b8f093e

update from texinfo
author Karl Berry <karl@freefriends.org>
date Sun, 16 Feb 2014 16:36:46 -0800
parents 95b782a0b164
children
comparison
equal deleted inserted replaced
17622:71e733c62cee 17623:454e4b8f093e
1 % texinfo.tex -- TeX macros to handle Texinfo files. 1 % texinfo.tex -- TeX macros to handle Texinfo files.
2 % 2 %
3 % Load plain if necessary, i.e., if running under initex. 3 % Load plain if necessary, i.e., if running under initex.
4 \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi 4 \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
5 % 5 %
6 \def\texinfoversion{2014-02-09.15} 6 \def\texinfoversion{2014-02-16.16}
7 % 7 %
8 % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995, 8 % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
9 % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 9 % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
10 % 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014 Free Software Foundation, Inc. 10 % 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014 Free Software Foundation, Inc.
11 % 11 %
4426 % Need these unexpandable (because we define \tt as a dummy) 4426 % Need these unexpandable (because we define \tt as a dummy)
4427 % definitions when @{ or @} appear in index entry text. Also, more 4427 % definitions when @{ or @} appear in index entry text. Also, more
4428 % complicated, when \tex is in effect and \{ is a \delimiter again. 4428 % complicated, when \tex is in effect and \{ is a \delimiter again.
4429 % We can't use \lbracecmd and \rbracecmd because texindex assumes 4429 % We can't use \lbracecmd and \rbracecmd because texindex assumes
4430 % braces and backslashes are used only as delimiters. Perhaps we 4430 % braces and backslashes are used only as delimiters. Perhaps we
4431 % should define @lbrace and @rbrace commands a la @comma. 4431 % should use @lbracechar and @rbracechar?
4432 \def\{{{\tt\char123}}% 4432 \def\{{{\tt\char123}}%
4433 \def\}{{\tt\char125}}% 4433 \def\}{{\tt\char125}}%
4434 % 4434 %
4435 % I don't entirely understand this, but when an index entry is 4435 % I don't entirely understand this, but when an index entry is
4436 % generated from a macro call, the \endinput which \scanmacro inserts 4436 % generated from a macro call, the \endinput which \scanmacro inserts
4447 % @macro funindex {WORD} 4447 % @macro funindex {WORD}
4448 % @findex xyz 4448 % @findex xyz
4449 % @end macro 4449 % @end macro
4450 % ... 4450 % ...
4451 % @funindex commtest 4451 % @funindex commtest
4452 % 4452 % This is not enough to reproduce the bug, but it gives the flavor.
4453 % The above is not enough to reproduce the bug, but it gives the flavor.
4454 % 4453 %
4455 % Sample whatsit resulting: 4454 % Sample whatsit resulting:
4456 % .@write3{\entry{xyz}{@folio }{@code {xyz@endinput }}} 4455 % .@write3{\entry{xyz}{@folio }{@code {xyz@endinput }}}
4457 % 4456 %
4458 % So: 4457 % So:
4661 % that we make for arg2 (see \parsemargdef ff.). We want all this to be 4660 % that we make for arg2 (see \parsemargdef ff.). We want all this to be
4662 % expanded for the sake of the index, so we end up just seeing "bar". 4661 % expanded for the sake of the index, so we end up just seeing "bar".
4663 \let\xeatspaces = \eatspaces 4662 \let\xeatspaces = \eatspaces
4664 } 4663 }
4665 4664
4665 % For testing: output @{ and @} in index sort strings as \{ and \}.
4666 \newif\ifusebracesinindexes
4667
4666 % \indexnofonts is used when outputting the strings to sort the index 4668 % \indexnofonts is used when outputting the strings to sort the index
4667 % by, and when constructing control sequence names. It eliminates all 4669 % by, and when constructing control sequence names. It eliminates all
4668 % control sequences and just writes whatever the best ASCII sort string 4670 % control sequences and just writes whatever the best ASCII sort string
4669 % would be for a given command (usually its argument). 4671 % would be for a given command (usually its argument).
4670 % 4672 %
4689 \def\-{}% @- shouldn't affect sorting 4691 \def\-{}% @- shouldn't affect sorting
4690 % 4692 %
4691 % Unfortunately, texindex is not prepared to handle braces in the 4693 % Unfortunately, texindex is not prepared to handle braces in the
4692 % content at all. So for index sorting, we map @{ and @} to strings 4694 % content at all. So for index sorting, we map @{ and @} to strings
4693 % starting with |, since that ASCII character is between ASCII { and }. 4695 % starting with |, since that ASCII character is between ASCII { and }.
4694 \def\{{|a}% 4696 \ifusebracesinindexes
4695 \def\lbracechar{|a}% 4697 \def\lbracechar{\lbracecmd}%
4696 % 4698 \def\rbracechar{\rbracecmd}%
4697 \def\}{|b}% 4699 \else
4698 \def\rbracechar{|b}% 4700 \def\lbracechar{|a}%
4701 \def\rbracechar{|b}%
4702 \fi
4703 \let\{=\lbracechar
4704 \let\}=\rbracechar
4705 %
4699 % 4706 %
4700 % Non-English letters. 4707 % Non-English letters.
4701 \def\AA{AA}% 4708 \def\AA{AA}%
4702 \def\AE{AE}% 4709 \def\AE{AE}%
4703 \def\DH{DZZ}% 4710 \def\DH{DZZ}%