Sync with gnulib
This incorporates: 2016-02-10 stdalign: port to older HP and IBM cc * doc/misc/texinfo.tex, lib/stdalign.in.h: Copy from gnulib.
This commit is contained in:
parent
aa5a794843
commit
db512249dd
2 changed files with 107 additions and 34 deletions
|
@ -3,7 +3,7 @@
|
|||
% Load plain if necessary, i.e., if running under initex.
|
||||
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
|
||||
%
|
||||
\def\texinfoversion{2016-02-09.12}
|
||||
\def\texinfoversion{2016-02-16.15}
|
||||
%
|
||||
% Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
|
||||
% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
|
||||
|
@ -310,7 +310,7 @@
|
|||
% Margin to add to right of even pages, to left of odd pages.
|
||||
\newdimen\bindingoffset
|
||||
\newdimen\normaloffset
|
||||
\newdimen\pagewidth \newdimen\pageheight
|
||||
\newdimen\txipagewidth \newdimen\txipageheight
|
||||
|
||||
% Main output routine.
|
||||
%
|
||||
|
@ -334,7 +334,7 @@
|
|||
% Common context changes for both heading and footing.
|
||||
% Do this outside of the \shipout so @code etc. will be expanded in
|
||||
% the headline as they should be, not taken literally (outputting ''code).
|
||||
\def\commmonheadfootline{\let\hsize=\pagewidth \texinfochars}
|
||||
\def\commmonheadfootline{\let\hsize=\txipagewidth \texinfochars}
|
||||
%
|
||||
% Retrieve the information for the headings from the marks in the page,
|
||||
% and call Plain TeX's \makeheadline and \makefootline, which use the
|
||||
|
@ -433,7 +433,7 @@
|
|||
\newinsert\margin \dimen\margin=\maxdimen
|
||||
|
||||
% Main part of page, including any footnotes
|
||||
\def\pagebody#1{\vbox to\pageheight{\boxmaxdepth=\maxdepth #1}}
|
||||
\def\pagebody#1{\vbox to\txipageheight{\boxmaxdepth=\maxdepth #1}}
|
||||
{\catcode`\@ =11
|
||||
\gdef\pagecontents#1{\ifvoid\topins\else\unvbox\topins\fi
|
||||
% marginal hacks, juha@viisa.uucp (Juha Takala)
|
||||
|
@ -724,11 +724,11 @@
|
|||
% \dimen0 is the vertical size of the group's box.
|
||||
\dimen0 = \ht\groupbox \advance\dimen0 by \dp\groupbox
|
||||
% \dimen2 is how much space is left on the page (more or less).
|
||||
\dimen2 = \pageheight \advance\dimen2 by -\pagetotal
|
||||
\dimen2 = \txipageheight \advance\dimen2 by -\pagetotal
|
||||
% if the group doesn't fit on the current page, and it's a big big
|
||||
% group, force a page break.
|
||||
\ifdim \dimen0 > \dimen2
|
||||
\ifdim \pagetotal < \vfilllimit\pageheight
|
||||
\ifdim \pagetotal < \vfilllimit\txipageheight
|
||||
\page
|
||||
\fi
|
||||
\fi
|
||||
|
@ -1100,6 +1100,64 @@
|
|||
\newif\ifpdf
|
||||
\newif\ifpdfmakepagedest
|
||||
|
||||
%
|
||||
% For LuaTeX
|
||||
%
|
||||
|
||||
\ifx\luatexversion\thisisundefined
|
||||
\else
|
||||
% Escape PDF strings UTF-8 to UTF-16
|
||||
\begingroup
|
||||
\catcode`\%=12
|
||||
\directlua{
|
||||
function UTF16oct(str)
|
||||
tex.sprint(string.char(0x5c) .. '376' .. string.char(0x5c) .. '377')
|
||||
for c in string.utfvalues(str) do
|
||||
if c < 0x10000 then
|
||||
tex.sprint(
|
||||
string.format(string.char(0x5c) .. string.char(0x25) .. '03o' ..
|
||||
string.char(0x5c) .. string.char(0x25) .. '03o',
|
||||
(c / 256), (c % 256)))
|
||||
else
|
||||
c = c - 0x10000
|
||||
local c_hi = c / 1024 + 0xd800
|
||||
local c_lo = c % 1024 + 0xdc00
|
||||
tex.sprint(
|
||||
string.format(string.char(0x5c) .. string.char(0x25) .. '03o' ..
|
||||
string.char(0x5c) .. string.char(0x25) .. '03o' ..
|
||||
string.char(0x5c) .. string.char(0x25) .. '03o' ..
|
||||
string.char(0x5c) .. string.char(0x25) .. '03o',
|
||||
(c_hi / 256), (c_hi % 256),
|
||||
(c_lo / 256), (c_lo % 256)))
|
||||
end
|
||||
end
|
||||
end
|
||||
}
|
||||
\endgroup
|
||||
\def\pdfescapestring#1{\directlua{UTF16oct('\luaescapestring{#1}')}}
|
||||
\ifnum\luatexversion>84
|
||||
% For LuaTeX >= 0.85
|
||||
\def\pdfdest{\pdfextension dest}
|
||||
\let\pdfoutput\outputmode
|
||||
\def\pdfliteral{\pdfextension literal}
|
||||
\def\pdfcatalog{\pdfextension catalog}
|
||||
\def\pdftexversion{\numexpr\pdffeedback version\relax}
|
||||
\let\pdfximage\saveimageresource
|
||||
\let\pdfrefximage\useimageresource
|
||||
\let\pdflastximage\lastsavedimageresourceindex
|
||||
\def\pdfendlink{\pdfextension endlink\relax}
|
||||
\def\pdfoutline{\pdfextension outline}
|
||||
\def\pdfstartlink{\pdfextension startlink}
|
||||
\def\pdffontattr{\pdfextension fontattr}
|
||||
\def\pdfobj{\pdfextension obj}
|
||||
\def\pdflastobj{\numexpr\pdffeedback lastobj\relax}
|
||||
\let\pdfpagewidth\pagewidth
|
||||
\let\pdfpageheight\pageheight
|
||||
\edef\pdfhorigin{\pdfvariable horigin}
|
||||
\edef\pdfvorigin{\pdfvariable vorigin}
|
||||
\fi
|
||||
\fi
|
||||
|
||||
% when pdftex is run in dvi mode, \pdfoutput is defined (so \pdfoutput=1
|
||||
% can be set). So we test for \relax and 0 as well as being undefined.
|
||||
\ifx\pdfoutput\thisisundefined
|
||||
|
@ -1283,18 +1341,23 @@
|
|||
% page number. We could generate a destination for the section
|
||||
% text in the case where a section has no node, but it doesn't
|
||||
% seem worth the trouble, since most documents are normally structured.
|
||||
\edef\pdfoutlinedest{#3}%
|
||||
\ifx\pdfoutlinedest\empty
|
||||
\def\pdfoutlinedest{#4}%
|
||||
\else
|
||||
\txiescapepdf\pdfoutlinedest
|
||||
\fi
|
||||
%
|
||||
% Also escape PDF chars in the display string.
|
||||
\edef\pdfoutlinetext{#1}%
|
||||
\txiescapepdf\pdfoutlinetext
|
||||
%
|
||||
\pdfoutline goto name{\pdfmkpgn{\pdfoutlinedest}}#2{\pdfoutlinetext}%
|
||||
{
|
||||
\ifx\luatexversion\thisisundefined \else
|
||||
\turnoffactive % LuaTeX can use Unicode strings for PDF
|
||||
\fi
|
||||
\edef\pdfoutlinedest{#3}%
|
||||
\ifx\pdfoutlinedest\empty
|
||||
\def\pdfoutlinedest{#4}%
|
||||
\else
|
||||
\txiescapepdf\pdfoutlinedest
|
||||
\fi
|
||||
%
|
||||
% Also escape PDF chars in the display string.
|
||||
\edef\pdfoutlinetext{#1}%
|
||||
\txiescapepdf\pdfoutlinetext
|
||||
%
|
||||
\pdfoutline goto name{\pdfmkpgn{\pdfoutlinedest}}#2{\pdfoutlinetext}%
|
||||
}
|
||||
}
|
||||
%
|
||||
\def\pdfmakeoutlines{%
|
||||
|
@ -1528,7 +1591,16 @@
|
|||
]
|
||||
|
||||
\special{pdf:docview << /PageMode /UseOutlines >> }
|
||||
\special{pdf:tounicode UTF8-UTF16 }
|
||||
\openin 1 uptex.tex % upTeX has UTF8-UTF16 cmap
|
||||
\ifeof 1
|
||||
% upTeX does not exist. To use UTF8-UCS2 cmap.
|
||||
% In this case, non-BMP characters (over U+FFFF) can not be used.
|
||||
\special{pdf:tounicode UTF8-UCS2}
|
||||
\else
|
||||
% upTeX exists. To use UTF8-UTF16 cmap.
|
||||
% Non-BMP characters (over U+FFFF) can be used.
|
||||
\special{pdf:tounicode UTF8-UTF16}
|
||||
\fi
|
||||
\fi
|
||||
|
||||
%
|
||||
|
@ -3570,7 +3642,7 @@
|
|||
%
|
||||
% Leave some space for the footline. Hopefully ok to assume
|
||||
% @evenfooting will not be used by itself.
|
||||
\global\advance\pageheight by -12pt
|
||||
\global\advance\txipageheight by -12pt
|
||||
\global\advance\vsize by -12pt
|
||||
}
|
||||
|
||||
|
@ -3595,9 +3667,9 @@
|
|||
\def\oddheadingmarks{\headingmarks{odd}{heading}}
|
||||
\def\evenfootingmarks{\headingmarks{even}{footing}}
|
||||
\def\oddfootingmarks{\headingmarks{odd}{footing}}
|
||||
\def\everyheadingmarks#1 {\headingmarks{even}{heading}{#1}
|
||||
\parseargdef\everyheadingmarks{\headingmarks{even}{heading}{#1}
|
||||
\headingmarks{odd}{heading}{#1} }
|
||||
\def\everyfootingmarks#1 {\headingmarks{even}{footing}{#1}
|
||||
\parseargdef\everyfootingmarks{\headingmarks{even}{footing}{#1}
|
||||
\headingmarks{odd}{footing}{#1} }
|
||||
% #1 = even/odd, #2 = heading/footing, #3 = top/bottom.
|
||||
\def\headingmarks#1#2#3 {%
|
||||
|
@ -3618,7 +3690,7 @@
|
|||
% By default, they are off at the start of a document,
|
||||
% and turned `on' after @end titlepage.
|
||||
|
||||
\def\headings #1 {\csname HEADINGS#1\endcsname}
|
||||
\parseargdef\headings{\csname HEADINGS#1\endcsname}
|
||||
|
||||
\def\headingsoff{% non-global headings elimination
|
||||
\evenheadline={\hfil}\evenfootline={\hfil}%
|
||||
|
@ -5642,7 +5714,7 @@
|
|||
\wd0=\hsize \wd2=\hsize
|
||||
\vbox{%
|
||||
\vskip\doublecolumntopgap
|
||||
\hbox to\pagewidth{\box0\hfil\box2}}%
|
||||
\hbox to\txipagewidth{\box0\hfil\box2}}%
|
||||
}
|
||||
|
||||
|
||||
|
@ -5669,7 +5741,7 @@
|
|||
% goal. When TeX sees \eject from below which follows the final
|
||||
% section, it invokes the new output routine that we've set after
|
||||
% \balancecolumns below; \onepageout will try to fit the two columns
|
||||
% and the final section into the vbox of \pageheight (see
|
||||
% and the final section into the vbox of \txipageheight (see
|
||||
% \pagebody), causing an overfull box.
|
||||
%
|
||||
% Note that glue won't work here, because glue does not exercise the
|
||||
|
@ -6153,7 +6225,7 @@
|
|||
\fi
|
||||
}
|
||||
|
||||
\def\setchapternewpage #1 {\csname CHAPPAG#1\endcsname}
|
||||
\parseargdef\setchapternewpage{\csname CHAPPAG#1\endcsname}
|
||||
|
||||
\def\CHAPPAGoff{%
|
||||
\global\let\contentsalignmacro = \chappager
|
||||
|
@ -6302,7 +6374,7 @@
|
|||
% I don't think this chapter style is supported any more, so I'm not
|
||||
% updating it with the new noderef stuff. We'll see. --karl, 11aug03.
|
||||
%
|
||||
\def\setchapterstyle #1 {\csname CHAPF#1\endcsname}
|
||||
\parseargdef\setchapterstyle{\csname CHAPF#1\endcsname}
|
||||
%
|
||||
\def\unnchfopen #1{%
|
||||
\chapoddpage
|
||||
|
@ -9043,7 +9115,7 @@
|
|||
% We want to typeset this text as a normal paragraph, even if the
|
||||
% footnote reference occurs in (for example) a display environment.
|
||||
% So reset some parameters.
|
||||
\hsize=\pagewidth
|
||||
\hsize=\txipagewidth
|
||||
\interlinepenalty\interfootnotelinepenalty
|
||||
\splittopskip\ht\strutbox % top baseline for broken footnotes
|
||||
\splitmaxdepth\dp\strutbox
|
||||
|
@ -11007,12 +11079,12 @@
|
|||
\advance\vsize by \topskip
|
||||
\outervsize = \vsize
|
||||
\advance\outervsize by 2\topandbottommargin
|
||||
\pageheight = \vsize
|
||||
\txipageheight = \vsize
|
||||
%
|
||||
\hsize = #2\relax
|
||||
\outerhsize = \hsize
|
||||
\advance\outerhsize by 0.5in
|
||||
\pagewidth = \hsize
|
||||
\txipagewidth = \hsize
|
||||
%
|
||||
\normaloffset = #4\relax
|
||||
\bindingoffset = #5\relax
|
||||
|
@ -11336,9 +11408,10 @@
|
|||
@global@let\ = @eatinput%
|
||||
@catcode`@^^M=13%
|
||||
@def@c{@fixbackslash@c}%
|
||||
% Definition for the newline at the end of this file.
|
||||
@def ^^M{@let^^M@secondlinenl}%
|
||||
@gdef @secondlinenl{@let^^M@thirdlinenl}%
|
||||
@gdef @thirdlinenl{@fixbackslash}%
|
||||
% Definition for a newline in the main Texinfo file.
|
||||
@gdef @secondlinenl{@fixbackslash}%
|
||||
}}
|
||||
|
||||
{@catcode`@^=7 @catcode`@^^M=13%
|
||||
|
|
|
@ -103,8 +103,8 @@
|
|||
# elif ((defined __APPLE__ && defined __MACH__ \
|
||||
? 4 < __GNUC__ + (1 <= __GNUC_MINOR__) \
|
||||
: __GNUC__) \
|
||||
|| __HP_cc || __HP_aCC || __IBMC__ || __IBMCPP__ \
|
||||
|| __ICC || 0x590 <= __SUNPRO_C)
|
||||
|| 061200 <= __HP_cc || 061200 <= __HP_aCC \
|
||||
|| __ICC || 0x590 <= __SUNPRO_C || 0x0600 <= __xlC__)
|
||||
# define _Alignas(a) __attribute__ ((__aligned__ (a)))
|
||||
# elif 1300 <= _MSC_VER
|
||||
# define _Alignas(a) __declspec (align (a))
|
||||
|
|
Loading…
Add table
Reference in a new issue