% Here is a version of Adrian's VERBATIM.STY, for inputting whole files
% verbatim, which is "more LaTeX-like" in that it uses the actual LaTeX 
% macros which set up the `verbatim' environment.
%
% As a matter  of interest, it is much nicer for TeX if you input large
% quantities of "verbatim material" from an "external file" rather than by use 
% of the `verbatim' environment (i.e. putting the material in the main input 
% file. This is because this environment, in common with most (but not all)
% other "verbatim macros", makes the whole of the "vebatim material" a macro
% argument and therefore eats up TeTeX's internal memory.
%
% Chris Rowley
%

% ---              V E R B A T I M F I L E S . S T Y
%
% --- This LaTeX style-file defines two user-callable macros:
% ---     \verbatimfile{<filename>}{<font size>}  for verbatim inclusion
%                                                 of a file
% ---     \verbatimlisting{<filename>}{<font size>} for verbatim inclusion 
%                                                   with line numbers
%
%           <font size> = \normalsize, \small, \footnotesize  etc.
%
% --- The macros are based on those distributed with Sunil Podar's
% --- `EPIC.STY' macro package, attributed to Tim Morgan,
% --- modified to keep internal macros internal by Adrian F. Clark,
% --- alien@uk.ac.essex.ese
% --- ---and further latexification by Chris Rowley,
% --- ca_rowley@uk.ac.open.acs.vax.
% 
% --- modified to require 2nd input field regarding the font size
%     by Joseph C. Nadeau
%
% --- Note that the precise layout of line breaks in this file is important!
%

\def\verbatimfile#1#2{\begingroup
          \@verbatim \frenchspacing \@vobeyspaces #2\tt
          \input#1 \endgroup
}

\newcounter{lineno}

\def\verbatimlisting#1#2{\setcounter{lineno}{0}%
    \begingroup \@verbatim \frenchspacing \@vobeyspaces #2\tt \parindent=20pt
    \everypar{\stepcounter{lineno}\llap{\thelineno\ \ }}\input#1
    \endgroup
}
