diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /support/hypertex/tanmoy/lhyper.old.tex |
Initial commit
Diffstat (limited to 'support/hypertex/tanmoy/lhyper.old.tex')
-rw-r--r-- | support/hypertex/tanmoy/lhyper.old.tex | 257 |
1 files changed, 257 insertions, 0 deletions
diff --git a/support/hypertex/tanmoy/lhyper.old.tex b/support/hypertex/tanmoy/lhyper.old.tex new file mode 100644 index 0000000000..5341b47c67 --- /dev/null +++ b/support/hypertex/tanmoy/lhyper.old.tex @@ -0,0 +1,257 @@ +\input hyperbasics + +\expandafter\edef\csname hypers@fe\endcsname{\catcode + `\noexpand@=\the\catcode`\@}% +\catcode`\@=11 +{\setbox0=\hbox{ +\errhelp{lhyper needs a higher revision of hyperbasics.} +\ifx\hyperv@rsion\hyper@ndefined + \errmessage{Need at least version 1 of hyperbasics. You have % + version 0}% + \egroup\egroup\expandafter\stop +\else + \ifnum2>\hyperv@rsion + \errmessage{Need at least version 1 of hyperbasics. You have % + version \hyperv@rsion}% + \egroup\egroup\expandafter\expandafter\expandafter\stop + \fi +\fi}} + +\let\hypernoname=\relax +% Change all places where \@currentlabel is being set. +% Tempoarily, put a \hyperdef at precisely those points. +\def\refstepcounter#1{\stepcounter{#1}\let\@tempa\protect +\def\protect{\noexpand\protect\noexpand}% +\hyperdef\hypernoname{#1}{\csname the#1\endcsname}{}% +\edef\@currentlabel{\hyper@\hyperpr@ref\hypernoname% + {\csname p@#1\endcsname\csname the#1\endcsname}}% +\let\protect\@tempa}% + +% Equations are special too +\def\equation{$$% $$ BRACE MATCHING HACK +\let\hyper@n@=\hyperdef +\let\hyperdef=\hyper@nique\refstepcounter{equation}% +\let\hyperdef=\hyper@n@\let\hyper@qn@=\theequation +\def\theequation{\hyperdef\hypernoname{equation}{\hyper@qn@}{\hyper@qn@}}% +} + + +\def\eqnarray{\stepcounter{equation}% +\global\@eqnswtrue\m@th +\global\@eqcnt\z@\tabskip\@centering\let\\\@eqncr +\let\hyper@qn@=\theequation +\hyper@nique\hypernoname{equation}{\hyper@qn@}{}% +\edef\@currentlabel{% +\hyper@\hyperpr@ref\hypernoname{\theequation}}% +$$% +\def\theequation{\hyperdef\hypernoname{equation}{\hyper@qn@}{\hyper@qn@}}% +\edef\@currentlabel{% +\hyper@\hyperpr@ref\noexpand\hypernoname{\noexpand\hyper@qn@}}% +\halign to\displaywidth\bgroup\@eqnsel\hskip\@centering + $\displaystyle\tabskip\z@{##}$&\global\@eqcnt\@ne + \hskip 2\arraycolsep \hfil${##}$\hfil + &\global\@eqcnt\tw@ \hskip 2\arraycolsep $\displaystyle\tabskip\z@{##}$\hfil + \tabskip\@centering&\llap{##}\tabskip\z@\cr} + +% footnotes are special. We simply redefine all occurances of \@thefnmark. + +\def\footnote{\@ifnextchar[{\@xfootnote}{\stepcounter{\@mpfn}% + \hyper@nique\hypernoname{footnote}{\thempfn}{}% + \begingroup\let\protect\noexpand + \xdef\@thefnmark{\hyper@\hyperpr@ref\hypernoname + {\thempfn}}\endgroup + \@footnotemark\@footnotetext}} + +\def\@xfootnote[#1]{ + \hyper@nique\hypernoname{footnote}{\thempfn}{}% + \begingroup \csname c@\@mpfn\endcsname #1\relax + \let\protect\noexpand + \xdef\@thefnmark{\hyper@\hyperpr@ref\hypernoname + {\thempfn}}\endgroup + \@footnotemark\@footnotetext} + +\def\footnotemark{\@ifnextchar[{\@xfootnotemark}{\stepcounter{footnote}% + \hyper@nique\hypernoname{footnote}{\thefootnote}{}% + \begingroup\let\protect\noexpand + \xdef\@thefnmark{\hyper@\hyperpr@ref\hypernoname + {\thefootnote}}\endgroup + \@footnotemark}} + +\def\@xfootnotemark[#1]{\begingroup \c@footnote #1\relax + \hyper@nique\hypernoname{footnote}{\thefootnote}{}% + \let\protect\noexpand + \xdef\@thefnmark{\hyper@\hyperpr@ref\hypernoname + {\thefootnote}}\endgroup \@footnotemark} + +\def\footnotetext{\@ifnextchar [{\@xfootnotenext}% + {\begingroup\let\protect\noexpand + \hyper@nique\hypernoname{footnote}{\thempfn}{}% + \xdef\@thefnmark{\hyper@\hyperpr@ref\hypernoname + {\thempfn}}\endgroup + \@footnotetext}} + +\def\@xfootnotenext[#1]{\begingroup \csname c@\@mpfn\endcsname #1\relax + \let\protect\noexpand + \hyper@nique\hypernoname{footnote}{\thempfn}{}% + \xdef\@thefnmark{\hyper@\hyperpr@ref\hypernoname + {\thempfn}}\endgroup \@footnotetext} + + +% The footnote has to be defined when insertion being generated. +\def\hyper@eat#1\hyperpr@ref#2#3#4#5{#5}% +\long\def\@footnotetext#1{\insert\footins{\reset@font\footnotesize + \interlinepenalty\interfootnotelinepenalty + \splittopskip\footnotesep + \splitmaxdepth \dp\strutbox \floatingpenalty \@MM + \hsize\columnwidth \@parboxrestore + \edef\@currentlabel{\csname p@footnote\endcsname\@thefnmark}% + {\edef\@thefnmark{\expandafter\hyper@eat\@thefnmark}% + \edef\@thefnmark{\noexpand\hyperdef\noexpand\hypernoname{footnote}% + {\@thefnmark}{\@thefnmark}}% + \@makefntext + {\rule{\z@}{\footnotesep}\ignorespaces + #1\strut}}}} + +% Similarly references are special +\def\@lbibitem[#1]#2{\item[\hyperdef\hypernoname{reference}{#1}% + {\@biblabel{#1}}\hfill]\if@filesw + {\def\protect##1{\string ##1\space}\immediate + \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces} + +\def\@bibitem#1{\@noitemargtrue\@item + [\hyperdef\hypernoname{reference}{\the\value{\@listctr}}% + {\the\value{\@listctr}}]\if@filesw \immediate\write\@auxout + {\string\bibcite{#1}{\the\value{\@listctr}}}\fi\ignorespaces} + +\def\bibcite#1#2{\expandafter\xdef\csname b@#1\endcsname{\hyper@\hyperpr@ref + {}{reference}{#2}{#2}}% + \expandafter\gdef\csname hyperb@#1\endcsname{#2}} + + +% +% Sectioning macros +% +\def\@sect#1#2#3#4#5#6[#7]#8{\ifnum #2>\c@secnumdepth + \let\@svsec\@empty\else + \let\hyper@n@=\hyperdef + \let\hyperdef=\hyper@nique + \refstepcounter{#1}% + \let\hyperdef=\relax\let\hypernoname=\relax + \edef\@svsec{\hyperdef\hypernoname{#1}% + {\csname the#1\endcsname}{\csname the#1\endcsname\hskip 1em}}% + \let\hyperdef=\hyper@n@\fi + \@tempskipa #5\relax + \ifdim \@tempskipa>\z@ + \begingroup #6\relax + \@hangfrom{\hskip #3\relax\@svsec}{\interlinepenalty \@M #8\par}% + \endgroup + \csname #1mark\endcsname{#7}\addcontentsline + {toc}{#1}{\ifnum #2>\c@secnumdepth \else + \protect\numberline{\hyper@\hyperpr@ref\hypernoname + {\hbox{\hskip1pt\relax\csname the#1\endcsname}% + }\hskip-1pt\relax}\fi + #7}\else + \def\@svsechd{#6\hskip #3\relax %% \relax added 2 May 90 + \@svsec #8\csname #1mark\endcsname + {#7}\addcontentsline + {toc}{#1}{\ifnum #2>\c@secnumdepth \else + \protect\numberline{\hyper@\hyperpr@ref\hypernoname + {\hbox{\hskip1pt\relax\csname the#1\endcsname}% + }\hskip-1pt\relax}\fi + #7}}\fi + \@xsect{#5}} + +% +% Captions +% +\def\caption{\let\hyper@n@=\hyperdef + \let\hyperdef=\hyper@nique + \refstepcounter\@captype + \let\hyperdef=\hyper@n@ + \@dblarg{\@caption\@captype}} +\long\def\@caption#1[#2]#3{\par\begingroup + \@parboxrestore + \normalsize + \@makecaption{\hyperdef\hypernoname{#1}{\csname the#1\endcsname}% + {\csname fnum@#1\endcsname}}{\ignorespaces #3}\par + \addcontentsline{\csname + ext@#1\endcsname}{#1}{\protect\numberline{\csname + the#1\endcsname}{\ignorespaces #2}}% + \endgroup} + +% +% toc +% +\def\@outputpage{\begingroup\catcode`\ =10 + \let\-\@dischyph \let\'\@acci \let\`\@accii \let\=\@acciii + \if@specialpage + \global\@specialpagefalse\@nameuse{ps@\@specialstyle}\fi + \if@twoside + \ifodd\count\z@ \let\@thehead\@oddhead \let\@thefoot\@oddfoot + \let\@themargin\oddsidemargin + \else \let\@thehead\@evenhead + \let\@thefoot\@evenfoot \let\@themargin\evensidemargin + \fi\fi + \shipout + \vbox{\reset@font %% RmS 91/08/15 + {\let\hyperdef\relax\let\hyperref\relax\let\hypernoname\relax\setbox0=\hbox{\@thefoot}% + \global\ifnum\wd0=0\let\hyper@mpty=\hss\else\let\hyper@mpty=\relax + \fi}% + \normalsize \baselineskip\z@ \lineskip\z@ + \let\par\@@par %% 15 Sep 87 + \vskip \topmargin \moveright\@themargin + \vbox{\setbox\@tempboxa + \vbox to\headheight{\vfil \hbox to\textwidth + {\let\label\@gobble \let\index\@gobble + \let\glossary\@gobble %% 21 Jun 91 + \@thehead}}% %% 22 Feb 87 + \dp\@tempboxa\z@ + \box\@tempboxa + \vskip \headsep + \box\@outputbox + \baselineskip\footskip + \hbox to\textwidth{\let\label\@gobble + \let\index\@gobble %% 22 Feb 87 + \let\glossary\@gobble %% 21 Jun 91 + \hyperdef\hypernoname{page}{\thepage}% + {\hyper@mpty\@thefoot}% + }}}\global\@colht\textheight + \endgroup\stepcounter{page}\let\firstmark\botmark} + + +\edef\contentsline#1#2#3{\noexpand\hyper@nique\noexpand\hypernoname + {page}{#3}{}% + \noexpand\csname l@#1\noexpand\endcsname{#2}% + {\hyper@\hyperpr@ref\noexpand\hypernoname{#3}}} + +% Some style files change this setup. After loading a style file check if +% the corresponding .hty file exists. Load it in that case. +\newread\hyper@inputcheck +\def\hyper@nput #1.sty{\input #1.sty\relax + \immediate\openin\hyper@inputcheck #1.hty\relax + \ifeof\hyper@inputcheck\relax + \immediate\closein\hyper@inputcheck\relax + \else\immediate\closein\hyper@inputcheck\relax + \input #1.hty\relax + \fi}% +\def\@documentstyle[#1]#2{\makeatletter + \def\@optionlist{#1}\gdef\@optionfiles{}\hyper@nput #2.sty\relax + \let\@elt\hyper@nput \@optionfiles \let\@elt\relax \makeatother} + +\def\hyper@pen#1{\immediate\openin\hyper@inputcheck #1.hty\relax + \ifeof\hyper@inputcheck\relax + \immediate\closein\hyper@inputcheck\relax + \else\immediate\closein\hyper@inputcheck\relax + \input #1.hty\relax + \fi} + +\def\enddocument{\@checkend{document}\clearpage\begingroup +\if@filesw \immediate\closeout\@mainaux +\def\global\@namedef##1##2{}\def\newlabel{\@testdef r}% +\def\bibcite{\@testdef {hyperb}}\@tempswafalse \makeatletter\input \jobname.aux +\if@tempswa \@@warning{Label(s) may have changed. Rerun to get +cross-references right}\fi\fi\endgroup\deadcycles\z@\@@end} + +\hypers@fe +\endinput +% Leave this line in the file |