diff options
| author | Paul Eggert | 2011-05-27 09:58:43 -0700 |
|---|---|---|
| committer | Paul Eggert | 2011-05-27 09:58:43 -0700 |
| commit | 842b28a0658be1d3afdf0dbda876c4c354d3672c (patch) | |
| tree | 724d281966fb3f0aa6b6644a48ce42253a0765a4 /doc/misc | |
| parent | a9f737eef69ffe03dd045df555300ae6b41d0edf (diff) | |
| download | emacs-842b28a0658be1d3afdf0dbda876c4c354d3672c.tar.gz emacs-842b28a0658be1d3afdf0dbda876c4c354d3672c.zip | |
* doc/misc/texinfo.tex, lib/getopt.c, lib/intprops.h: Merge from gnulib.
Diffstat (limited to 'doc/misc')
| -rw-r--r-- | doc/misc/texinfo.tex | 109 |
1 files changed, 78 insertions, 31 deletions
diff --git a/doc/misc/texinfo.tex b/doc/misc/texinfo.tex index 47837c938c8..fd22fd68567 100644 --- a/doc/misc/texinfo.tex +++ b/doc/misc/texinfo.tex | |||
| @@ -3,7 +3,7 @@ | |||
| 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{2011-05-11.16} | 6 | \def\texinfoversion{2011-05-23.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, |
| @@ -693,15 +693,6 @@ where each line of input produces a line of output.} | |||
| 693 | 693 | ||
| 694 | \newdimen\mil \mil=0.001in | 694 | \newdimen\mil \mil=0.001in |
| 695 | 695 | ||
| 696 | % Old definition--didn't work. | ||
| 697 | %\parseargdef\need{\par % | ||
| 698 | %% This method tries to make TeX break the page naturally | ||
| 699 | %% if the depth of the box does not fit. | ||
| 700 | %{\baselineskip=0pt% | ||
| 701 | %\vtop to #1\mil{\vfil}\kern -#1\mil\nobreak | ||
| 702 | %\prevdepth=-1000pt | ||
| 703 | %}} | ||
| 704 | |||
| 705 | \parseargdef\need{% | 696 | \parseargdef\need{% |
| 706 | % Ensure vertical mode, so we don't make a big box in the middle of a | 697 | % Ensure vertical mode, so we don't make a big box in the middle of a |
| 707 | % paragraph. | 698 | % paragraph. |
| @@ -3227,7 +3218,7 @@ end | |||
| 3227 | \finishedtitlepagetrue | 3218 | \finishedtitlepagetrue |
| 3228 | } | 3219 | } |
| 3229 | 3220 | ||
| 3230 | %%% Macros to be used within @titlepage: | 3221 | % Macros to be used within @titlepage: |
| 3231 | 3222 | ||
| 3232 | \let\subtitlerm=\tenrm | 3223 | \let\subtitlerm=\tenrm |
| 3233 | \def\subtitlefont{\subtitlerm \normalbaselineskip = 13pt \normalbaselines} | 3224 | \def\subtitlefont{\subtitlerm \normalbaselineskip = 13pt \normalbaselines} |
| @@ -3260,7 +3251,7 @@ end | |||
| 3260 | } | 3251 | } |
| 3261 | 3252 | ||
| 3262 | 3253 | ||
| 3263 | %%% Set up page headings and footings. | 3254 | % Set up page headings and footings. |
| 3264 | 3255 | ||
| 3265 | \let\thispage=\folio | 3256 | \let\thispage=\folio |
| 3266 | 3257 | ||
| @@ -3959,9 +3950,9 @@ end | |||
| 3959 | \setbox0=\vbox{X}\global\multitablelinespace=\the\baselineskip | 3950 | \setbox0=\vbox{X}\global\multitablelinespace=\the\baselineskip |
| 3960 | \global\advance\multitablelinespace by-\ht0 | 3951 | \global\advance\multitablelinespace by-\ht0 |
| 3961 | \fi | 3952 | \fi |
| 3962 | %% Test to see if parskip is larger than space between lines of | 3953 | % Test to see if parskip is larger than space between lines of |
| 3963 | %% table. If not, do nothing. | 3954 | % table. If not, do nothing. |
| 3964 | %% If so, set to same dimension as multitablelinespace. | 3955 | % If so, set to same dimension as multitablelinespace. |
| 3965 | \ifdim\multitableparskip>\multitablelinespace | 3956 | \ifdim\multitableparskip>\multitablelinespace |
| 3966 | \global\multitableparskip=\multitablelinespace | 3957 | \global\multitableparskip=\multitablelinespace |
| 3967 | \global\advance\multitableparskip-7pt %% to keep parskip somewhat smaller | 3958 | \global\advance\multitableparskip-7pt %% to keep parskip somewhat smaller |
| @@ -5536,14 +5527,13 @@ end | |||
| 5536 | % (including whitespace, linebreaking, etc. around it), | 5527 | % (including whitespace, linebreaking, etc. around it), |
| 5537 | % given all the information in convenient, parsed form. | 5528 | % given all the information in convenient, parsed form. |
| 5538 | 5529 | ||
| 5539 | %%% Args are the skip and penalty (usually negative) | 5530 | % Args are the skip and penalty (usually negative) |
| 5540 | \def\dobreak#1#2{\par\ifdim\lastskip<#1\removelastskip\penalty#2\vskip#1\fi} | 5531 | \def\dobreak#1#2{\par\ifdim\lastskip<#1\removelastskip\penalty#2\vskip#1\fi} |
| 5541 | 5532 | ||
| 5542 | %%% Define plain chapter starts, and page on/off switching for it | ||
| 5543 | % Parameter controlling skip before chapter headings (if needed) | 5533 | % Parameter controlling skip before chapter headings (if needed) |
| 5544 | |||
| 5545 | \newskip\chapheadingskip | 5534 | \newskip\chapheadingskip |
| 5546 | 5535 | ||
| 5536 | % Define plain chapter starts, and page on/off switching for it. | ||
| 5547 | \def\chapbreak{\dobreak \chapheadingskip {-4000}} | 5537 | \def\chapbreak{\dobreak \chapheadingskip {-4000}} |
| 5548 | \def\chappager{\par\vfill\supereject} | 5538 | \def\chappager{\par\vfill\supereject} |
| 5549 | % Because \domark is called before \chapoddpage, the filler page will | 5539 | % Because \domark is called before \chapoddpage, the filler page will |
| @@ -6702,7 +6692,7 @@ end | |||
| 6702 | % commands also insert a nobreak penalty, and we don't want to allow | 6692 | % commands also insert a nobreak penalty, and we don't want to allow |
| 6703 | % a break between a section heading and a defun. | 6693 | % a break between a section heading and a defun. |
| 6704 | % | 6694 | % |
| 6705 | % As a minor refinement, we avoid "club" headers by signalling | 6695 | % As a further refinement, we avoid "club" headers by signalling |
| 6706 | % with penalty of 10003 after the very first @deffn in the | 6696 | % with penalty of 10003 after the very first @deffn in the |
| 6707 | % sequence (see above), and penalty of 10002 after any following | 6697 | % sequence (see above), and penalty of 10002 after any following |
| 6708 | % @def command. | 6698 | % @def command. |
| @@ -6769,13 +6759,36 @@ end | |||
| 6769 | \def\domakedefun#1#2#3{% | 6759 | \def\domakedefun#1#2#3{% |
| 6770 | \envdef#1{% | 6760 | \envdef#1{% |
| 6771 | \startdefun | 6761 | \startdefun |
| 6762 | \doingtypefnfalse % distinguish typed functions from all else | ||
| 6772 | \parseargusing\activeparens{\printdefunline#3}% | 6763 | \parseargusing\activeparens{\printdefunline#3}% |
| 6773 | }% | 6764 | }% |
| 6774 | \def#2{\dodefunx#1}% | 6765 | \def#2{\dodefunx#1}% |
| 6775 | \def#3% | 6766 | \def#3% |
| 6776 | } | 6767 | } |
| 6777 | 6768 | ||
| 6778 | %%% Untyped functions: | 6769 | \newif\ifdoingtypefn % doing typed function? |
| 6770 | \newif\ifrettypeownline % typeset return type on its own line? | ||
| 6771 | |||
| 6772 | % @deftypefnnewline on|off says whether the return type of typed functions | ||
| 6773 | % are printed on their own line. This affects @deftypefn, @deftypefun, | ||
| 6774 | % @deftypeop, and @deftypemethod. | ||
| 6775 | % | ||
| 6776 | \parseargdef\deftypefnnewline{% | ||
| 6777 | \def\temp{#1}% | ||
| 6778 | \ifx\temp\onword | ||
| 6779 | \expandafter\let\csname SETtxideftypefnnl\endcsname | ||
| 6780 | = \empty | ||
| 6781 | \else\ifx\temp\offword | ||
| 6782 | \expandafter\let\csname SETtxideftypefnnl\endcsname | ||
| 6783 | = \relax | ||
| 6784 | \else | ||
| 6785 | \errhelp = \EMsimple | ||
| 6786 | \errmessage{Unknown @txideftypefnnl value `\temp', | ||
| 6787 | must be on|off}% | ||
| 6788 | \fi\fi | ||
| 6789 | } | ||
| 6790 | |||
| 6791 | % Untyped functions: | ||
| 6779 | 6792 | ||
| 6780 | % @deffn category name args | 6793 | % @deffn category name args |
| 6781 | \makedefun{deffn}{\deffngeneral{}} | 6794 | \makedefun{deffn}{\deffngeneral{}} |
| @@ -6794,7 +6807,7 @@ end | |||
| 6794 | \defname{#2}{}{#3}\magicamp\defunargs{#4\unskip}% | 6807 | \defname{#2}{}{#3}\magicamp\defunargs{#4\unskip}% |
| 6795 | } | 6808 | } |
| 6796 | 6809 | ||
| 6797 | %%% Typed functions: | 6810 | % Typed functions: |
| 6798 | 6811 | ||
| 6799 | % @deftypefn category type name args | 6812 | % @deftypefn category type name args |
| 6800 | \makedefun{deftypefn}{\deftypefngeneral{}} | 6813 | \makedefun{deftypefn}{\deftypefngeneral{}} |
| @@ -6809,10 +6822,11 @@ end | |||
| 6809 | % | 6822 | % |
| 6810 | \def\deftypefngeneral#1#2 #3 #4 #5\endheader{% | 6823 | \def\deftypefngeneral#1#2 #3 #4 #5\endheader{% |
| 6811 | \dosubind{fn}{\code{#4}}{#1}% | 6824 | \dosubind{fn}{\code{#4}}{#1}% |
| 6825 | \doingtypefntrue | ||
| 6812 | \defname{#2}{#3}{#4}\defunargs{#5\unskip}% | 6826 | \defname{#2}{#3}{#4}\defunargs{#5\unskip}% |
| 6813 | } | 6827 | } |
| 6814 | 6828 | ||
| 6815 | %%% Typed variables: | 6829 | % Typed variables: |
| 6816 | 6830 | ||
| 6817 | % @deftypevr category type var args | 6831 | % @deftypevr category type var args |
| 6818 | \makedefun{deftypevr}{\deftypecvgeneral{}} | 6832 | \makedefun{deftypevr}{\deftypecvgeneral{}} |
| @@ -6830,7 +6844,7 @@ end | |||
| 6830 | \defname{#2}{#3}{#4}\defunargs{#5\unskip}% | 6844 | \defname{#2}{#3}{#4}\defunargs{#5\unskip}% |
| 6831 | } | 6845 | } |
| 6832 | 6846 | ||
| 6833 | %%% Untyped variables: | 6847 | % Untyped variables: |
| 6834 | 6848 | ||
| 6835 | % @defvr category var args | 6849 | % @defvr category var args |
| 6836 | \makedefun{defvr}#1 {\deftypevrheader{#1} {} } | 6850 | \makedefun{defvr}#1 {\deftypevrheader{#1} {} } |
| @@ -6841,7 +6855,8 @@ end | |||
| 6841 | % \defcvof {category of}class var args | 6855 | % \defcvof {category of}class var args |
| 6842 | \def\defcvof#1#2 {\deftypecvof{#1}#2 {} } | 6856 | \def\defcvof#1#2 {\deftypecvof{#1}#2 {} } |
| 6843 | 6857 | ||
| 6844 | %%% Type: | 6858 | % Types: |
| 6859 | |||
| 6845 | % @deftp category name args | 6860 | % @deftp category name args |
| 6846 | \makedefun{deftp}#1 #2 #3\endheader{% | 6861 | \makedefun{deftp}#1 #2 #3\endheader{% |
| 6847 | \doind{tp}{\code{#2}}% | 6862 | \doind{tp}{\code{#2}}% |
| @@ -6869,25 +6884,49 @@ end | |||
| 6869 | % We are followed by (but not passed) the arguments, if any. | 6884 | % We are followed by (but not passed) the arguments, if any. |
| 6870 | % | 6885 | % |
| 6871 | \def\defname#1#2#3{% | 6886 | \def\defname#1#2#3{% |
| 6887 | \par | ||
| 6872 | % Get the values of \leftskip and \rightskip as they were outside the @def... | 6888 | % Get the values of \leftskip and \rightskip as they were outside the @def... |
| 6873 | \advance\leftskip by -\defbodyindent | 6889 | \advance\leftskip by -\defbodyindent |
| 6874 | % | 6890 | % |
| 6875 | % How we'll format the type name. Putting it in brackets helps | 6891 | % Determine if we are typesetting the return type of a typed function |
| 6892 | % on a line by itself. | ||
| 6893 | \rettypeownlinefalse | ||
| 6894 | \ifdoingtypefn % doing a typed function specifically? | ||
| 6895 | % then check user option for putting return type on its own line: | ||
| 6896 | \expandafter\ifx\csname SETtxideftypefnnl\endcsname\relax \else | ||
| 6897 | \rettypeownlinetrue | ||
| 6898 | \fi | ||
| 6899 | \fi | ||
| 6900 | % | ||
| 6901 | % How we'll format the category name. Putting it in brackets helps | ||
| 6876 | % distinguish it from the body text that may end up on the next line | 6902 | % distinguish it from the body text that may end up on the next line |
| 6877 | % just below it. | 6903 | % just below it. |
| 6878 | \def\temp{#1}% | 6904 | \def\temp{#1}% |
| 6879 | \setbox0=\hbox{\kern\deflastargmargin \ifx\temp\empty\else [\rm\temp]\fi} | 6905 | \setbox0=\hbox{\kern\deflastargmargin \ifx\temp\empty\else [\rm\temp]\fi} |
| 6880 | % | 6906 | % |
| 6881 | % Figure out line sizes for the paragraph shape. | 6907 | % Figure out line sizes for the paragraph shape. We'll always have at |
| 6908 | % least two. | ||
| 6909 | \tempnum = 2 | ||
| 6910 | % | ||
| 6882 | % The first line needs space for \box0; but if \rightskip is nonzero, | 6911 | % The first line needs space for \box0; but if \rightskip is nonzero, |
| 6883 | % we need only space for the part of \box0 which exceeds it: | 6912 | % we need only space for the part of \box0 which exceeds it: |
| 6884 | \dimen0=\hsize \advance\dimen0 by -\wd0 \advance\dimen0 by \rightskip | 6913 | \dimen0=\hsize \advance\dimen0 by -\wd0 \advance\dimen0 by \rightskip |
| 6914 | % | ||
| 6915 | % If doing a return type on its own line, we'll have another line. | ||
| 6916 | \ifrettypeownline | ||
| 6917 | \advance\tempnum by 1 | ||
| 6918 | \def\maybeshapeline{0in \hsize}% | ||
| 6919 | \else | ||
| 6920 | \def\maybeshapeline{}% | ||
| 6921 | \fi | ||
| 6922 | % | ||
| 6885 | % The continuations: | 6923 | % The continuations: |
| 6886 | \dimen2=\hsize \advance\dimen2 by -\defargsindent | 6924 | \dimen2=\hsize \advance\dimen2 by -\defargsindent |
| 6887 | % (plain.tex says that \dimen1 should be used only as global.) | ||
| 6888 | \parshape 2 0in \dimen0 \defargsindent \dimen2 | ||
| 6889 | % | 6925 | % |
| 6890 | % Put the type name to the right margin. | 6926 | % The final paragraph shape: |
| 6927 | \parshape \tempnum 0in \dimen0 \maybeshapeline \defargsindent \dimen2 | ||
| 6928 | % | ||
| 6929 | % Put the category name at the right margin. | ||
| 6891 | \noindent | 6930 | \noindent |
| 6892 | \hbox to 0pt{% | 6931 | \hbox to 0pt{% |
| 6893 | \hfil\box0 \kern-\hsize | 6932 | \hfil\box0 \kern-\hsize |
| @@ -6909,8 +6948,16 @@ end | |||
| 6909 | % . this still does not fix the ?` and !` ligatures, but so far no | 6948 | % . this still does not fix the ?` and !` ligatures, but so far no |
| 6910 | % one has made identifiers using them :). | 6949 | % one has made identifiers using them :). |
| 6911 | \df \tt | 6950 | \df \tt |
| 6912 | \def\temp{#2}% return value type | 6951 | \def\temp{#2}% text of the return type |
| 6913 | \ifx\temp\empty\else \tclose{\temp} \fi | 6952 | \ifx\temp\empty\else |
| 6953 | \tclose{\temp}% typeset the return type | ||
| 6954 | \ifrettypeownline | ||
| 6955 | % put return type on its own line; prohibit line break following: | ||
| 6956 | \hfil\vadjust{\nobreak}\break | ||
| 6957 | \else | ||
| 6958 | \space % type on same line, so just followed by a space | ||
| 6959 | \fi | ||
| 6960 | \fi % no return type | ||
| 6914 | #3% output function name | 6961 | #3% output function name |
| 6915 | }% | 6962 | }% |
| 6916 | {\rm\enskip}% hskip 0.5 em of \tenrm | 6963 | {\rm\enskip}% hskip 0.5 em of \tenrm |