From 399ce2319873dee49aa4eda7159bda16e4f6645c Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 22 Nov 2009 19:07:27 +0000 Subject: new latex package ftnxtra (17oct09) git-svn-id: svn://tug.org/texlive/trunk@16126 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/source/latex/ftnxtra/ftnxtra.dtx | 233 +++++++++++++++++++++ 1 file changed, 233 insertions(+) create mode 100644 Master/texmf-dist/source/latex/ftnxtra/ftnxtra.dtx (limited to 'Master/texmf-dist/source/latex/ftnxtra/ftnxtra.dtx') diff --git a/Master/texmf-dist/source/latex/ftnxtra/ftnxtra.dtx b/Master/texmf-dist/source/latex/ftnxtra/ftnxtra.dtx new file mode 100644 index 00000000000..ec606234ad8 --- /dev/null +++ b/Master/texmf-dist/source/latex/ftnxtra/ftnxtra.dtx @@ -0,0 +1,233 @@ +% \iffalse +%<*internal> +\iffalse +% +%<*readme> +_________________ +The ftnxtra package +v0.1 + +This package fixes the isuue of footnote inside \caption{}, +tabular environment and \section{} like (\chapter{}, \part{}, \subsection{} and etc) commands. + +______________ +Vafa Khalighi +vafa@users.berlios.de + +Copyright 2009 +Distributed under the LaTeX Project Public License +% +%<*internal> +\fi +\begingroup +% +%<*batchfile> +\input docstrip.tex +\keepsilent +\preamble + + __________________________________ + Copyright (C) 2009 Vafa Khalighi + + License information appended. + + +\endpreamble +\postamble + +Copyright (C) 2009 by Vafa Khalighi + +Distributable under the LaTeX Project Public License, +version 1.3c or higher (your choice). The latest version of +this license is at: http://www.latex-project.org/lppl.txt + +This work is "maintained" (as per LPPL maintenance status) +by Vafa Khalighi. + +This work consists of the file ftnxtra.dtx + and the derived files ftnxtra.sty, + ftnxtra.ins, and + ftnxtra.pdf. + +\endpostamble +\askforoverwritefalse +\generate{\file{\jobname.sty}{\from{\jobname.dtx}{package}}} +% +%\endbatchfile +%<*internal> +\generate{\file{\jobname.ins}{\from{\jobname.dtx}{batchfile}}} +\nopreamble\nopostamble +\generate{\file{README.txt}{\from{\jobname.dtx}{readme}}} +\endgroup +\immediate\write18{mv README.txt README} +\immediate\write18{makeindex -s gind.ist -o \jobname.ind \jobname.idx} +\immediate\write18{makeindex -s gglo.ist -o \jobname.gls \jobname.glo} +% +% +%<*driver> +\documentclass{ltxdoc} +\EnableCrossrefs +\CodelineIndex +\RecordChanges +\OnlyDescription +\begin{document} + \DocInput{\jobname.dtx} +\end{document} +% +% +% +% \fi +% +% \GetFileInfo{\jobname.sty} +% \CheckSum{0} +% \makeatletter +% +% \title{The \textsf{ftnxtra} package} +% \author{Vafa Khalighi} +% +% +% \StopEventually{} +% +% \part{\textsf{\jobname} implementation} +%\iffalse +%<*package> +%\fi +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{ftnxtra}% +[2009/10/18 footnote fixes for standard LaTeX] +\newtoks\ftnxtra@p@ftn +\let\FN@sf@@footnote\footnote +\def\footnote{\ifx\protect\@typeset@protect + \expandafter\FN@sf@@footnote + \else + \expandafter\FN@sf@gobble@opt + \fi +} +\edef\FN@sf@gobble@opt{\noexpand\protect + \expandafter\noexpand\csname FN@sf@gobble@opt \endcsname} +\expandafter\def\csname FN@sf@gobble@opt \endcsname{% + \@ifnextchar[%] + \FN@sf@gobble@twobracket + \@gobble +} +\def\FN@sf@gobble@twobracket[#1]#2{} +\let\FN@sf@@footnotemark\footnotemark +\def\footnotemark{\ifx\protect\@typeset@protect + \expandafter\FN@sf@@footnotemark + \else + \expandafter\FN@sf@gobble@optonly + \fi +} +\edef\FN@sf@gobble@optonly{\noexpand\protect + \expandafter\noexpand\csname FN@sf@gobble@optonly \endcsname} +\expandafter\def\csname FN@sf@gobble@optonly \endcsname{% + \@ifnextchar[%] + \FN@sf@gobble@bracket + {}% +} +\def\FN@sf@gobble@bracket[#1]{} +\def\@tabular{% + \leavevmode \hbox \bgroup + \let\@footnotetext\ftnxtra@p@ftntext + $\let\@acol\@tabacol + \let\@classz\@tabclassz + \let\@classiv\@tabclassiv \let\\\@tabularcr\@tabarray} +\def\endtabular{\crcr\egroup + \egroup $\egroup + \the\ftnxtra@p@ftn + \global\ftnxtra@p@ftn{}% + } +\long\def\ftnxtra@p@ftntext#1{% + \edef\@tempy{\the\ftnxtra@p@ftn\noexpand\footnotetext[\the\c@footnote]}% + \global\ftnxtra@p@ftn\expandafter{\@tempy{#1}}}% +\def\@xfloat #1[#2]{% + \@nodocument + \def \@captype {#1}% + \def \@fps {#2}% + \@onelevel@sanitize \@fps + \def \reserved@b {!}% + \ifx \reserved@b \@fps + \@fpsadddefault + \else + \ifx \@fps \@empty + \@fpsadddefault + \fi + \fi + \ifhmode + \@bsphack + \@floatpenalty -\@Mii + \else + \@floatpenalty-\@Miii + \fi + \ifinner + \@parmoderr\@floatpenalty\z@ + \else + \@next\@currbox\@freelist + {% + \@tempcnta \sixt@@n + \expandafter \@tfor \expandafter \reserved@a + \expandafter :\expandafter =\@fps + \do + {% + \if \reserved@a h% + \ifodd \@tempcnta + \else + \advance \@tempcnta \@ne + \fi + \fi + \if \reserved@a t% + \@setfpsbit \tw@ + \fi + \if \reserved@a b% + \@setfpsbit 4% + \fi + \if \reserved@a p% + \@setfpsbit 8% + \fi + \if \reserved@a !% + \ifnum \@tempcnta>15 + \advance\@tempcnta -\sixt@@n\relax + \fi + \fi + }% + \@tempcntb \csname ftype@\@captype \endcsname + \multiply \@tempcntb \@xxxii + \advance \@tempcnta \@tempcntb + \global \count\@currbox \@tempcnta + }% + \@fltovf + \fi + \global \setbox\@currbox + \color@vbox + \normalcolor + \vbox \bgroup + \let\@footnotetext\ftnxtra@p@ftntext + \hsize\columnwidth + \@parboxrestore + \@floatboxreset +} +\def \@endfloatbox{% + \par\vskip\z@skip %% \par\vskip\z@ added 15 Dec 87 + \@minipagefalse + \outer@nobreak + \egroup %% end of vbox + \the\ftnxtra@p@ftn + \global\ftnxtra@p@ftn{}% + \color@endbox +} +% \end{macrocode} +%\iffalse +% +%\fi +% +% \typeout{*************************************************************} +% \typeout{*} +% \typeout{* To finish the installation you have to move the following} +% \typeout{* file into a directory searched by TeX:} +% \typeout{*} +% \typeout{* \space\space\space ftnxtra.sty} +% \typeout{*} +% \typeout{*************************************************************} +% +\endinput -- cgit v1.2.3