summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/misc
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/misc
Initial commit
Diffstat (limited to 'macros/latex/contrib/misc')
-rw-r--r--macros/latex/contrib/misc/abstbook.cls266
-rw-r--r--macros/latex/contrib/misc/beletter.cls58
-rw-r--r--macros/latex/contrib/misc/bibcheck.sty87
-rw-r--r--macros/latex/contrib/misc/concrete.sty24
-rw-r--r--macros/latex/contrib/misc/flashcard.cls177
-rw-r--r--macros/latex/contrib/misc/hexdump.sty117
-rw-r--r--macros/latex/contrib/misc/iagproc.cls265
-rw-r--r--macros/latex/contrib/misc/linsys.sty27
-rw-r--r--macros/latex/contrib/misc/mitpress.sty33
-rw-r--r--macros/latex/contrib/misc/nextpage.sty55
-rw-r--r--macros/latex/contrib/misc/texilikechaps.sty137
-rw-r--r--macros/latex/contrib/misc/texilikecover.sty43
-rw-r--r--macros/latex/contrib/misc/thrmappendix.sty217
-rw-r--r--macros/latex/contrib/misc/topcapt.sty61
-rw-r--r--macros/latex/contrib/misc/ut-backref.sty163
-rw-r--r--macros/latex/contrib/misc/verbasef.sty339
-rw-r--r--macros/latex/contrib/misc/vrbexin.sty80
17 files changed, 2149 insertions, 0 deletions
diff --git a/macros/latex/contrib/misc/abstbook.cls b/macros/latex/contrib/misc/abstbook.cls
new file mode 100644
index 0000000000..ff699c941c
--- /dev/null
+++ b/macros/latex/contrib/misc/abstbook.cls
@@ -0,0 +1,266 @@
+%
+% This is second version of the class. It redefines Chapters
+% sections and subsections, in order to use the minitoc style!
+%
+%
+% DESCRIPTION:
+%
+% -``Quick and dirty'' class file for ``book of abstracts''
+% (used for IWEPNM - Kirchberg 1997)
+%
+% - It's getting less Quick and dirty, but it's far from beeing
+% what i want, should be much more flexible for that.
+%
+% -Written by Havlik Denis (havlik@pap.univie.ac.at) 02/1997.
+% -Based on the report class.
+%
+% This .cls file has been written for the conference in Kirchberg.
+% It has been designed to produce a4-size pages,
+% which are later converted into a5. Output is double-sided.
+%
+% Abstracts are suposed to be in separate files, with simple
+% formating (title, name, adress, text).
+%
+% As i have a feeling that many conferences need something
+% like this booklet, i will try to document this file as good as
+% i can. In the case anybody is interesting to use this class,
+% but neads more flexibility or new features, i would be pleased
+% to help. This is a first time ever that i write a Latex class,
+% but i'm learning.
+%
+% Features:
+% -Conferences consist of days and sessions.
+% -In every day there can be one or more sessions, in every
+% session there can be several abstracts. Abstracts appear
+% two on a page, with short name of the session, the number
+% of the abstract and an additional entry WRITTEN ON THE MARGIN.
+% -In the headings, day appears on the even, and session on the odd
+% pages.
+% -For every day, a table of abstracts is printed
+% -names of the authors are automatically added to index of authors
+% (don't forget to run the ``makeindex''!!!)
+%
+% I would like to thank the ``\"Osterreichischen Fonds zur F\"orderung
+% der wissenschaftlichen Forschung'' for financing my work
+% under project Nr. +P10924-PHY. Furthermore, a Linux, and \TeX/\LaTeX
+% comunity, for providing wonderfull free software, that i use for all my
+% work. Special thanks to Jean-Pierre Drucbert
+% Havlik Denis
+%
+% TODO:
+% 1. redefine \titl, \name and \adr, so i can get automatic:
+% indexing of authors and automatic referencing of authors to adress
+% 2. automatic resizing of abstracts to fit other page-sizes,
+% (not only a4) and other margines etc.
+% 3. add formatting stuff like:
+% \newcommand{\titlstyle}{\bf \Large \MakeUppercase}
+% with some logical names and use it consequently for all the macros
+% in the whole class
+% 4. ?%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{abstbook}[1997/02/10 for typseting book of abstracts]
+\DeclareOption{twocolumn}{\OptionNotUsed} % makes no sense to use it...
+% All other options go to ``report'' class.
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{report}}
+\ProcessOptions
+\LoadClass[a4,twoside]{report}
+\RequirePackage{makeidx} % neaded to make index
+\RequirePackage{graphicx} % neaded to input graphics into booklet.
+%\RequirePackage{minitoc}
+% page - size related stuff. Looks good on my printer...
+\setlength{\unitlength}{1cm}
+%\setlength{\topmargin}{1.5cm}
+\setlength{\hoffset}{-0.8in}
+%\setlength{\voffset}{-1in}
+\setlength{\textwidth}{16.5cm}
+\setlength{\textheight}{24.8cm}
+\setlength{\topskip}{0cm}
+\setlength{\footskip}{0cm}
+\setlength{\oddsidemargin}{1.5cm}
+\setlength{\evensidemargin}{1.5cm}
+\setlength{\marginparsep}{0.3cm}
+\setlength{\marginparwidth}{1.0 cm}
+\setlength{\parindent}{0cm}
+\pagestyle{myheadings} % to get the day - session in headings!
+
+% I had to redefine \chapter because i have to use it, if i want
+% mini-tables-of-contents...
+\renewcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
+ \global\@topnum\z@
+ \@afterindentfalse
+ \secdef\@chapter\@schapter}
+\def\@makechapterhead#1{\relax} %write nothing...
+\RequirePackage{minitoc}
+
+\AtBeginDocument{% this comes after \begin{document}
+ \makeindex
+ \dominitoc
+ \faketableofcontents}
+
+\AtEndDocument{\printindex} % dont forget to run the ``makeindex'' program!
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% COMMANDS
+%
+\newcounter{Cabstract}[section]
+\newsavebox{\ConferenceDay} % hier comes the name of the day
+\newsavebox{\SessionName} % name of the session
+\newsavebox{\ShortSessionName}% short name of the session
+% Counters for days, sessions and abstracts.
+% hope this will work....
+
+\sbox{\ConferenceDay}{}
+\sbox{\SessionName}{}
+\markboth{\usebox{\ConferenceDay}}{\usebox{\SessionName}}
+
+\def\mtctitle{\relax}%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Command: \conferenceday
+% Usage: \conferenceday{some day}
+% Provides: advances day-counter, adds the day-name to TOC
+% and clears the page
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newcommand{\conferenceday}[1]{%
+ \chapter{#1}
+ {\Large \bf #1}\par
+ \minitoc
+ \sbox{\ConferenceDay}{#1}
+ \sbox{\SessionName}{#1}
+ }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Command: \sessionname
+% Usage: \sessionname{shortname}{longname}
+% Provides: advances session-counter, adds the session-name to TOC
+% and clears the page
+% Important: I'm not using \section here. Instead, i try to emulate
+% the part that i nead. It worked with my version
+% of minitoc, but didn't work with an older version
+% we had at the university. Bad. Redefining \section
+% would be better, but i can't figure it out.
+% Well, Jean-Pierre Drucbert <Jean-Pierre.Drucbert@onecert.fr>
+% said it should be O.K., so be it.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newcommand{\sessionname}[2]{%
+ \clearpage
+ \refstepcounter{section}
+ \sbox{\ShortSessionName}{#1}
+ \sbox{\SessionName}{#2}
+ \addcontentsline{toc}{section}{\MakeUppercase{#2}}
+ }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Following definitions determine how to deal with the abstracts %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ABSTRACTS SHOULD BE IN SEPARATE FILES, FORMATED LIKE THIS:
+%
+% Abstract example:
+% \index{Name1} \index{Name2}... - this is nessesary for authornames
+% to appear in index!!!
+% \titl{Title of the abstract}
+% \name{A. First$^1$, A. Second$^1$, A. Third$^2$}
+% \adr{1~First address\\
+% 2~Second addrass}
+%
+% \begin{abstr}
+% Abstracts text (in Latex notation). Most of the Latex commands
+% can be used here...
+% \end{abstr}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+% TO DO:
+% I would like to change \name and \adr in such a way that
+%
+% \name[mark1]{name1}
+% \name[mark2]{name2}
+% \name[mark1]{name3}
+% \adr[adr1]{adress1}
+% \adr[adr2]{adress2}
+%
+% produces the same result as one obtained in the previous example
+% and automaticaly includes the names into index list...
+% Unfortunately, i don't know how to do it.
+% !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% COMMANDS TO BE USED IN ABSTRACTS:
+%
+% Title of the abstract
+\newcommand{\titl}[1]{\large \bf \MakeUppercase{#1}\par\medskip}
+% author(s) name(s)
+\newcommand{\name}[1]{\rm \normalsize #1\par\smallskip}
+% author(s) addres(es)
+\newcommand{\adr}[1]{\it \normalsize #1\par\smallskip}
+% enviroment ``abstr''
+\newenvironment{abstr}{\par\medskip \normalsize \rm}{\par\bigskip}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% COMMANDS TO BE USED IN THE MAIN DOCUMENT
+%
+% Command: \loadabstr
+% Usage: \loadabstr[additional]{TOC-entry}{filename.tex}
+% Provides: reserves 1/2 page for the abstract, loads the abstract
+% from the file ``filename.tex'', writes the ``TOC-entry''
+% to table of contents, advances the abstracts-counter
+% and writes the short name of the session, abstract-number
+% and an additional entry to the margin.
+% (We have used the additional entry for the time..)
+%usage: \loadabstr[additional]{toc-entry}{name.tex}
+\newcommand{\loadabstr}[3][\relax]{%
+ \stepcounter{Cabstract}
+ \par
+ \rule[-6cm]{0cm}{12cm} % well, you might nead to change this
+ % if you change the size/format of the page
+ \marginpar{%
+ \large\centering
+ #1\par\smallskip
+ \usebox{\ShortSessionName}\par\smallskip
+ \arabic{Cabstract}}
+ \IfFileExists{#3}{%
+ \begin{minipage}{16.5cm} % this too...
+ \input{#3}
+ \end{minipage}}
+ {File #3 not found}
+ \addcontentsline{toc}{subsection}{#2}
+ }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Command: \loadpsabstr
+% Usage: \loadpsabstr[additional]{toc-entry}{name.ps}{formating}
+% Provides: Some of our abstracts arrived as postscript or with s-mail
+% This commands loads the postscript file, cuts part of it out
+% and puts it on its place, just like \loadabstr does with
+% an latex file. Additional parameter goes directly to
+% ``includegraphics'' (see explanation of graphicx package)
+% try something like: scale=1, bb=2.5cm 16cm 19cm 28cm
+\newcommand{\loadpsabstr}[4][\relax]{%
+ \stepcounter{Cabstract}
+ \par
+ \rule[-6cm]{0cm}{12cm} % well, you might nead to change this
+ % if you change the size/format of the page
+ \marginpar{%
+ \large\centering
+ #1\par\smallskip
+ \usebox{\ShortSessionName}\par\smallskip
+ \arabic{Cabstract}}
+ \begin{minipage}{16.5cm} % this too...
+ \unitlength 1cm
+ \IfFileExists{#3}{%
+ \begin{picture}(16.5,12) % and this, too!
+ \put(0,0){%
+ \includegraphics[%
+ angle=0, clip=true, #4]{#3}}
+ \end{picture}}
+ {File #3 not found!}
+ \end{minipage}
+ \addcontentsline{toc}{subsection}{#2}
+ }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% end of the Kirchberg.cls
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+
diff --git a/macros/latex/contrib/misc/beletter.cls b/macros/latex/contrib/misc/beletter.cls
new file mode 100644
index 0000000000..2158efddf9
--- /dev/null
+++ b/macros/latex/contrib/misc/beletter.cls
@@ -0,0 +1,58 @@
+%%%%%%%%%% beletter.cls %%%%%%%%%%
+% This file is public domain
+% This code is unsupported, and comes with no warranty.
+% This class was written by James Kilfiger and Frank Lenaerts, to meet
+% the specifications for formatting Belgium letters recommended by
+% Frank's wife.
+% It can be used in place of the standard LaTeX class
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{beletter}[1999/06/05 Belgium Letter Class]
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{letter}}
+\ProcessOptions\relax
+\LoadClass{letter}
+% changed the opening
+\renewcommand*{\opening}[1]{%
+ \thispagestyle{firstpage}%
+ \ifx\@empty\fromaddress
+ \else %if there is a from address
+ \noindent\begin{tabular}[t]{@{}l@{}}%
+ \fromaddress
+ \end{tabular}\par%
+ \fi
+ \noindent\begin{tabular}[t]{@{}l@{}}%
+ \toname\\ \toaddress
+ \end{tabular}\par
+ {\raggedleft\@date\par}% Put the date on a line of it's own
+% \@date\par%
+ \vspace{2\parskip}%
+ #1\par\nobreak
+ \vspace{2\parskip}%
+}
+
+%%% Change these!!, or let babel change them for you.
+\renewcommand*{\ccname}{cc}
+\renewcommand*{\enclname}{}
+\renewcommand*{\pagename}{}
+\renewcommand*{\headtoname}{}
+
+% changed the closing
+\renewcommand{\closing}[1]{\par\nobreak\vspace{\parskip}%
+ \stopbreaks
+ \vspace{2\parskip}%
+ \vspace{2\parskip}%
+ \noindent
+% \ifx\@empty\fromaddress\else
+% \hspace*{\longindentation}\fi
+ \parbox{\indentedwidth}{\raggedright
+ \ignorespaces #1\\[6\medskipamount]%
+ \ifx\@empty\fromsig
+ \fromname
+ \else \fromsig \fi\strut}%
+ \par}
+
+\renewcommand*{\cc}[1]{%
+ \par\noindent
+ \parbox[t]{\textwidth}{%
+ \@hangfrom{\normalfont\ccname}%
+ \ignorespaces #1\strut}\par}
+\endinput
diff --git a/macros/latex/contrib/misc/bibcheck.sty b/macros/latex/contrib/misc/bibcheck.sty
new file mode 100644
index 0000000000..03c8c08455
--- /dev/null
+++ b/macros/latex/contrib/misc/bibcheck.sty
@@ -0,0 +1,87 @@
+%
+% bibcheck.sty
+%
+% Copyright (c) 2001, Radhakrishnan CV <cvr@river-valley.com>
+% Rajagopal CV <cvr3@river-valley.com>
+% http://www.river-valley.com
+%
+% River Valley Technologies, Cotton Hills
+% Trivandrum, India 695034
+%
+% Tel: +91 471 233 7501
+%
+% This program is free software; you can redistribute it and/or
+% modify it under the terms of the GNU General Public License
+% as published by the Free Software Foundation; either version 2
+% of the License, or (at your option) any later version.
+%
+% This program is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with this program (gpl.txt); if not, write to the Free
+% Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
+% MA 02111-1307, USA.
+%
+% $Id: gpl,v 1.1 2001/02/07 11:30:43 cvr Exp $
+%
+\NeedsTeXFormat{LaTeX2e}
+\def\Fileversion$#1: #2 ${\gdef\fileversion{#2}}
+\def\Filedate$#1: #2 #3 ${\gdef\filedate{#2}}
+\Fileversion$Revision: 1.1 $
+\Filedate$Date: 2001/02/07 11:30:43 $
+\ProvidesPackage{bibcheck}
+ [\filedate\space\fileversion\space check uncited bibitems (CVR)]
+\PackageWarningNoLine{bibcheck}
+ {****************************************\MessageBreak
+ Package bibcheck v,\fileversion\space loaded\MessageBreak
+ [check uncited bibitems (CVR)]\MessageBreak
+ ****************************************}
+
+\newwrite\uncitedwrite
+\immediate\openout\uncitedwrite=\jobname.uncited
+\def\definecitelabel#1{\expandafter\gdef\csname CVRBIB#1\endcsname{1}}
+\def\@checkbiblabel#1{%
+ \expandafter\ifx\csname CVRBIB#1\endcsname\relax
+ \typeout{*******************************************************}
+ \typeout{This bibitem [\Xbiblabel] with KEY [#1] is NOT CITED}
+ \typeout{*******************************************************}
+ \immediate\write\uncitedwrite{Bibitem [\Xbiblabel] with key [#1] not cited}
+ \immediate\write\uncitedwrite{}
+ \else \relax
+% \typeout{**********************************************************}
+% \typeout{This bibitem with LABEL [#1] is cited in the body text}
+% \typeout{**********************************************************}
+ \fi}
+
+\def\@citex[#1]#2{%
+ \let\@citea\@empty
+ \@cite{\@for\@citeb:=#2\do
+ {\@citea\def\@citea{,\penalty\@m\ }%
+ \definecitelabel{\@citeb}%
+ \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}%
+ \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi
+ \@ifundefined{b@\@citeb}{\mbox{\reset@font\bfseries ?}%
+ \G@refundefinedtrue
+ \@latex@warning
+ {Citation `\@citeb' on page \thepage \space undefined}}%
+ {\hbox{\csname b@\@citeb\endcsname}}}}{#1}}
+
+\def\@lbibitem[#1]#2{\item[\@biblabel{#1}\hfill]\if@filesw
+ {\def\Xbiblabel{#1}\@checkbiblabel{#2}%
+ \let\protect\noexpand
+ \immediate
+ \write\@auxout{\string\bibcite{#2}{#1}}}\fi\ignorespaces}
+\def\@bibitem#1{\item\if@filesw
+ \def\Xbiblabel{\the\value{\@listctr}}%
+ \@checkbiblabel{#1}%
+ \immediate\write\@auxout
+ {\string\bibcite{#1}{\the\value{\@listctr}}}\fi\ignorespaces}
+
+\endinput
+
+%%
+%% End of package bibcheck.sty
+%% \ No newline at end of file
diff --git a/macros/latex/contrib/misc/concrete.sty b/macros/latex/contrib/misc/concrete.sty
new file mode 100644
index 0000000000..bd51443806
--- /dev/null
+++ b/macros/latex/contrib/misc/concrete.sty
@@ -0,0 +1,24 @@
+\ProvidesPackage{concrete}[1996/10/08]
+\NeedsTeXFormat{LaTeX2e}
+% CONCRETE.sty
+% Provides fonts for an approximation of the style in _Concrete Mathematics_.
+% History.....................
+% 96-10-08 Jim Hefferon jhefferon@smcvt.edu
+% It is an FAQ on comp.text.tex that people look on CTAN for a style
+% with this name. Seems reasonable. They are always advised to
+% \usepackage the two packages below. So here is a wrapper style
+% to do that.
+% Remarks.....................
+% 96-10-08 jh
+% There are other styles for Concrete Math (concmath and something
+% from AMS-LaTeX 1.1 are the ones that I know of), but this one is
+% modular in that if the packages it calls are updated then of
+% course, this is updated also). In particular, there are no font
+% parameters, etc.
+% Bugs........................
+% *Unlike the AMS-LaTeX v. 1.1 style file, this makes no attempt to
+% provide any grafitti, etc. macros. Just the fonts. (One could
+% argue that those are document-style, not font, macros.)
+\RequirePackage{beton} % for the text fonts
+\RequirePackage{euler} % for the math fonts
+\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/misc/flashcard.cls b/macros/latex/contrib/misc/flashcard.cls
new file mode 100644
index 0000000000..ed91ada914
--- /dev/null
+++ b/macros/latex/contrib/misc/flashcard.cls
@@ -0,0 +1,177 @@
+%an experimental documentclass for flashcards.
+%Use only with the understanding it may not work at all.
+%More documentation after \endinput
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesClass{flashcard}
+ [2000/25/01 document class for flashcards]
+\newcommand\@ptsize{}
+\DeclareOption{a4paper}
+ {\setlength\paperheight {297mm}%
+ \setlength\paperwidth {210mm}}
+\DeclareOption{letterpaper}
+ {\setlength\paperheight {11in}%
+ \setlength\paperwidth {8.5in}}
+\DeclareOption{landscape}
+ {\setlength\@tempdima {\paperheight}%
+ \setlength\paperheight {\paperwidth}%
+ \setlength\paperwidth {\@tempdima}}
+\DeclareOption{centering}{\def\flashcardformat{\centering}}
+\DeclareOption{raggedright}{\def\flashcardformat{\raggedright}}
+\DeclareOption{raggedleft}{\def\flashcardformat{\raggedleft}}
+\DeclareOption{justify}{\def\flashcardformat{\relax}}
+\DeclareOption{10pt}{\renewcommand\@ptsize{0}}
+\DeclareOption{11pt}{\renewcommand\@ptsize{1}}
+\DeclareOption{12pt}{\renewcommand\@ptsize{2}}
+\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
+\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
+\DeclareOption{draft}{\setlength\overfullrule{5pt}}
+\DeclareOption{final}{\setlength\overfullrule{0pt}}
+\ExecuteOptions{10pt,oneside,justify,final}
+\ProcessOptions\relax
+\ifdim\paperwidth=0pt
+\ClassError{Flashcard}{No papersize specified}
+ {Please specify one of `a4paper' or `letterpaper' \MessageBreak
+ as a option to the documentclass}
+\fi
+\RequirePackage{calc}
+\input{size1\@ptsize.clo}
+\setlength\lineskip{1\p@}
+\setlength\normallineskip{1\p@}
+\renewcommand\baselinestretch{}
+\setlength\parskip{0pt}
+\setlength\parindent{0pt}
+\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
+\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
+\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
+\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
+\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
+\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
+\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
+\DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal}
+\DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal}
+\def\today{\ifcase\month\or
+ January\or February\or March\or April\or May\or June\or
+ July\or August\or September\or October\or November\or December\fi
+ \space\number\day, \number\year}
+\setlength\columnsep{10\p@}
+\setlength\columnseprule{0\p@}
+\interlinepenalty=10000
+\pagestyle{empty}
+\newsavebox\flashcardi
+\newsavebox\flashcardii
+\newsavebox\flashcardiii
+\newsavebox\flashcardiv
+\newsavebox\flashcardv
+\newsavebox\flashcardvi
+\newsavebox\flashcardvii
+\newsavebox\flashcardviii
+\newcounter{flashcard}
+\setcounter{flashcard}{1}
+\newlength\flashcardwidth
+\newlength{\flashcardheight}
+\newlength{\halfflashcardwidth}
+\setlength{\flashcardwidth}{0.5\textwidth-0.5\columnsep-2\fboxrule}
+\setlength{\flashcardheight}{0.25\textheight-2\fboxrule-0.5\columnsep}
+\setlength{\halfflashcardwidth}{0.5\flashcardwidth - 4pt}
+
+
+\newcommand{\FC@pvbox}[1]{\fboxsep=2pt\fboxrule=0pt\fbox{\vbox{#1}}}
+\newcommand\FC@nopadfbox{\fboxsep=0pt\fbox}
+\newcommand{\flashcardtopic}[1]{\gdef\theflashcardtopic{#1}}
+\flashcardtopic{}
+
+\providecommand{\flashcardfrontword}{Question}
+\providecommand{\flashcardbackword}{Answer}
+
+\newcommand\flashcard{\@ifnextchar[{\@flashcardx}{\@flashcardx[]}}
+\long\def\@flashcardx[#1]{\@ifnextchar[%
+ {\@flashcardy[#1]}
+ {\@flashcardy[#1][\theflashcardtopic]}}
+\long\def\@flashcardy[#1][#2]#3#4{%
+\noindent\FC@nopadfbox{%
+ \vbox to \flashcardheight{\@parboxrestore
+ \setlength{\hsize}{\flashcardwidth-4pt}%
+ \hbox to \flashcardwidth{\strut\FC@pvbox{%
+ \hsize=\halfflashcardwidth
+ \leavevmode\raggedright #1}%
+ \hss\vrule\hss
+ \FC@pvbox{
+ \hsize=\halfflashcardwidth
+ \leavevmode\raggedleft #2}}%
+ \hrule
+ \vss
+ \FC@pvbox{\advance\hsize by -4pt\flashcardformat #3}%
+ \vss
+ \hrule
+ \hbox to \flashcardwidth{\strut\hfill\FC@pvbox{\flashcardfrontword}}}}%
+\ifodd\c@flashcard
+ \hskip\columnsep
+\else
+ \hfill
+ \par
+\fi
+\expandafter\setbox\csname flashcard\romannumeral\c@flashcard\endcsname
+\hbox{%
+\FC@nopadfbox{%
+ \vbox to \flashcardheight{\@parboxrestore
+ \setlength{\hsize}{\flashcardwidth-4pt}%
+ \hbox to \flashcardwidth{\strut\FC@pvbox{%
+ \hsize=\halfflashcardwidth
+ \leavevmode\raggedright #1}%
+ \hss\vrule\hss
+ \FC@pvbox{%
+ \hsize=\halfflashcardwidth
+ \leavevmode\raggedleft #2}}%
+ \hrule
+ \vss
+ \FC@pvbox{\advance\hsize by -4pt\flashcardformat #4}%
+ \vss
+ \hrule
+ \hbox to \flashcardwidth{\strut\hfill\FC@pvbox{\flashcardbackword}}}}}%
+ \ifnum\value{flashcard}=8\relax
+ \vfill
+ \pagebreak
+ \noindent\hfill\unhbox\flashcardii\hskip\columnsep\unhbox\flashcardi\par
+ \noindent\hfill\unhbox\flashcardiv\hskip\columnsep\unhbox\flashcardiii\par
+ \noindent\hfill\unhbox\flashcardvi\hskip\columnsep\unhbox\flashcardv\par
+ \noindent\hfill\unhbox\flashcardviii\hskip\columnsep\unhbox\flashcardvii\par\par\vfill\pagebreak
+ \setcounter{flashcard}{1}%
+ \else
+ \stepcounter{flashcard}%
+ \fi\ignorespaces}
+
+\AtEndDocument{\flushflashcards}
+\newcommand\flushflashcards{%
+ \loop\ifnum\value{flashcard}>1\@flashcardy[][]{}{}\repeat}
+
+%\newcount\@@endlinechar
+%\@@endlinechar=\endlinechar
+\endlinechar=32 %pars must be explicit.
+
+\endinput
+
+The use of this class is as follows:
+
+\documentclass[a4paper]{flashcard}
+\renewcommand{\flashcardformat}{\centering\LARGE}
+\renewcommand{\flashcardbackword}{Solution}
+\flashcardtopic{The Holy Grail}
+
+\begin{document}
+\flashcard{Who rescues Sir Galahad from the Castle Anthrax?}{Sir
+Lancelot}
+\flashcard[Ni!]{What is the one word the Knights of Ni can't hear?}{It}
+\flashcard[][Credits]{What once bit the narrator's sister?}{A Moose}
+\flashcard{How does King Arthur defeat the killer rabbit?}{Uses the Holy
+Hand Grenade of Antioch}
+\flashcard{What majority is required by the peasants council for
+external matters?}{2/3}
+\flashcard{What initial punishment is to be given to Zut for her setting
+off the beacon?}{A spanking}
+\flashcard{How much does it cost to `bring out your dead'}{Nine pence}
+\flashcard{Who's last words are recorded in the cave?}{Joseph of
+Arimathea}
+\flashcard{What is the name of the enchanter}{There are some that call
+him Tim}
+\flashcard{What shape has the earth been proven to be?}{Banana shaped}
+\end{document}
diff --git a/macros/latex/contrib/misc/hexdump.sty b/macros/latex/contrib/misc/hexdump.sty
new file mode 100644
index 0000000000..7246ef87f9
--- /dev/null
+++ b/macros/latex/contrib/misc/hexdump.sty
@@ -0,0 +1,117 @@
+%%% File Hexdump.sty
+%%% Reads an ASCII hexdump file and puts it formated into
+%%% the document
+%%%
+%%% Author : Thomas Hillebrand (thillebrand@my-deja.com)
+%%% Date : 04/17/2000
+%%% Version: 0.1
+%%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{hexdump}[2000/21/06 v0.1 format hexdumps]
+%
+% Test weather the package 'moreverb.sty' is loaded
+%
+\RequirePackage{moreverb}
+%
+%
+% Dump title, defaults to 'Dump'
+% The command \dumpname{} sets the title of the dump
+%
+\newcommand{\dump@head}{Dump} % Default title is 'Dump'
+\newcommand{\dumpname}[1]{\renewcommand{\dump@head}{#1}}
+%
+% Set the fontsize, default is \scriptsize,
+% use \dumpfontsize{<size>} to change it
+%
+\newcommand{\dump@font@size}{\scriptsize}
+\newcommand{\dumpfontsize}[1]{\renewcommand{\dump@font@size}{#1}}
+%
+% Calculate the width
+%
+\newlength{\dumpwidth} % Variable for textwidth
+\settowidth{\dumpwidth}%
+ {\dump@font@size\texttt{00000000\space\space{}FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FFFFFFFFFFFFFFFF}}
+% The double \space puts two spaces between address and values
+%
+% Define new counter, arabic numbers
+% reset counter, if chapter changes
+%
+\newcounter{dumpcount}[chapter]
+\renewcommand{\thedumpcount}{\thechapter.\arabic{dumpcount}\space}
+%
+% Now to the page 'list of dumps'
+% Set titleword with \dumptocname, this is used for the lod page.
+%
+\newcommand{\dump@word}{directory}
+\newcommand{\dumptocname}[1]{\renewcommand{\dump@word}{#1}}
+%
+% Define own list of dumps, use \listofdumps
+% First let's define the top line of the list of dumps
+% then define an entry in the lod file
+\newcommand{\listofdumps}{\chapter*{\dump@head\dump@word}\@starttoc{lod}}
+\newcommand{\dcaption}[1]{\addcontentsline{lod}{table}%
+ {\protect\numberline{\thedumpcount}#1}#1}
+%
+% Now to the main thing: the dump itself.
+% Define \inputdump{<file>}{<caption>}
+% command to read hex-dump file and put it formatted into document
+% Parameter #1 : Floatposition - this is optional
+% Parameter #2 : Filename
+% Parameter #3 : Caption
+%
+% A label is also defined: use \ref{dumpname:filename} (see example).
+%
+\newcommand{\inputdump}[3][htbp]{%
+ \begin{table}[#1]
+ \begin{center}
+ \begin{minipage}{\dumpwidth}
+ \refstepcounter{dumpcount}
+ \rule[0.1\baselineskip]{\dumpwidth}{.8pt}
+ \dump@head \space \thedumpcount{}:\space\dcaption{#3}
+ \label{\dump@head:#2} % Label contains title and filename
+ \newline
+ \rule[0.33\baselineskip]{\dumpwidth}{.8pt}
+ \ttfamily\dump@font@size
+ \verbatimtabinput{#2}
+ \rule[0.75\baselineskip]{\dumpwidth}{.8pt}
+ \end{minipage}
+ \end{center}
+
+ \end{table}
+} % end newcommand
+%
+% End of file hexdump.sty
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Here's a sample tex file
+%
+%\documentclass{book}
+%\usepackage{hexdump}
+%
+%\dumpsize{\tiny} % will give _very_ small dumps, better use default setting
+%\dumptocname{directoy}
+%\dumpname{Dump}
+%
+%\begin{document}
+%\listofdumps % the title will be 'Dumpdirectory', see above
+%
+%\capter{Bar}
+%
+%\inputdump{test.hex} % assumed that file test.hex contains the dump
+%
+%The dump is shown in dump \ref{Dump:test.hex}.
+%\end{document}
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Now to the legal stuff:
+%
+% Copyright (c) Thomas Hillebrand 2000
+%
+% Usage of this file is unlimited, but I guarantee for nothing - except
+% that it uses space on your harddisk. As usual, use this file at your
+% own risk.
+%
+% You are encouraged to modify this file, but please be so kind to e-mail
+% me your modifications. Maybe they are included in the next release...
+%
diff --git a/macros/latex/contrib/misc/iagproc.cls b/macros/latex/contrib/misc/iagproc.cls
new file mode 100644
index 0000000000..4848959b1d
--- /dev/null
+++ b/macros/latex/contrib/misc/iagproc.cls
@@ -0,0 +1,265 @@
+%%
+%% This is the file `iagproc.cls' intended for formatting submissions to
+%% IAG (International Association of Geodesy) Proceedings.
+%%
+%% Originally written as 'banff.cls', for the Banff GGG2000 symposium.
+%% An adaptation from 'article.cls', (c) The LaTeX3 Project and
+%% individual authors:
+%%
+%% Leslie Lamport
+%% Johannes Braams
+%% David Carlisle
+%% Alan Jeffrey
+%% Frank Mittelbach
+%% Chris Rowley
+%% Rainer Schoepf
+%%
+%% License
+%%
+%% 'iagproc.cls' is free software that can be redistributed and/or
+%% modified under the terms of the LaTeX Project Public License as
+%% specified in the LaTeX Project Public License:
+%%
+%% http://www.latex-project.org/lppl.html
+%%
+%% Adapted from 'article.cls' (c) Martin Vermeer 2000
+%% Small adaptations (c) Hussein Abd-Elmotaal 2000
+%% Small adaptations (c) Martin Vermeer 2003
+%%
+%% Your class definition should be
+%%
+%% \documentclass{iagproc}
+%%
+\NeedsTeXFormat{LaTeX2e}
+
+\ProvidesClass{iagproc}
+ [2003/01/22 v0.3 IAG Conference Proceedings]
+% Options:
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
+\ProcessOptions\relax
+%
+\LoadClass[10pt,twocolumn]{article}
+%%\RequirePackage{mathptm}
+%%\RequirePackage{times}
+\RequirePackage{natbib}
+%%\RequirePackage{apalike}
+% Redefine \maketitle:
+\renewcommand\maketitle{\par
+ \begingroup
+ \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
+ \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}%
+ \long\def\@makefntext##1{\parindent 1em\noindent
+ \hb@xt@1.8em{%
+ \hss\@textsuperscript{\normalfont\@thefnmark}}##1}%
+ \twocolumn[\@maketitle]%
+ \global\@topnum\z@ % Prevents figures from going at top of page.
+ \thispagestyle{empty}%
+ \@thanks
+ \endgroup
+ \setcounter{footnote}{0}%
+ \global\let\thanks\relax
+ \global\let\maketitle\relax
+ \global\let\@maketitle\relax
+ \global\let\@thanks\@empty
+ \global\let\@author\@empty
+ \global\let\@date\@empty
+ \global\let\@title\@empty
+ \global\let\title\relax
+ \global\let\author\relax
+ \global\let\date\relax
+ \global\let\and\relax
+}
+%
+\def\@maketitle{%
+ \newpage
+ \vbox to 4.8cm {
+ \let \footnote \thanks
+ {\par\normalfont\huge\bfseries\sffamily%
+ \raggedright%
+ \@title\par}%
+ \vskip 0.6cm
+ \normalfont\normalsize\@author%
+ }%
+}%
+%
+\newcommand\keywordsname{Keywords}
+
+\newcommand*\abstractlabel[1]{\normalfont\bfseries\abstractname.\quad}%
+\newcommand*\keywordslabel[1]{\normalfont\bfseries\keywordsname.\quad}%
+\renewenvironment{abstract}{%
+ \list{}{\topsep\z@%
+ \labelsep\z@%
+ \labelwidth\z@%
+ \itemindent\z@%
+ \rightmargin\z@%
+ \leftmargin\z@%
+ \let\makelabel\abstractlabel}%
+ \item\relax
+ }%
+ {\endlist}%
+%
+\newenvironment{keywords}{%
+ \list{}{\topsep\z@%
+ \labelsep\z@%
+ \labelwidth\z@%
+ \itemindent\z@%
+ \rightmargin\z@%
+ \leftmargin\z@%
+ \let\makelabel\keywordslabel}%
+ \item\relax
+ }%
+ {\endlist\par\vskip4mm\hrule}%
+%
+% Redefine \section and \subsection:
+%\renewcommand\chapter{\@startsection {chapter}{0}{\z@}%
+% {-3.25ex \@plus -0.6ex \@minus -.2ex}%
+% {4mm \@plus0.1ex}%
+% {\normalfont\raggedright\Large\bfseries\sffamily}}
+\renewcommand\section{\@startsection {section}{1}{\z@}%
+ {-4mm \@plus -0.6ex \@minus -.2ex}%
+ {4mm \@plus0.1ex}%
+ {\normalfont\raggedright\large\bfseries\sffamily}}
+\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
+ {-4mm \@plus -0.3ex \@minus -.2ex}%
+ {4mm \@plus0ex}%
+ {\normalfont\raggedright\bfseries\sffamily}}
+\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
+ {-4mm \@plus -0.2ex \@minus -.2ex}%
+ {4mm \@plus0ex}%
+ {\normalfont\raggedright\sffamily\bfseries\itshape}}
+% Redefine section, subsection numbering:
+\renewcommand \thesection {\@arabic\c@section}
+\renewcommand\thesubsection{\thesection.\@arabic\c@subsection}
+\renewcommand\thesubsubsection{\thesubsection.\@arabic\c@subsubsection}
+
+%
+\newcommand{\journal}[1]{\def\@journal{#1\ }}
+
+\setlength\intextsep{8mm}
+\setlength\floatsep{8mm}
+\setlength\abovecaptionskip{2mm}
+\setlength\belowcaptionskip{2mm}
+
+% Redefine default font etc.:
+\long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \small
+ \sbox\@tempboxa{\textbf{#1.} #2}%
+%% \ifdim \wd\@tempboxa >\hsize
+%% \@hangfrom{\textbf{#1.} }#2\par
+ \textbf{#1.} #2\par
+%% \else
+%% \global \@minipagefalse
+%% \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+%% \fi
+ \vskip\belowcaptionskip
+}%
+\renewenvironment{table}
+ {\@float{table}\small}
+ {\end@float}
+\renewenvironment{table*}
+ {\@dblfloat{table}\small}
+ {\end@dblfloat}
+\newenvironment{acknowledgements}{%
+ \list{}{\labelsep\z@%
+ \labelwidth\z@%
+ \itemindent\z@%
+ \leftmargin\z@%
+ \let\makelabel\acknowslabel}%
+ \item\relax
+ \small\itshape}%
+ {\endlist}%
+
+\def\refname{References}
+
+\def\@cite#1#2{(#1\if@tempswa , #2\fi)}
+\def\@biblabel#1{}
+
+\def\thebibliography#1{\section*{\refname\@mkboth
+ {\sl\uppercase{\refname}}{\sl\uppercase{\refname}}}\list
+ {\relax}{\setlength{\labelsep}{0em}
+ \setlength{\itemindent}{-4mm}
+ \setlength{\leftmargin}{4mm}}
+ \setlength{\parsep}{0pt}
+ \setlength{\itemsep}{0pt plus 2pt}
+% \def\newblock{\hskip .11em plus .33em minus .07em}
+ \sloppy\clubpenalty4000\widowpenalty4000
+ \sfcode`\.=1000\relax}%
+
+\renewcommand\labelitemi[0]{\(\circ\)}
+\renewcommand\labelitemii[0]{\(\triangleright\)}
+\renewcommand\labelitemiii[0]{\normalfont\bfseries{--}}
+\renewcommand\labelitemiv[0]{\(\cdot\)}
+%
+\renewcommand{\topfraction}{.9}
+\renewcommand{\bottomfraction}{.9}
+\renewcommand{\textfraction}{.1}
+\pagestyle{plain}
+%\input{fleqn.clo} %%% deactived by Hussein
+\setlength{\columnsep}{8mm}
+\setlength{\textheight}{224mm}
+\setlength{\textwidth}{156mm}
+%
+\setlength\parindent{4mm}
+\flushbottom
+%\setlength\mathindent{4mm} %%% deactivated Hussein
+%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% This is a new section added by Hussein
+%% to allow the balance of the two columns
+%% of the last page of the manuscript
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newcommand{\@BAlancecol}{\if@twocolumn
+ \setbox0=\vbox{\unvbox\@outputbox} \@tempdima=\ht0
+ \advance\@tempdima by \topskip \advance\@tempdima
+ by -\baselineskip \divide\@tempdima by 2
+ \splittopskip=\topskip
+ {\vbadness=\@M \loop \global\setbox3=\copy0
+ \global\setbox1=\vsplit3 to \@tempdima
+ \ifdim\ht3>\@tempdima \global\advance\@tempdima by 1pt \repeat}
+ \setbox\@leftcolumn=\vbox to \@tempdima{\unvbox1\vfil}
+ \setbox\@outputbox=\vbox to \@tempdima
+ {\dimen2=\dp3\unvbox3\kern-\dimen2
+ \vfil}
+ \fi}
+\newif\if@BAlanceone
+\global\@BAlanceonefalse
+\newdimen\oldvsize
+\newcommand{\@BAdblcol}{\if@firstcolumn
+ \unvbox\@outputbox \penalty\outputpenalty
+ \global\oldvsize=\@colht \global\multiply \@colht by 2
+ \global\@BAlanceonetrue
+ \global\@firstcolumnfalse
+ \else \global\@firstcolumntrue
+ \if@BAlanceone
+ \global\@BAlanceonefalse\@BAlancecol
+ \global\@colht=\oldvsize \else
+ \PackageWarningNoLine{balance}
+ {You have called \protect\balance\space
+ in second column\MessageBreak
+ Columns might not be balanced}\fi
+ \setbox\@outputbox\vbox to \@colht{\hbox to\textwidth
+ {\hbox to\columnwidth {\box\@leftcolumn \hss}\hfil
+ \vrule width\columnseprule\hfil \hbox to\columnwidth
+ {\box\@outputbox \hss}}\vfil}\@combinedblfloats
+ \@outputpage \begingroup \@dblfloatplacement
+ \@startdblcolumn \@whilesw\if@fcolmade \fi
+ {\@outputpage\@startdblcolumn}\endgroup
+ \fi}
+\newcommand{\@BAcleardblpage}{\clearpage\if@twoside \ifodd\c@page\else
+ \hbox{}\newpage\fi\fi}
+\newcommand{\balance}{\global\let\@outputdblcol=\@BAdblcol
+ \global\let\cleardoublepage=\@BAcleardblpage}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% This is a new section added by Hussein
+%% for float seperation
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\dblfloatsep 10pt plus 2pt minus 4pt \dbltextfloatsep 10pt plus 2pt minus 4pt
+\@fptop 0pt plus 1fil \@fpsep 10pt plus 2fil \@fpbot 0pt plus 1fil
+\@dblfptop 0pt plus 1fil \@dblfpsep 10pt plus 2fil \@dblfpbot 0pt plus 1fil
+
+\endinput
+%%
+%% End of file `iagproc.cls'.
+
diff --git a/macros/latex/contrib/misc/linsys.sty b/macros/latex/contrib/misc/linsys.sty
new file mode 100644
index 0000000000..e8582db9d6
--- /dev/null
+++ b/macros/latex/contrib/misc/linsys.sty
@@ -0,0 +1,27 @@
+%%%%%%%%%%%%%%%%%%%%%%%
+%% Copyleft
+%% Walter A. Kehowski
+%% Department of Mathematics
+%% Glendale Community College
+%% walter.kehowski@gcmail.maricopa.edu
+%% \begin{linsys}{2}
+%% -x & + & 4y & = & 8\\
+%% -3x & - & 2y & = & 6
+%% \end{linsys}
+%%%%%%%%%%%%%%%%%%%%%%%
+\RequirePackage{array} % TLC p465
+\RequirePackage{pifont}
+\makeatletter
+%% math-mode column types ------------------
+\newcolumntype{\@R}{>{$}r<{$}}
+\newcolumntype{\@L}{>{$}l<{$}}
+\newcolumntype{\@C}{>{$}c<{$}}
+\newcounter{@dingctr}
+\newcommand{\@wding}{\ding{\value{@dingctr}}\stepcounter{@dingctr}}
+\newcommand{\@dinglabel}{\@wding}
+\newenvironment{linsys}[1]{%
+\setcounter{@dingctr}{192}%
+\begin{tabular}{!{\@dinglabel}*{#1}{\@R\@C}\@R}}%
+{\end{tabular}\setcounter{@dingctr}{192}}
+\makeatother
+\endinput
diff --git a/macros/latex/contrib/misc/mitpress.sty b/macros/latex/contrib/misc/mitpress.sty
new file mode 100644
index 0000000000..ec6307d24f
--- /dev/null
+++ b/macros/latex/contrib/misc/mitpress.sty
@@ -0,0 +1,33 @@
+% mitpress.sty
+\typeout{LaTeX style for MIT Press format.}
+% Use it as \documentstyle[mitpress,...]{article}
+\textheight 21.6cm
+\textwidth 12.9cm
+% latex.ltx defines arraycolsep as a dimension, so use \setlength (gp 09/18/1998)
+%\renewcommand{\arraycolsep}{1pt}
+\setlength{\arraycolsep}{1pt}
+\def\@maketitle{\vbox to 2.5in{\hsize\textwidth \linewidth\hsize \vfil
+ \raggedright
+ {\LARGE\bf \@title \par} % Title set in \LARGE size.
+ \vskip 2em % Vertical space after title.
+ {\large \@author}
+% {\large \begin{tabular}[t]{l}\@author \end{tabular}\par}
+ \vfil}}
+\def\section{\@startsection {section}{1}{\z@}{-1.5ex}{1.5ex}{\large\bf}}
+\def\subsection{\@startsection{subsection}{2}{\z@}{-1.2ex}{1.2ex}{\large\bf}}
+\def\subsubsection{\@startsection{subsubsection}{3}{\z@}{-1ex}{1ex}{
+ \normalsize\bf}}
+\def\paragraph{\@startsection
+ {paragraph}{4}{\z@}{1ex}{-1em}{\normalsize\bf}}
+\def\subparagraph{\@startsection
+ {subparagraph}{4}{\parindent}{1ex}{-1em}{\normalsize\bf}}
+\def\thebibliography#1{\section*{References\@mkboth
+ {REFERENCES}{REFERENCES}}\list
+ {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}\leftmargin\labelwidth
+ \advance\leftmargin\labelsep
+ \itemsep 0pt \parsep 0pt
+ \usecounter{enumi}}
+ \def\newblock{\hskip .11em plus .33em minus .07em}
+ \sloppy\clubpenalty4000\widowpenalty4000
+ \sfcode`\.=1000\relax}
+\endinput
diff --git a/macros/latex/contrib/misc/nextpage.sty b/macros/latex/contrib/misc/nextpage.sty
new file mode 100644
index 0000000000..67f716cad0
--- /dev/null
+++ b/macros/latex/contrib/misc/nextpage.sty
@@ -0,0 +1,55 @@
+% nextpage.sty
+%
+% Provides additional \clear...page commands
+%
+% Author: Peter Wilson, Herries Press
+% Maintainer: Will Robertson (will dot robertson at latex-project dot org)
+% Copyright 1996--2000 Peter Wilson
+% Released under the LaTeX Project Public License
+%
+% Changes in v1.1a - New maintainer (Will Robertson)
+%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{nextpage}[2009/09/03 v1.1a additional page commands]
+
+% clear to next page is:
+% \clearpage
+
+% clear to next even numbered page,
+% putting optional arg on skipped page, if any
+\newcommand{\cleartoevenpage}[1][\@empty]{%
+ \clearpage%
+ \ifodd\c@page\hbox{}#1\clearpage\fi}
+
+% move to next page without flushing floats is:
+% \newpage
+
+% move to next even numbered page without flushing floats,
+% putting optional arg on skipped page, if any
+\newcommand{\movetoevenpage}[1][\@empty]{%
+ \newpage%
+ \ifodd\c@page\hbox{}#1\newpage\fi}
+
+% clear to next odd numbered page,
+% putting optional arg on skipped page, if any
+\newcommand{\cleartooddpage}[1][\@empty]{%
+ \clearpage%
+ \ifodd\c@page\else\hbox{}#1\clearpage\fi}
+
+% move to next odd numbered page without flushing floats,
+% putting optional arg on skipped page, if any
+\newcommand{\movetooddpage}[1][\@empty]{%
+ \newpage%
+ \ifodd\c@page\else\hbox{}#1\newpage\fi}
+
+\endinput
+
+% NOTE: If used with the epigraph package,
+% then nextpage.sty must be loaded first.
+% Example uses:
+% \cleartooddpage % same as \cleardouble page
+% \cleartooddpage[\thispagestyle{empty}] % No headings on the skipped page
+% \cleartoevenpage % go to next even numbered page
+% Next example puts text on a skipped page
+% \cleartoevenpage[\vspace*{\hfill}THIS PAGE LEFT BLANK\vspace*{\hfill}]
+%
diff --git a/macros/latex/contrib/misc/texilikechaps.sty b/macros/latex/contrib/misc/texilikechaps.sty
new file mode 100644
index 0000000000..d4c479d8f0
--- /dev/null
+++ b/macros/latex/contrib/misc/texilikechaps.sty
@@ -0,0 +1,137 @@
+%%%%%%%%%%%%%%%%%%%
+% texilikechaps.sty
+%%%%%%%%%%%%%%%%%%%
+% texilikechaps.sty, June 13, 2008
+%
+% Released under LaTeX Project Public License v3.1 or above.
+%
+% http://www.latex-project.org/lppl.txt
+%
+% This work has the LPPL maintenance status `maintained'.
+%
+% The Current Maintainer of this work is
+% Jose-Luis Rivera N.
+% jlrn77 at gmail punto com
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%
+% based on
+% jeep.sty, April 29, 1991
+% G. W. Stewart
+% Department of Computer Science
+% University of Maryland
+% College Park, MD 20784
+%
+% stewart at thales.umd.edu
+%
+% with ideas borrowed from secdot.sty, by Robin Fairbairns.
+%
+% Define the command \txichapter{<format>}. <format>
+% is the format to put in the chapter head.
+%
+% The command \txisection{<seclevel>}{<format>}
+% defines the <format> for the <seclevel>.
+%
+% The command \txichapterdelim{<code>} sets the
+% <code> as the delimiter between chapter number and
+% chapter/section name.
+% You may change the default \squad for .\space saying
+% \txichapterdelim{.\space}
+%
+% The rest should be self explanatory.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% This is experimental code. Bypass it.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%\def\@chapapp{Chapter}
+%\def\chapapp{\@chapapp}
+
+%\def\txichapter#1#2{
+% \def\@chaphead##1{#1}
+% \def\@schaphead##1{#2}
+%}
+
+%\def\@makechapterhead#1{ \vspace*{\chaptopsep} { \parindent 0pt \raggedright
+% \ifnum \c@secnumdepth >\m@ne \@chaphead{#1} \else \@schaphead{#1} \fi
+% \par \nobreak \vskip \chapaftersep } }
+
+%\def\@makeschapterhead#1{ \vspace*{\chaptopsep} { \parindent 0pt \raggedright
+% \@schaphead{#1}\par
+% \nobreak \vskip \chapaftersep } }
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Here comes the real stuff.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% \change{1.0}{20080614}{First release.}
+% \change{1.0a}{20121214}{Reduced chapter style from LARGE to Large.}
+%
+\ProvidesPackage{texilikechaps}[2012/12/14 v1.0a Texinfo-like chapters and sections]
+
+\newcommand{\txisct@chapapp}{}
+
+\@ifundefined{@makechapterhead}{}{
+ \let\txisct@old@makechapterhead\@makechapterhead
+ \renewcommand{\@makechapterhead}[1]{%
+ \vspace*{\txisct@chaptopsep}%
+ {\parindent \z@ \raggedright
+ \normalfont
+ \interlinepenalty\@M
+ \txichapter \txisct@chapapp\space\thechapter\txichapterdelim\space #1
+ \par\nobreak
+ \vskip\txisct@chapaftersep
+ }}
+}
+\@ifundefined{@makeschapterhead}{}{
+ \let\txisct@old@makeschapterhead\@makeschapterhead
+ \renewcommand{\@makeschapterhead}[1]{%
+ \vspace*{\txisct@chaptopsep}%
+ {\parindent \z@ \raggedright
+ \normalfont
+ \interlinepenalty\@M
+ \txichapter #1
+ \par\nobreak
+ \vskip\txisct@chapaftersep
+ }}
+}
+\newcommand{\txichapter}[1][\normalfont\Large\bfseries]{#1}
+\newcommand{\txichapterdelim}[1][\quad]{#1}
+\newcommand{\restorechapapp}{\let\txisct@chapapp\@chapapp}
+
+% \chaptopsep is the space between the top of the text page and the
+% chapter head. \chapaftersep is the space between the chapter
+% head and the text.
+
+\newlength{\txisct@chaptopsep}
+\setlength{\txisct@chaptopsep}{.5in}
+\newlength{\txisct@chapaftersep}
+\setlength{\txisct@chapaftersep}{.3in}
+
+% Default chapter format.
+
+\newcommand{\chapterheadfmt}[1][\Large\bfseries]{#1}
+
+% The following code has been rendered obsolete by the sectsty package
+% Here it goes, anyway.
+% As \section and \subsection commands typeset the titles rather large
+% in standard classes, we make them smaller.
+% We reduce the above and under spaces as well.
+
+\newcommand{\txisection}[2]{%
+ \expandafter\renewcommand\csname #1\endcsname{\@startsection{#1}{1}{\z@}%
+ {-1.5ex\@plus -.2ex \@minus -.2ex}%
+ {1.5ex \@plus .2ex}%
+ {#2}}
+}
+
+\txisection{section}{\normalfont\large\bfseries}
+\txisection{subsection}{\normalfont\normalsize\bfseries}
+\txisection{subsubsection}{\normalfont\normalsize\bfseries}
+
+% And that's all, folks!
+
+\endinput
diff --git a/macros/latex/contrib/misc/texilikecover.sty b/macros/latex/contrib/misc/texilikecover.sty
new file mode 100644
index 0000000000..cdd6deb804
--- /dev/null
+++ b/macros/latex/contrib/misc/texilikecover.sty
@@ -0,0 +1,43 @@
+% texilikecover.sty v 0.1 5-Apr-2007
+% Copyright (C) 2007 by Alberto Simões
+%
+% These macros may be freely transmitted, reproduced, or modified
+% provided that this notice is left intact.
+%
+% Quick recipe:
+% \usepackage{texilikecover}
+% \title{My Title}
+% \subtitle{My Subtitle}
+% \date{Date or version info}
+% \author{Name \and Name \and Name}
+%
+% \begin{document}
+% \maketitle
+%
+% Contact me using ambs -at- cpan -dot- org
+%
+\ProvidesPackage{texilikecover}[2007/04/05 v 0.1: Texi-like cover for LaTeX2e.]
+
+\newcommand{\subtitle}[1]{\def\@subtitle{#1}}
+
+\renewcommand{\and}{\\}
+
+\renewcommand{\maketitle}{
+ \thispagestyle{empty}
+ \mbox{}
+ \vfill
+ \noindent{\huge\bf \@title}\\
+ \rule{\textwidth}{3pt}
+ \begin{flushright}
+ \vskip -3mm
+ \@subtitle\\
+ \@date
+ \end{flushright}
+ \vfill\vfill
+ \begin{flushleft}
+ \bf\Large
+ \@author
+ \end{flushleft}
+ \vskip -5mm\rule{\textwidth}{2pt}
+ \cleardoublepage
+} \ No newline at end of file
diff --git a/macros/latex/contrib/misc/thrmappendix.sty b/macros/latex/contrib/misc/thrmappendix.sty
new file mode 100644
index 0000000000..97044a6e2e
--- /dev/null
+++ b/macros/latex/contrib/misc/thrmappendix.sty
@@ -0,0 +1,217 @@
+ \long\def\comment#1{}
+ \comment{
+This is my implementation of theorems, lemmas, &c. The main goal is
+to let you reprint theorems in the appendix with their proofs, so the
+text isn't cluttered with long proofs, but the reader doesn't have to
+keep flipping back to the text to find out what you're talking about in
+the appendix.
+
+It also has the side benefits that the syntax here involves less typing
+and fewer redundancies than the default, so I use it even for things
+that won't ever be proven. Compare the standard:
+
+ \begin{definition} \label{xdef}
+ Let $x$ be a number.
+ \end{definition}
+
+versus the alternative here:
+
+ \stmt{defn}{xdef}{
+ Let $x$ be a number.
+ }
+
+
+ __________________________________________
+
+Here is a quick summary of the macros defined in this file:
+\stmt{statement_type}{label}{This is what I want to say}
+ The definition of a theorem, assumption, &c.
+\stmtproof{label}{This is the proof.}
+ Where you should write your proof, for use with:
+\rptstmtwithproof{label}
+ This states the theorem and proof together.
+\rptstmt{label}
+ This restates just the theorem.
+\refstmt{label}
+ Prints, e.g., `Theorem 7'---like \ref{label} but you don't have
+ to remember if it's a theorem, corollary, or lemma.
+\comment{blather}
+ Delineates comments without all those darn percent signs.
+
+ __________________________________________
+Here is a sample document using most all of the above. You can cut and
+paste it to another file and compile it to see what it does.
+
+\documentclass{article}
+\usepackage{thrmappendix}
+\begin{document}
+
+\section{A theorem}
+
+\stmt{thrm}{sample}{Socrates is mortal.}
+
+\refstmt{sample} can either be proven using data (the fact that
+Socrates is dead), or by the proof which is provided in the appendix.
+
+
+
+\section{Appendix}
+In this appendix, the reader will find proofs of theorems not given in the text.
+
+\stmtproof{sample}{Socrates is a man. All men are mortal.}
+
+\rptstmtwithproof{sample}
+
+\comment{Notice that you can put the \stmtproof{sample}{...} anywhere
+you want, including right after your statement, just before using
+\rptstmtwithproof, or a separate file (then use \input{proofs.tex}). That
+way, neither your finished paper nor your source will be cluttered with
+proofs.}
+\end{document}
+ __________________________________________
+
+
+
+Here are the definitions of the types of theorems you can use
+with these commands, and the proof markers:
+ }
+
+\long\def\theproofmarkersforthrmappendix{
+
+%Format:
+%\newtype{nickname}{numbered like}{title}
+
+%inputs
+\newtype{ass}{ass}{Assumption}
+\newtype{defnition}{ass}{Definition}
+\newtype{defn}{ass}{Definition}
+
+%outputs
+\newtype{statement}{statement}{Proposition}
+\newtype{prop}{statement}{Proposition}
+\newtype{thrm}{statement}{Theorem}
+\newtype{corr}{statement}{Corollary}
+\newtype{lma}{statement}{Lemma}
+\newtype{guess}{statement}{Conjecture}
+
+
+\def\pf{{\bf Proof: }}
+\def\endpf{\hfill $\diamondsuit$}
+}
+
+ \comment{
+These are my preferred environments (and numbering scheme);
+add your own or modify to suit. The format here is:
+\newtype{nickname}{numbered like}{title}
+
+E.g., the second line lets me put
+ \stmt{thrm}{mortalityresult}{Socrates is mortal.}
+in the tex file, since it defined the nickname `thrm'. If the statement
+counter is up to #7, then the output will be:
+ Theorem 7: Socrates is mortal.
+since thrms use the statement counter and print `Theorem'. To refer to
+this theorem in the text, you have two choices:
+ \refstmt{mortalityresult} ===> Theorem 7
+ Theorem \ref{mortalityresult} ===> Theorem 7
+The first form is nice because after you prove your result, you can
+change it from a theorem to a conjecture without hunting through the
+text to fix every reference.
+
+You can see that all of the results use the `statement' counter and
+all of the inputs use the `ass' counter. Proposition 1 may be followed
+by Theorem 2, followed by Corollary 3. This is my preferred numbering
+scheme, suggested by Paolo Ghirardato. After all, the intent of numbering
+these things is not to keep score as to how many theorems you've got,
+but to make it easy for the reader to find what you're referring to;
+a consistent numbering system facilitates this (especially in a long proof
+appendix).
+
+[On the other hand, a referee of one of my papers complained that
+17 theorems and 18 corollaries was too many, and I could cut that in
+half. Of course, there were only 18 results total, and s/he was only
+glancing at the two results on the last page.]
+
+To use independent numbering for each type, simply change the second field
+in the definitions above to match the first field in each case. E.g.:
+ \newthrm{thrm}{thrm}{Theorem}
+will allow you to count theorems separately from other results.
+
+
+The \rptstmtwithproof macro here will include a marker at the beginning
+and end of the proof, so you don't have to include them yourself.
+The macros \pf and \endpf are defined above and can be redefined to
+suit. Popular endproof markers include:
+
+ \def\endpf{$blackbox$}
+ \def\endpf{$blacklozenge$}
+ \def\endpf{{\sc QED}}
+
+
+ --Ben Klemens, 2 Jan 2003
+ b@avocado.caltech.edu
+
+
+
+PS: thrmappendix.sty (c)2003, Ben Klemens
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+ __________________________________________}
+
+\usepackage{ifthen}
+\def\newtype#1#2#3{
+\ifthenelse{\equal{#1}{#2}}{
+\long\expandafter\gdef\csname #1txt\endcsname{#3}
+\long\expandafter\gdef\csname #1ctr\endcsname{#2}
+\newtheorem{#1}{\csname #1txt\endcsname}
+}{
+\long\expandafter\gdef\csname #1txt\endcsname{#3}
+\long\expandafter\gdef\csname #1ctr\endcsname{#2}
+\newtheorem{#1}[\csname #1ctr\endcsname]{\csname #1txt\endcsname}
+}}
+
+\theproofmarkersforthrmappendix %from the user-readable section above.
+
+\def\cs#1{\csname #1\endcsname}
+\newcounter{dummycounter}
+
+\long\def\defstmt#1#2#3{
+}
+
+\long\def\stmt#1#2#3{
+ \long\expandafter\gdef\csname #2\endcsname{#3}
+ \expandafter\gdef\csname #2type\endcsname{#1}
+ \begin{#1} \label{#2}
+ {#3}
+ \end{#1}
+\immediate\write\@mainaux{\string
+\newlabel{#2type}{{\cs{#1txt}}}
+ }
+}
+
+\long\def\stmtproof#1#2{
+\long\expandafter\gdef\csname #1proof\endcsname{#2}
+}
+
+\long\def\rptstmt#1{
+ \def\ctr{\cs{\cs{#1type}ctr}}
+% \setcounter{paragraph}{\value{\ctr}}
+ \setcounter{dummycounter}{\value{\ctr}}
+\batchmode
+ \setcounter{\ctr}{\ref{#1}}
+\errorstopmode
+ \addtocounter{\ctr}{-1}
+ \begin{\cs{#1type}}
+ \cs{#1}
+ \end{\cs{#1type}}
+ \setcounter{\ctr}{\value{dummycounter}}
+}
+
+\long\def\rptstmtwithproof#1{
+ \rptstmt{#1}
+
+ \pf \cs{#1proof} \endpf
+}
+
+\def\refstmt#1{\ref{#1type} \ref{#1}}
diff --git a/macros/latex/contrib/misc/topcapt.sty b/macros/latex/contrib/misc/topcapt.sty
new file mode 100644
index 0000000000..c5b7d8ddcb
--- /dev/null
+++ b/macros/latex/contrib/misc/topcapt.sty
@@ -0,0 +1,61 @@
+\@ifundefined{ProvidesPackage}{\def\ProvidesPackage#1[#2]{}}{}
+\ProvidesPackage{topcapt}[2004/12/11 v1.2 Caption at top of float]
+
+% Copyright 1994, 1998, 1999, 2004 Robin Fairbairns
+%
+% This program can redistributed and/or modified under the terms
+% of the LaTeX Project Public License Distributed from CTAN
+% archives in directory macros/latex/base/lppl.txt; either
+% version 1 of the License, or (at your option) any later version.
+%
+% This is a jiffy LaTeX package that enables coherent setting
+% of the caption _above_ a figure or table
+%
+% Author: Robin Fairbairns 1994/11/18
+% Bugfix from Bernd Schandl incorporated 1998/12/31
+% First stab at hyperref interworking 2004/12/11
+% Copyright statement incorporated 1999/03/03
+%
+% Works under 2e or 2.09
+%
+% Usage: \usepackage{...,topcapt,...} (2e)
+% \documentstyle[...,topcapt,...]{whateverclass} (2.09)
+%
+% defines a \topcaption command that sets a caption as if above the
+% table (i.e., with the abovecaptionskip and the belowcaptionskip
+% exchanged)
+
+\@ifundefined{abovecaptionskip}{% in 2.09
+ \newlength\abovecaptionskip
+ \newlength\belowcaptionskip
+ \setlength\abovecaptionskip{10pt}
+ \setlength\belowcaptionskip{0pt}
+ \long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1: #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ #1: #2\par
+ \else
+ \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}
+ }{% in 2e; everything's already set up as above
+}
+
+% \topcaption simply advances the caption count, sorts out the
+% arguments and passes on to \@topcaption
+\newcommand\topcaption{%
+ \@ifundefined{H@refstepcounter}%
+ {\refstepcounter}{\H@refstepcounter}\@captype
+ \@dblarg{\@topcaption\@captype}%
+}
+
+% \@topcaption swaps above and below caption skips and the relays its
+% arguments to \@caption
+\def\@topcaption#1[#2]#3{\@tempskipa\abovecaptionskip
+ \abovecaptionskip\belowcaptionskip
+ \belowcaptionskip\@tempskipa
+ \@caption{#1}[{#2}]{#3}%
+ \@tempskipa\abovecaptionskip
+ \abovecaptionskip\belowcaptionskip
+ \belowcaptionskip\@tempskipa}
diff --git a/macros/latex/contrib/misc/ut-backref.sty b/macros/latex/contrib/misc/ut-backref.sty
new file mode 100644
index 0000000000..89358c5db6
--- /dev/null
+++ b/macros/latex/contrib/misc/ut-backref.sty
@@ -0,0 +1,163 @@
+%%
+%% This is file `ut-backref.sty',
+%%
+%% Most of the code in here is taken from:
+%%
+%% File: backref.dtx Copyright (C) 1995, 1996, 1997 David Carlisle,
+%% Sebastian Rahtz
+%%
+%%
+\def\fileversion{1.2}
+\def\filedate{1998/11/03}
+\ProvidesPackage{ut-backref}[\filedate:
+ bibliographical back referencing, \fileversion]
+
+%%% User-Interface
+
+\long\def\page@backref#1#2#3{#1}
+\long\def\section@backref#1#2#3{#2}
+\long\def\hyper@section@backref#1#2#3{\hyperlink{#3}{#2}}
+\long\def\hyper@page@backref#1#2#3{\hyperlink{page.#1}{#1}}
+\DeclareOption{pageref}{%
+ \def\backref{\small(cited on p\thinspace}%
+ \def\backrefs{\small(cited on pp\thinspace}%
+ \def\backrefclose{)}%
+ \def\backrefsclose{)}%
+ \let\backrefxxx\page@backref
+}
+\DeclareOption{ref}{%
+ \def\backref{\small(cited in section\thinspace}%
+ \def\backrefs{\small(cited in sections\thinspace}%
+ \def\backrefclose{)}%
+ \def\backrefsclose{)}%
+ \let\backrefxxx\section@backref
+}
+\DeclareOption{hyperref}{%
+ \def\backref{}%
+ \def\backrefs{}%
+ \def\backrefclose{}%
+ \def\backrefsclose{}%
+ \let\backrefxxx\hyper@section@backref
+}
+\DeclareOption{hyperpageref}{%
+ \def\backref{}%
+ \def\backrefs{}%
+ \def\backrefclose{}%
+ \def\backrefsclose{}%
+ \let\backrefxxx\hyper@page@backref
+}
+\ExecuteOptions{pageref}
+\ProcessOptions
+
+%%%
+
+\newcommand\loopcmd{}
+\newcommand\br@last{}
+
+%%% a standard loop with `delimited arguments'. \end is used
+%%% only as an end marker here. The argument will be
+%%% expanded, so you'll get the meaning of e.g. \backrefxxx as
+%%% last element.
+\def\@getlast#1,#2\end{%
+% \typeout{ checking elem #1}%
+ \if!#2! % test if ! equals !, i.e. if #2 is empty
+ \edef\br@last{#1}
+% \typeout{Last elem is: \br@last}%
+ \let\loopcmd\relax
+ \else
+ \def\loopcmd{\@getlast#2\end}%
+ \fi
+ \loopcmd
+}%
+
+%%% A wrapper adding `,' and `\end' so that we can check these
+%%% in \@getlast
+\newcommand\getlast[1]{\expandafter\@getlast#1,\end}
+
+\newcounter{br@el@mcnt}
+
+%%% this uses LaTeX's \@for ... \do loop. See ltcntrl.dtx for details.
+\newcommand\lengthof[1]{%
+ \setcounter{br@el@mcnt}{0}%
+ \@for\testitem:=#1\do
+ {\stepcounter{br@el@mcnt}}
+% \typeout{length of #1 is: \arabic{br@el@mcnt}}
+ }
+
+%%%
+
+\@ifundefined{newblock}{\def\newblock{\par}}{}
+
+\def\xcitedOn#1{%
+\@ifundefined{br@#1}{%
+\typeout{Warning: No page list for reference `#1'.}%
+}{% At least one citation, find out how many
+\newblock% newline if "open" format used
+\edef\x{\csname br@#1\endcsname}% These are the citations
+\lengthof{\x}% number of citations will be in br@el@mcnt
+\ifnum\arabic{br@el@mcnt}>1% More than one citation?
+\backrefs%
+\x%
+\backrefsclose%
+\else% exactly one citation
+\backref%
+\x%
+\backrefclose%
+\fi%
+}% end of if defined
+}% end of \def\xcitedOn
+
+\def\xbibitem{\@ifnextchar[{\@xlbibitem}{\@xbibitem}}
+\def\@xlbibitem[#1]#2#3\par{%
+ \oldb[#1]{#2}#3\xcitedOn{#2}
+ \par
+}%
+\def\@xbibitem#1#2\par{%
+ \oldb{#1}#2\xcitedOn{#1}
+ \par
+}
+\def\backcite#1#2{% #1 = list of labels, #2 = page, section, text
+ \@for\x:=#1\do{% for each label in list
+ \edef\br@label{\thinspace\protect\backrefxxx#2}%
+ \edef\br@list{\csname br@\x\endcsname}%
+ \getlast{\br@list}%
+% \typeout{label \meaning\br@label, last \meaning\br@last}
+ \ifx\br@label\br@last
+ \relax\else%
+ \edef\x{\expandafter\@firstofone\x\@empty}%
+ \expandafter\protected@xdef\csname br@\x\endcsname{%
+ \expandafter\ifx\csname br@\x\endcsname\relax\else
+ \csname br@\x\endcsname,\fi\thinspace\protect\backrefxxx#2}%
+ \fi
+ }}
+\def\@currentHref{}
+\AtBeginDocument{%
+ \let\oldb\bibitem
+ \let\bibitem\xbibitem
+ \let\oldbibl\thebibliography
+ \def\thebibliography{\@starttoc{brf}{}\oldbibl}
+ \@ifundefined{NAT@parse}{%
+ \global\let\old@citex\@citex
+ \global\let\@citex\x@citex
+ }{\typeout{** backref set up for natbib ***}}
+}
+\def\x@citex[#1]#2{%
+ \old@citex[#1]{#2}%
+ \hy@backout{#2}%
+}
+\def\hy@backout#1{%
+ \@bsphack
+ \ifx\@empty\@currentlabel
+ \protected@write\@auxout{}%
+ {\string\@writefile{brf}%
+ {\string\backcite{#1}{{\thepage}{(document)}{Doc-Start}}}}%
+ \else
+ \protected@write\@auxout{}%
+ {\string\@writefile{brf}%
+ {\string\backcite{#1}{{\thepage}{\@currentlabel}{\@currentHref}}}}%
+ \fi
+ \@esphack
+}
+\endinput
+%%
+%% End of file `backref.sty'.
diff --git a/macros/latex/contrib/misc/verbasef.sty b/macros/latex/contrib/misc/verbasef.sty
new file mode 100644
index 0000000000..48687d99c4
--- /dev/null
+++ b/macros/latex/contrib/misc/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
diff --git a/macros/latex/contrib/misc/vrbexin.sty b/macros/latex/contrib/misc/vrbexin.sty
new file mode 100644
index 0000000000..f9a15fdc5a
--- /dev/null
+++ b/macros/latex/contrib/misc/vrbexin.sty
@@ -0,0 +1,80 @@
+%%
+%% This is file `vrbexin.sty', modified from vrbinput.sty
+%%
+%% The original source files were:
+%%
+%% vrbinput.doc
+%%
+%% Copyright (C) 1994 by Paul Thompson
+%%
+%% IMPORTANT NOTICE:
+%%
+%% You are not allowed to change this file. You may however copy this file
+%% to a different name and then change this copy.
+%%
+%% You are NOT ALLOWED to take money for the distribution or use of this
+%% file (or a changed version) except for some nominal charge for copying etc.
+%%
+%%
+\def\fileversion{v1.0b}
+\def\filedate{94/06/30}
+\def\docdate{94/06/30}
+%% \CheckSum{82}
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+%%
+%% Style-option `vrbexin' to use with LaTeX-2e
+%% and style-option `verbatim' (by Rainer Sch\"opf)
+%% Copyright (C) 1994 by Paul Thompson, all rights reserved.
+\@ifundefined{verbatim@readfile}{}{\endinput}
+\typeout{Style-Option: `vrbexin' \fileversion \space <\filedate> (br)}
+\typeout{English Documentation \@spaces\@spaces\space\space <\docdate> (br)}
+\@ifundefined{verbatim@@@}{\input{verbatim.sty}}{}
+\newread\verbatim@in@stream
+\ifnum\verbatim@in@stream=\@ne
+ \csname newread\endcsname\verbatim@in@stream
+\fi
+\def\verbatim@readfile#1{%
+ \verbatim@start
+ \openin\verbatim@in@stream #1\relax
+ \ifeof\verbatim@in@stream
+ \typeout{No file #1.}%
+ \else
+ \expandafter\endlinechar\expandafter\m@ne
+ \expandafter\verbatim@read@file
+ \expandafter\endlinechar\the\endlinechar\relax
+ \closein\verbatim@in@stream
+ \fi
+ \verbatim@finish
+}
+\def\verbatim@read@file{%
+ \read\verbatim@in@stream to\next
+ \ifeof\verbatim@in@stream
+ \else
+ \expandafter\verbatim@addtoline\expandafter{\next}%
+ \verbatim@processline
+ \verbatim@startline
+ \expandafter\verbatim@read@file
+ \fi
+}
+\def\verbatiminput{\begingroup
+ \@ifstar{\verbatim@input\relax}%
+ {\verbatim@input{\frenchspacing\@vobeyspaces}}}
+\def\verbatim@input#1#2{\@verbatim #1\relax
+ \verbatim@readfile{#2}\item[]\endtrivlist\endgroup\@doendpe}
+\endinput
+%%
+%% End of file `vrbexin.sty'.