From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- macros/latex/contrib/verbasef/verbasef-doc.pdf | Bin 0 -> 333773 bytes macros/latex/contrib/verbasef/verbasef-doc.tex | 202 +++++++++++++++ macros/latex/contrib/verbasef/verbasef.sty | 339 +++++++++++++++++++++++++ 3 files changed, 541 insertions(+) create mode 100644 macros/latex/contrib/verbasef/verbasef-doc.pdf create mode 100644 macros/latex/contrib/verbasef/verbasef-doc.tex create mode 100644 macros/latex/contrib/verbasef/verbasef.sty (limited to 'macros/latex/contrib/verbasef') diff --git a/macros/latex/contrib/verbasef/verbasef-doc.pdf b/macros/latex/contrib/verbasef/verbasef-doc.pdf new file mode 100644 index 0000000000..bbe85bd1d7 Binary files /dev/null and b/macros/latex/contrib/verbasef/verbasef-doc.pdf differ diff --git a/macros/latex/contrib/verbasef/verbasef-doc.tex b/macros/latex/contrib/verbasef/verbasef-doc.tex new file mode 100644 index 0000000000..5233883f68 --- /dev/null +++ b/macros/latex/contrib/verbasef/verbasef-doc.tex @@ -0,0 +1,202 @@ +\documentclass[pagesize=auto]{scrartcl} + +\usepackage{fixltx2e} +\usepackage{etex} +\usepackage{lmodern} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\usepackage{amstext} +\usepackage{microtype} +\usepackage{hyperref} + +\newcommand*{\mail}[1]{\href{mailto:#1}{\texttt{#1}}} +\newcommand*{\pkg}[1]{\textsf{#1}} +\newcommand*{\cs}[1]{\texttt{\textbackslash#1}} +\makeatletter +\newcommand*{\cmd}[1]{\cs{\expandafter\@gobble\string#1}} +\makeatother +\newcommand*{\opt}[1]{\texttt{#1}} +\newcommand*{\meta}[1]{\textlangle\textsl{#1}\textrangle} +\newcommand*{\oarg}[1]{\texttt{[}\meta{#1}\texttt{]}} + +\addtokomafont{title}{\rmfamily} + +\title{The \pkg{verbasef} package\thanks{This manual corresponds to \pkg{verbasef.sty}~v1.1, dated~95/01/20.}} +\subtitle{VERBatim Automatic Splitting of External Files} +\author{Paul A. Thompson} +\date{95/01/20} + + +\begin{document} + +\maketitle + +\noindent +Requires: +% +\begin{itemize} +\item The New Font Selection Scheme (NFSS) as implemented in \LaTeXe +\item \pkg{VERBATIM.STY} by Rainer Schoepf +\item \pkg{VRBEXIN.STY} by Paul Thompson \\ + However, it is based on \pkg{vrbinput.sty}, a style by + Bernd Raichle which must be revised as discussed below + in the section labeled ``\hyperref[sec:important]{Important}'' +\item \pkg{HERE.STY} by David Carlisle +\end{itemize} + +\pkg{verbasef} allows you to input (subsections of a) file, print them in +verbatim mode, while automatically breaking up the inputted lines into +pieces of a given length, which are output as figures. These figures are +posted using the \verb+[H]+ specification, which forces \LaTeX\ to place the figure +at the spot of invocation, rather than floating the figures to the top of +the next page. + +Options for the verbasef specification include: +% +\begin{itemize} +\item numbering of input lines +\item differential number of lines for the first page +\item specification of the font for the verbatim output +\item specification of the font for the optional line numbering +\item specification of line numbers as labels \\ + To use the labelling feature, non-standard approaches must be used. + A line number will be inserted into the main \texttt{.aux} file with label \texttt{foo}, + if the specification + % +\begin{verbatim} +Vzzlabel|foo| +\end{verbatim} + % + is inserted \emph{after} the line which is to be indicated. Thus, if we have + a file with the following + % +\begin{verbatim} +a line +b line +Vzzlabel|fooa| +c line +Vzzlabel|foob| +d line +Vzzlabel|fooc| +e line +f line +Vzzlabel|food| +\end{verbatim} + % + these lines will be found in the \texttt{.aux} file. + % +\begin{verbatim} +\newlabel{fooa}{{2}{1}} +\newlabel{foob}{{3}{1}} +\newlabel{fooc}{{4}{1}} +\newlabel{food}{{6}{1}} +\end{verbatim} + % + They can be used as any other label, for instance + % +\begin{verbatim} +Using the labeling feature, pay attention to Line \ref{food} (found +on Page \pageref{food}) to understand this radically new method. +\end{verbatim} + + Any lines with the \texttt{Vzzlabel} specification will be ignored in the + line counts. +\end{itemize} + + +\section{Using the style} + +\pkg{verbasef} is an adaptation of \pkg{VRBSUBFILE}, from Norman Walsh. +I fully acknowledge Mr./Dr.~Walsh as the imprimature of the code ensconced +herein, but have included other features as indicated above. + +Comments and suggestions always welcome. +% +\begin{verse} + Paul A. Thompson \\ + Department of Psychiatry, Data Analysis and Statistics Section \\ + Case Western Reserve University \\ + Cleveland, OH 44106 + + AudioNet: (216) 844-8946 \\ + InterNet: \mail{pat@po.cwru.edu} +\end{verse} + + +\minisec{User interface:} + +\begin{description} +\item[\cmd{\VautoSubF}\oarg{\#1}\meta{\#2}\meta{\#3}\meta{\#4}\meta{\#5}\meta{\#6}] + Input lines \meta{\#2} to \meta{\#3} of file \meta{\#4}. If present, \meta{\#1} indicates which lines + should be numbered. For example, if \meta{\#1} is~5, lines 5, 10, 15, etc. + will be numbered. By default, lines are not numbered at all. + \meta{\#5} is figure caption, and \meta{\#6} is figure label. + +\item[\cmd{VautoSfFont}\oarg{\#1}\meta{\#2}] + Use font \meta{\#2} for verbatim input lines and, if present, use font \meta{\#1} for + line numbers. By default, \meta{\#2} is \cmd{\tt} and \meta{\#1} is \verb+\rm\tiny+. + +\item[\cmd{VautoPl}\meta{\#1}] + Placement of the figure (either \opt{H} or some other placement character) + By default, placement is \opt{H} (immediate here, \pkg{here.sty}) + (This currently does not function. All placement is done using the + \opt{H} specification.) + +\item[\cmd{VautoLines}\oarg{\#1}{\meta{\#2}}] + \meta{\#2} is number of lines per page. If \meta{\#1} is included, it is the number of + lines for the first page. If not, $\text{\meta{\#1}} = \text{\meta{\#2}}$ +\end{description} + + +\section{Important} +\label{sec:important} + +In order to use the \pkg{verbasef.sty} file, \pkg{VRBINPUT.STY} must be \emph{modified} +and given a \emph{new name.} Here are instructions for modification: + +You must do \emph{either} \ref{item:1}--\ref{item:4} below \emph{or} \ref{item:5} below to get \pkg{verbasef} to run properly. + +\begin{enumerate} +\item \label{item:1} + Obtain \pkg{vrbinput.sty} from the standard distribution channels. The file + should have the following characteristics: + % +\begin{verbatim} +\fileversion{v1.0b} +\filedate{91/06/30} +\docdate{91/08/05} +\end{verbatim} + +\item Copy \texttt{vrbinput.sty} to a file \texttt{vrbexin.sty}. \emph{This must be done prior to + editing any file.} + +\item Edit the file \texttt{vrbexin.sty}. Please don't edit the file \texttt{vrbinput.sty}. + Change Line~90 from \cmd{\verbatim@startline} to \cmd{\verbatim@start} + as shown in the fragment of code from Lines~89--92 below. + % +\begin{verbatim} +\def\verbatim@readfile#1{% + \verbatim@start + \openin\verbatim@in@stream #1\relax + \ifeof\verbatim@in@stream +\end{verbatim} + +\item \label{item:4} \emph{Very important.} \emph{Change all occurrances} of \texttt{vrbinput}, in titles, typeout + sections and credits to \texttt{vrbexin}. Remove all references to the original + author, Bernd Raichle, as he is not the author of the style file \pkg{vrbexin}. + You may substitute my name for Mr.~Raichle if you wish. + +\item \label{item:5} Obtain \texttt{vrbexin.sty} directly from the same subdirectory that \pkg{verbasef} was + found in. + +\item Place this \texttt{.sty} file in a place searched by \TeX, on the \texttt{TEXINPUT} path. +\end{enumerate} +% +After I can figure out the \textsc{docstrip} utility, I will do this stuff myself. + +Note: As is standard practice in the \TeX\ community, any modifications in +\texttt{.sty} files must be given new names. Thus, it is certainly vitally important +that the modifications in \pkg{vrbinput.sty} be done in the file named +\texttt{vrbexin.sty}, not in the original which I did not write. + +\end{document} diff --git a/macros/latex/contrib/verbasef/verbasef.sty b/macros/latex/contrib/verbasef/verbasef.sty new file mode 100644 index 0000000000..48687d99c4 --- /dev/null +++ b/macros/latex/contrib/verbasef/verbasef.sty @@ -0,0 +1,339 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% verbasef.sty +% +% This stands for VERBatim Automatic Splitting of External Files. +% +% Copyright (c) 1994 by Paul A. Thompson, All Rights Reserved. +% Copy freely as per the GNU Copyleft. +% +% Requires: +% The New Font Selection Scheme (NFSS) as implemented in LaTeX2e +% VERBATIM.STY ::: Rainer Schoepf +% VRBEXIN.STY ::: You +% However, it is based on vrbinput.sty, a style by +% Bernd Raichle which must be revised as discussed below +% in the section labeled IMPORTANT +% HERE.STY ::: David Carlisle +% +% verbasef allows you to input (subsections of a) file, print them in +% verbatim mode, while automatically breaking up the inputted lines into +% pieces of a given length, which are output as figures. These figures are +% posted using the [H] specification, which forces LaTeX to place the figure +% at the spot of invocation, rather than floating the figures to the top of +% the next page. +% +% Options for the verbasef specification include: +% o numbering of input lines +% o differential number of lines for the first page +% o specification of the font for the verbatim output +% o specification of the font for the optional line numbering +% o specification of line numbers as labels +% To use the labelling feature, non-standard approaches must be used. +% A line number will be inserted into the main .aux file with label foo, +% if the specification +% +% Vzzlabel|foo| +% +% is inserted AFTER the line which is to be indicated. Thus, if we have +% a file with the following +% +% a line +% b line +% Vzzlabel|fooa| +% c line +% Vzzlabel|foob| +% d line +% Vzzlabel|fooc| +% e line +% f line +% Vzzlabel|food| +% +% these lines will be found in the .aux file. +% \newlabel{fooa}{{2}{1}} +% \newlabel{foob}{{3}{1}} +% \newlabel{fooc}{{4}{1}} +% \newlabel{food}{{6}{1}} +% +% They can be used as any other label, for instance +% +% Using the labeling feature, pay attention to Line \ref{food} (found on +% Page \pageref{food}) to understand this radically new method. +% +% Any lines with the Vzzlabel specification will be ignored in the +% line counts. +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% USING THE styLE +% +% verbasef is an adaptation of VRBSUBFILE, from Norman Walsh. +% I fully acknowledge Mr./Dr. Walsh as the imprimature of the code ensconced +% herein, but have included other features as indicated above. +% +% Comments and suggestions always welcome. +% Paul A. Thompson +% Department of Psychiatry, Data Analysis and Statistics Section +% Case Western Reserve University +% Cleveland, OH 44106 +% +% AudioNet: (216) 844-8946 +% InterNet: pat@po.cwru.edu +% +% User interface: +% VautoSubF[#1]#2#3#4#5#6 +% Input lines #2 to #3 of file #4. If present, #1 indicates which lines +% should be numbered. For example, if #1 is 5, lines 5, 10, 15, etc. +% will be numbered. By default, lines are not numbered at all. +% #5 is figure caption, and #6 is figure label. +% +% VautoSfFont[#1]#2 +% Use font #2 for verbatim input lines and, if present, use font #1 for +% line numbers. By default, #2 is \tt and #1 is \rm\tiny. +% +% VautoPl#1 +% Placement of the figure (either H or some other placement character) +% By default, placement is H (immediate here, here.sty) +% (This currently does not function. All placement is done using the +% H specification.) +% +% VautoLines[#1]{#2} +% #2 is number of lines per page. If #1 is included, it is the number of +% lines for the first page. If not, #1=#2 +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +% IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +% IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% In order to use the verbasef.sty file, VRBINPUT.STY must be MODIFIED +% and given a NEW NAME. Here are instructions for modification: +% +% You must do EITHER 1-4 below OR 5 below to get verbasef to run properly. +% +% 1. Obtain vrbinput.sty from the standard distribution channels. The file +% should have the following characteristics: +% +% \fileversion{v1.0b} +% \filedate{91/06/30} +% \docdate{91/08/05} +% +% 2. Copy vrbinput.sty to a file vrbexin.sty. THIS MUST BE DONE PRIOR TO +% EDITING ANY FILE. +% +% 3. Edit the file vrbexin.sty. Please don't edit the file vrbinput.sty. +% Change Line 90 from +% \verbatim@startline +% to +% \verbatim@start +% as shown in the fragment of code from Lines 89-92 below. +% +% \def\verbatim@readfile#1{% +% \verbatim@start +% \openin\verbatim@in@stream #1\relax +% \ifeof\verbatim@in@stream +% +% +% 4. VERY IMPORTANT. CHANGE ALL OCCURRANCES of vrbinput, in titles, typeout +% sections and credits to vrbexin. Remove all references to the original +% author, Bernd Raichle, as he is not the author of the style file vrbexin. +% You may substitute my name for Mr. Raichle if you wish. +% +% 5. Obtain vrbexin.sty directly from the same subdirectory that verbasef was +% found in. +% +% 6. Place this .sty file in a place searched by TeX, on the TEXINPUT path. +% +% After I can figure out the docstrip utility, I will do this stuff myself. +% +% Note: As is standard practice in the TeX community, any modifications in +% .sty files must be given new names. Thus, it is certainly vitally important +% that the modifications in vrbinput.sty be done in the file named +% vrbexin.sty, not in the original which I did not write. +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +% IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +% IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\NeedsTeXFormat{LaTeX2e}% +\RequirePackage{vrbexin}% +\RequirePackage{verbatim}% +\RequirePackage{here}% +\def\fileversion{v1.1}% +\def\filedate{95/01/20}% +\typeout{Style-Option: `verbasef' \fileversion \space <\filedate> (ndw)}% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +\newcounter{g@nu} +\newcommand{\incr@macv}[2]{ +\setcounter{g@nu}{#1}\addtocounter{g@nu}{#2}% +\global\edef#1{\theg@nu}% +} +\gdef\Vauto@LinePage{0}% % lines/page counter +\gdef\Vauto@NP{0}% % Number of pages +\gdef\Vauto@Fignum{0}% % Figure number - retain over figures +\gdef\Vauto@Pagea{0}% % # lines page 1 +\gdef\Vauto@LineNo{0}% % current line number +\gdef\Vauto@LineMod{0}% % modulo to print on +\gdef\Vauto@LineLoop{0}% % loop count in line number (1..Mod) +\gdef\Vauto@LineStart{0}% % first line to print +\gdef\Vauto@LineCount{0}% % number of lines to print +\gdef\Vauto@NotLabel{0}% % Printable - not a label +\gdef\Vauto@PFlag{0}% % print this line? +% +%%%% Default table placement, and macros to change table placement +\def\Vauto@Plx{H}\def\Vauto@Pl#1{\def\Vauto@Plx{#1}}\def\VautoPl{\Vauto@Pl}% +%%%% Default verbatim font and verbatim line number font +\def\Vauto@sfFont{\tt}\def\Vauto@sfLNF{\rm\tiny}% +% +%%%% Macros to change fonts +\def\Vauto@sbf[#1]#2{\def\Vauto@sfFont{#2}\def\Vauto@sfLNF{#1}}% +\def\Vauto@svf#1{\def\Vauto@sfFont{#1}}% +\def\VautoSfFont{% + \@ifnextchar[{\Vauto@sbf}{\Vauto@svf}%] % This is for bracket match +}% % ] has no effect on code +%%%% Macros to set number of lines per figure +\def\Vauto@LPP{46}\def\Vauto@LPPa{46}% +\def\Vauto@TwoLPP[#1]#2{\def\Vauto@LPP{#2}\def\Vauto@LPPa{#1}}% +\def\Vauto@OneLPP#1{\def\Vauto@LPP{#1}\def\Vauto@LPPa{#1}}% +\def\VautoLines{% + \@ifnextchar[{\Vauto@TwoLPP}{\Vauto@OneLPP}%] % Bracket match +}% +\def\VautoSubFF{\@ifnextchar[{\Vauto@sbf}{\Vauto@svf}%] +}% +\def\xxparse Vzzlabel|#1|{% +\immediate\write\@mainaux{\string\newlabel{#1}{{\Vauto@LineNo}{\thepage}}}% +}% +\def\ifsubstr#1#2#3#4%% #1=string #2=substring, #3=yes, #4=no +{% + \def\tempa##1#2##2\over_##3\end{% + \ifx##3% % can't parse + \gdef\Vauto@NotLabel{1}% + \else% can parse + \gdef\Vauto@NotLabel{0}% + \xxparse #1% + \fi% +}% +\tempa#1\over_\over#2\over___\end% +}% +% +%%Macro which sets beginfigure and endfigure constructions +% +\def\Vauto@etab#1#2#3{% {caption}{label}{prtype}% + \ifnum#3<3% 1 or 2 qualifies here + \begingroup \normalsize\rm\selectfont% + \ifnum\Vauto@NP=1 \caption{#1}\label{#2}% + \global\edef\Vauto@Fignum{\thefigure}% + \else \vspace{2em}% + \centerline{Figure \Vauto@Fignum: #1 (cont.)}% + \fi% + \endgroup% + \end{figure}% + \def\Vauto@PrCnt{\Vauto@LPP}% + \ifnum#3=2 \setcounter{figure}{\Vauto@Fignum}\fi% + \fi% + \ifnum#3>1% 2 or 3 qualifies here + \begin{figure}[H]% +% \begin{figure}[\theVauto@Plx]% + \incr@macv{\Vauto@NP}{1}% + \gdef\Vauto@LinePage{0}% + \gdef\Vauto@PFlag{1}% + \fi% + \catcode`\^^M9% +}% +% +%%%% Internal macro that does the work... +\def\Vauto@sf#1#2#3{\begingroup% + \def\verbatim@start{\Vauto@etab{#2}{#3}{3}}% + \def\verbatim@finish{\Vauto@etab{#2}{#3}{1}}% + \def\verbatim@font{\Vauto@sfFont\selectfont}% + \gdef\Vauto@LineNo{0}% + \gdef\Vauto@LineLoop{0}% + \parskip=0pt% + \def\verbatim@processline{% + \edef\subz{\noexpand\ifsubstr{\the\verbatim@line}{Vzzlabel}{1}{0}}\subz% + \ifnum\Vauto@NotLabel=1% + \incr@macv{\Vauto@LineNo}{1}% + \incr@macv{\Vauto@LineLoop}{1}% + \gdef\Vauto@PFlag{1}% + \ifnum\Vauto@LineStart>0% we haven't reached the first line yet... + \gdef\Vauto@PFlag{0}% + \incr@macv{\Vauto@LineStart}{-1}% + \else% + \ifnum\Vauto@LineCount=0% we're out of the "printable" region + \gdef\Vauto@PFlag{0}% + \else% + \incr@macv{\Vauto@LineCount}{-1}% decrease the line count + \fi% + \fi% + % debugging... + %\typeout{Start: \theVauto@LineStart, Count: \theVauto@LineCount, + % Print: \theVauto@PrintFlag, Loop: \theVauto@LineLoop, + % Mod: \theVauto@LineMod}% + \ifnum\Vauto@PFlag=1% + \leavevmode% + \ifnum\Vauto@LineLoop=\Vauto@LineMod% + \llap{{\Vauto@sfLNF\selectfont \Vauto@LineNo}% + \ \hskip\@totalleftmargin}% + \gdef\Vauto@LineLoop{0}% + \else% + \llap{\phantom{\Vauto@sfLNF\selectfont 0}\ % + \hskip\@totalleftmargin}% + \fi% + \the\verbatim@line\par% + \incr@macv{\Vauto@LinePage}{1}% + \else% + \ifnum\Vauto@LineLoop=\Vauto@LineMod% + \gdef\Vauto@LineLoop{0}% + \fi% + \fi% + \ifnum\Vauto@LinePage=\Vauto@PrCnt \Vauto@etab{#2}{#3}{2}\fi% + \fi% End of the loop printing non-labels + }% + \verbatiminput{#1} \endgroup}% +% +\def\Vauto@sfP#1#2#3#4#5{% +\begingroup% + \gdef\Vauto@PrCnt{\Vauto@LPPa}% + \gdef\Vauto@NP{0}% % Number of pages + \gdef\Vauto@LineMod{-1}% + \gdef\Vauto@LineStart{#1}% + \gdef\Vauto@LineCount{#2}% + \incr@macv{\Vauto@LineCount}{-\Vauto@LineStart}% + \incr@macv{\Vauto@LineCount}{1}% + \incr@macv{\Vauto@LineStart}{-1}% + \Vauto@sf{#3}{#4}{#5}% + \catcode`\^^M`\^^M% +\endgroup% +}% +\def\Vauto@sfN[#1]#2#3#4#5#6{% +\begingroup% + \gdef\Vauto@PrCnt{\Vauto@LPPa}% + \gdef\Vauto@NP{0}% % Number of pages + \gdef\Vauto@LineMod{#1}% + \gdef\Vauto@LineStart{#2}% + \gdef\Vauto@LineCount{#3}% + \incr@macv{\Vauto@LineCount}{-\Vauto@LineStart}% + \incr@macv{\Vauto@LineCount}{1}% + \incr@macv{\Vauto@LineStart}{-1}% + \Vauto@sf{#4}{#5}{#6}% + \catcode`\^^M`\^^M% +\endgroup% +}% +\def\VautoSubF{% + \@ifnextchar[{\Vauto@sfN}{\Vauto@sfP}%] +}% +\endinput% +%%%% EOF -- cgit v1.2.3