 8-Apr-87 09:53:58-PDT,44327;000000000000
Return-Path: <mcvax!nplpsg!jrp@seismo.CSS.GOV>
To: texhax@score.stanford.edu
Subject: LaTeX for the -ms macros user
Date: Wed, 08 Apr 87 16:13:53 GMT
From: John Pavel <mcvax!nplpsg!jrp@seismo.CSS.GOV>


Sorry. These got bounced by seismo the first time.

Let's hope that you get the two messages included below.

John Pavel

------- Forwarded Messages

Date:    Wed, 08 Apr 87 06:47:13 -0400 
Subject: Returned mail: Host unknown
From:    Mail Delivery Subsystem <Postmaster@seismo.uucp>
To:      jrp@psg.npl.co.uk

   ----- Transcript of session follows -----
550 su-score.arpa!texhax... Host unknown

   ----- Unsent message follows -----
Received: from mcvax.UUCP by seismo.CSS.GOV (5.54/1.14) with UUCP 
	id AA02322; Wed, 8 Apr 87 06:47:13 EDT
Received: by mcvax.cwi.nl; Wed, 8 Apr 87 03:56:01 +0200 (MET)
Received: from nplpsg.uucp by kestrel.Ukc.AC.UK   with UUCP  id aa05417;
          8 Apr 87 0:10 BST
Received: from snow by snow.psg.npl.co.uk; Tue, 7 Apr 87 23:53:07 BST
To: texhax@su-score.arpa
Subject: LaTeX for the troff -ma macros user
Return-Receipt-To: mcvax!psg.npl.co.uk!jrp
Date: Tue, 07 Apr 87 22:53:07 GMT
Message-Id: <6239.544834387@psg.npl.co.uk>
From: John Pavel <mcvax!nplpsg!jrp>

Here is a LaTeX version of the first cut on a paper that should     
help anyone trying to convert from the -ms macros to LaTeX.

I would welcome any contributions to completing/correcting this paper.

The extra style file is from Marshall Rose, slightly adapted.
 
Thanks,

John Pavel

: Please feed me to /bin/sh
: This is a shell archive, meaning:
: 1. Remove everything above the : Please feed me to /bin/sh line.
: 2. Save the resulting text in a file.
: 3. Execute the file with /bin/sh -- not csh -- to create:
:	ms-latex.tex
:	sfwmac.sty
: This archive created: Tue Apr  7 22:52:24 1987
export PATH; PATH=/bin:/usr/bin:$PATH
echo shar: "extracting 'ms-latex.tex'" '(17397 characters)'
if test -f 'ms-latex.tex'
then
	echo shar: "will not over-write existing file 'ms-latex.tex'"
else
sed 's/^	X//' << \SHAR_EOF > 'ms-latex.tex'
	X
	X\documentstyle[12pt,a4,titlepage,sfwmac]{article}
	X
	X% Some local macros, mostly stolen from the scheme distribution
	X
	X% Same as \obeycr, but doesn't do a \@gobblecr.
	X{\catcode`\^^M=13 \gdef\myobeycr{\catcode`\^^M=13 \def^^M{\\}}%
	X\gdef\restorecr{\catcode`\^^M=5 }}
	X
	X{\catcode`\^^I=13 \gdef\obeytabs{\catcode`\^^I=13 \def^^I{\hbox{\hskip
 4em}}}}
	X
	X{\makeatletter \gdef\gobblecr{\@gobblecr}}
	X
	X\newenvironment{mstext}%
	X	{\obeyspaces \myobeycr \em
	X	\begin{tabbing}%
	X	\qquad\=\hspace*{5em}\=\hspace*{9em}\=\+\kill%   was 16em
	X	\gobblecr}%
	X	{\unskip\end{tabbing}}
	X
	X\newenvironment{latextext}{
	X\obeyspaces \myobeycr \em
	X\begin{tabbing}%
	X\qquad\=\hspace*{5em}\=\hspace*{9em}\=\+\kill%   was 16em
	X\gobblecr}{\unskip\end{tabbing}}
	X
	X\catcode`\"=\active
	X{\makeatletter {\gdef"{\begingroup \catcode``=13
	X		\@noligs \tt \let\do\@makeother \dospecials \let"=\endg
roup}}}
	X
	X\newcommand{\latex}[1]{\LaTeX}
	X\newcommand{\ms}[1]{\mbox{\tt -ms}}
	X\let\endverbatim=\endtrivlist
	X
	X\title{\latex/ for the \troff/ \ms/ Macros User}
	X\author{John Pavel \\
	XNational Physical Laboratory \\
	XTeddington, UK\\[\bigskipamount]
	X"jrp@nplpsg.UUCP"}
	X
	X\date{87/04/07 at 23:37:25%
	X}
	X
	X\begin{document}
	X
	X	\maketitle
	X
	X	\begin{abstract}
	X
	X	This document is intended to serve as a brief reference to \lat
ex/ for
	X	those who are familiar with \troff/ and \ms/ macros.  This vers
ion
	X	is a draft for comment.
	X
	X	\end{abstract}
	X
	X	\tableofcontents
	X
	X\cleardoublepage
	X
	X\section{Introduction}
	X
	XThis document is intended to serve as a quick reference to those
	Xconverting from \troff/ with the \ms/ macros~\cite{ms} to
	X\latex/~\cite{LaTeX}.  The reader is assumed to have a working knowled
ge
	Xof the \ms/ macros. Furthermore, the reader {\em must\/} have read at 
least
	XChapter~2 of the \latex/ manual\cite{LaTeX}. That chapter covers the b
asics of
	X\latex/.
	X
	XThe default behaviour of \latex/ is described.  With a certain amount 
of
	Xconfiguring, \latex/ can be induced to produce almost any style of
	Xoutput.  Such configuring is, however, beyond the scope of this
	Xdocument.  Similarly, \latex/ has many features which are not describe
d.
	XThese include
	X
	X\begin{itemize}
	X\item diagram production;
	X\item mathematical typesetting;
	X\item the typesetting of program sources;
	X\item automatic cross-referencing and index production;
	X\item the layout of tables;
	X\end{itemize}
	X
	XThe \latex/\cite{LaTeX} and \TeX\cite{TeX} manuals
	Xshould be consulted for the full story. 
	X
	X\section{Getting Started with \latex/}
	X
	XTo run \latex/ on a file called either "file" or, more conventionally,
	X"file.tex", type
	X\begin{verbatim}
	X    % latex file
	X\end{verbatim}
	X
	XBy default, the file will be taken from either your current
	Xdirectory, or, if no such file appears there, the directory
	X"/usr/lib/tex/macros" will be searched.
	X
	XRunning \latex/ produces a DVI file ("file.dvi" for the above example)
.
	XYou can send this to the {\sf Imagen} by using \pgm{iptex}(l):
	X\begin{verbatim} 
	X    % iptex file         
	X\end{verbatim} 
	X
	XAlternatively, you may like to preview it on the {\sf Sun} screen by u
sing
	X\pgm{texview}(l):
	X\begin{verbatim}  
	X    % texview file         
	X\end{verbatim}
	X
	XThe \latex/ Manual\cite{LaTeX} will refer you to a {\sl Local Guide}. 
	XThis guide can be found in the file "/usr/lib/tex/macros/local.tex", a
nd
	Xso can be printed out by
	X\begin{verbatim}
	X   % latex local
	X   % latex local
	X   % iptex local
	X\end{verbatim}
	X
	XNo, that is not a mis-print. You will need to run \latex/ twice.  It
	Xneeds to make two passes to establish all the cross-references.
	XNormally, you will do this only for a final copy.
	XYou may now get rid of all the temporary files that \latex/ creates
	Xwith
	X\begin{verbatim}
	X    % texclean
	X\end{verbatim}
	X
	XTwo other files that you might like to look at in the
	X"/usr/lib/tex/macros" directory are "small.tex" and "sample.tex". 
	X
	X\section{Document Structure}
	X
	XThe \ms/ macros assume a document structure of the following form:
	X
	X\begin{mstext}
	X	{[optional date specification: ".ND" a date]}
	X	{[optional overall format: ".RP"---see below]}
	X	".TL"
	X	Title of document (one or more lines)
	X	".AU"
	X	Author(s) (may also be several lines)
	X	".AI"
	X	Author's institution(s)
	X	".AB"
	X	Abstract; to be placed on the cover sheet of a paper.
	X	".AE"  (abstract end)
	X	text \ldots
	X\end{mstext}
	X
	XA \latex/ document has an analogous structure:
	X
	X\begin{latextext}
	X	"\documentstyle[a4]{article}"	\>\> \` Specifies the document 
style.
	X						\>\> \` {\tt a4} is for
 A4 paper
	X
	X	"\title{"Title of document %
	X(each line of title separated by "\\")\/"}"
	X	"\author{"Author(s) (each author separated by "\and")\/"}"
	X	"\date{"a date"}"
	X
	X	"\begin{document}"			\>\> \` End of preamble
 and beginning of text.
	X
	X		\> "\maketitle"		\> \` Produces the title.
	X		\> "\tableofcontents"	\> \` Produces the table of con
tents.
	X
	X		\> "\begin{abstract}"
	X		\> Abstract; to be placed under the title
	X		\> "\end{abstract}"
	X
	X		\> body of text \ldots
	X
	X	"\end{document}"
	X\end{latextext}
	X
	XIf a separate title page and abstract page are preferred,
	Xthe "titlepage" style option should be used:
	X
	X\begin{latextext}
	X	"\documentstyle[titlepage,a4]{article}"
	X	\> \ldots
	X\end{latextext}
	X
	X\section{Page Headings}
	X
	XThe \ms/ macros allow headings and footings to be set by means of stri
ng
	Xdefinitions:
	X\begin{mstext}
	X".ds LH" left header
	X".ds CH" center header
	X".ds RH" right header
	X".ds LF" left footer
	X".ds CF" center footer
	X".ds RF" right footer
	X\end{mstext}
	X
	XThe scheme in \latex/ is slightly different;
	Xthere are four page styles: "plain" (the default), "empty", "headings"
 and
	X"myheadings". These are activated by a
	X
	X\begin{latextext}
	X"\pagestyle{"style\/"}"
	X\end{latextext}
	X
	Xcommand. To set your own headings, the commands "\markboth" (for two-s
ided documents)
	Xand "\markright" (for one-sided documents) are required in addition:
	X
	X\begin{latextext} 
	X"\markright{"heading\/"}" or "\markboth{"left head\/"}{"right head\/"}
"
	X"\pagestyle{myheadings}" 
	X\end{latextext} 
	X 
	X\section{Multi-column Formats}
	X
	X\begin{sloppypar}
	XThe ".2C" and ".1C" \ms/ macros permit changing to
	Xtwo-column and single-column format. The analagous \latex/ commands
	Xare "\twocolumn" and "\onecolumn". Like their \ms/
	Xcounterparts, they also skip to a new page.  If a complete document is
	Xto be produced in two-column format, the "twocolumn" style option
	Xshould be used, since that alters various style parameters, such as
	Xthe amount of paragraph indentation, while the
	X"\twocolumn" command does not.
	X\end{sloppypar}
	X
	X\section{Section Headings}
	X
	XThe \ms/ macros
	X
	X\begin{mstext}
	X	".NH"
	X	numbered section heading
	X	may be several lines
	X\end{mstext}
	X
	Xand
	X
	X\begin{mstext}
	X	".SH"
	X	unnumbered section heading
	X\end{mstext}
	X
	Xcorrespond to the \latex/ commands
	X
	X\begin{latextext}
	X	"\section{"numbered section heading
	X		\>	may be several lines"}"
	X\end{latextext}
	X
	X	and
	X
	X\begin{latextext}
	X	"\section*{"section heading"}"
	X\end{latextext}
	X
	XInstead of specifying depth of level number for sub-sections, as is do
ne
	Xwith the \ms/ macros, \latex/ provides specific "\subsection",
	X"\subsubsection", "\paragraph" and "\subsubparagraph"
	Xcommands.\footnote{Documents written in the "report" document style ma
y also
	Xbe divided into "chapter"s and "part"s.}
	X
	X\section{Paragraphs}
	X
	X\subsection{Standard and Left-Block Paragraphs}
	X
	XThe \ms/ macros provide two paragraphing macros.  The ".PP" macro
	Xintroduces indented paragraphs.  The ".LP" introduces unindented
	Xones.  They both leave space between paragraphs.  One, or more blank
	Xlines, or the beginning of a section normally introduce a new paragrap
h
	Xwith \latex/.  The default behaviour is to have the first paragraph of
	Xeach section unindented, to indent all other paragraphs and to leave n
o
	Xgap between paragraphs. 
	X
	X\subsection{Indented Paragraphs}
	X
	XThe \ms/ macros provide a fairly crude basis for producing indented or
	Xhanging paragraphs in the form of the ".IP" macro.  \latex/
	Xprovides a number of different environments which accomplish the same
	Xtask. 
	X
	X\subsubsection{Numbered Paragraphs}
	X
	XThese are produced by giving a number argument to the ".IP" macro, as 
in the
	Xfollowing example:
	X
	X\begin{mstext}
	X	".IP 1."
	X	Text for first paragraph, typed
	X	normally for as long as you would
	X	like on as many lines as needed.
	X	".IP 2."
	X	Text for second paragraph, \ldots
	X\end{mstext}
	X
	XA similar result can be achieved using the enumerate environment of \l
atex/:
	X
	X\begin{latextext}
	X	"\begin{enumerate}"
	X		\> "\item"	\> Text for first paragraph, typed
	X			\>	\> normally for as long as you would
	X			\>	\> like on as many lines as needed.
	X
	X		\> "\item"	\> Text for second paragraph, \ldots
	X	"\end{enumerate}"
	X\end{latextext}
	X
	X\subsubsection{Bulleted Paragraphs}
	X
	XBulleted paragraphs, produced using the \ms/ macro call
	X
	X\begin{mstext}
	X	".IP \(bu"
	X	Text \ldots
	X\end{mstext}
	X
	Xcan be produced in \latex/ by the sequence
	X
	X\begin{latextext}
	X	"\begin{itemize}"
	X	\>	"\item" Text \ldots
	X	"\end{itemize}" 
	X\end{latextext}
	X
	X\subsubsection{Labelled Paragraphs}
	X
	XLabelled paragraphs are produced by the \ms/ macro call ".IP".
	XFor example,
	X
	X\begin{mstext}
	X	".IP first: 9"
	X	Notice the longer label, requiring larger
	X	indenting for these paragraphs.
	X	".IP second:"
	X	And so forth.
	X\end{mstext}
	X
	Xwill produce something like
	X
	X\begin{quote}
	X\begin{description}
	X	\item[\rm first: 9] \mbox{}
	X
	X		Notice the longer label, requiring larger
	X		indenting for these paragraphs.
	X
	X	\item[\rm second:] \mbox{}
	X
	X		And so forth.
	X
	X\end{description}
	X\end{quote}
	X
	XThese are produced in \latex/ use of the "description" environment, wi
th a
	Xslightly different appearance:
	X
	X\begin{latextext}
	X	"\begin{description}"
	X		\> "\item[first: 9]" \> Notice the longer label, requir
ing
	X			\> \> larger indenting for these paragraphs.
	X			\> \> Note the different paragraph shape
	X			\> \> and the embolding of the labels with
	X			\> \> \latex/.
	X		\> "\item[second:]" \> And so forth.
	X	"\end{description}"
	X\end{latextext}
	X
	Xproduces
	X\begin{quote}
	X\begin{description} 
	X	\item[first: 9]
	X			Notice the longer label, requiring larger
	X			indenting for these paragraphs. Note the
	X			different paragraph shape and the embolding
	X			of the labels with \latex/.
	X	\item[second:]
	X			And so forth.
	X\end{description}
	X\end{quote}
	X 
	X\subsubsection{Nested Indented Paragraphs}
	X
	XNested indentation is provided by the ".RS" and ".RE" pair of \ms/
	Xmacros. List environments may be nested freely with \latex/, resulting
 in correct
	Xindentation. Also, paragraphs without a leading "\item" will be indent
ed
	Xunderneath the most recent paragraph to have a leading "\item".
	X
	X
	X\subsection{Quoted Paragraphs}
	X
	XThe direct counterpart of the ".QP" \ms/ macro is the "quote" environm
ent.
	XThe direct counterpart of the ".QS" and ".QE" pair of
	X\ms/ macros is the "quotation" environment.
	X
	X\section{Footnotes}
	X
	XThe \ms/ macros provide the ".FS" and ".FE" macros pair for collecting
	Xfootnotes. \latex/ provides the "\footnote" command,\footnote{Like thi
s}. 
	XThat footnote was produced by writing
	X
	X\begin{latextext}
	X\ldots command."\footnote{"Like this"}" That footnote \ldots
	X\end{latextext}
	X
	X\section{Fonts}
	X
	X\subsection{Style}
	X
	XThe \ms/ macros allow font styles to be changed by use of one of the f
ollowing
	Xcommands:
	X
	X\begin{mstext}
	X".R" {\rm Roman}
	X".I" {\it Italic}
	X".B" {\bf Bold}
	X\end{mstext}
	X
	XFor example,
	X
	X\begin{mstext}
	XThis text becomes
	X".B" {\bf bolder}
	Xand back again.
	X\end{mstext}
	X
	Xor
	X
	X\begin{mstext}
	XThis text becomes
	X".B"
	X{\bf bolder}
	X".R"
	Xand back again.
	X\end{mstext}
	X
	Xproduces the word ``bolder'' in the bold font.
	X
	X\latex/ has a similar set of commands whose extent is limited by braci
ng:
	X
	X\begin{quote}
	X\begin{tabular}{ll}
	X"\rm" & {\rm Roman} \\
	X"\it" & {\it Italic} \\
	X"\bf" & {\bf Bold} \\
	X"\sl" & {\sl Slanted} \\
	X"\sc" & {\sc Small Capitals} \\
	X"\sf" & {\sf Sans Serif} \\
	X"\tt" & {\tt Typewriter}
	X\end{tabular}
	X\end{quote}
	X
	XThe above example would be written
	X
	X\begin{latextext}
	XThis text becomes "{\bf "{\bf bolder}"}" and back again.
	X\end{latextext}
	X
	X\subsection{Size}
	X
	XThe \ms/ macros allow font sizes to be changed by use of one of the fo
llowing
	Xcommands: 
	X
	X\begin{mstext}
	X".SM" {\small smaller}
	X".NL" {\normalsize normal size}
	X".LG" {\large larger}
	X\end{mstext}
	X
	XFor example,
	X
	X\begin{mstext}
	XThis text becomes
	X".LG"
	X{\large larger}
	X".SM"
	Xand back again.
	X\end{mstext}
	X
	XThe ".SM" an ".LG" macros may be repeated for greater effect.
	X
	X\latex/ has a similar set of commands whose extent is limited by braci
ng.
	X
	X\begin{quote}
	X\begin{tabular}{ll}
	X"\tiny" & {\tiny tiny} \\
	X"\scriptsize" & {\scriptsize scriptsize} \\
	X"\footnotesize" & {\footnotesize footnotesize} \\
	X"\small" & {\small small} \\
	X"\normalsize" & {\normalsize normal size} \\
	X"\large" & {\large large} \\
	X"\Large" & {\Large Large} \\[\smallskipamount]
	X"\LARGE" & {\LARGE LARGE} \\[\smallskipamount]
	X"\huge" & {\huge huge} \\[\smallskipamount]
	X"\Huge" & {\Huge Huge}
	X\end{tabular}
	X\end{quote}
	X
	XThe above example would be written
	X
	X\begin{latextext}
	XThis text becomes "{\large "{\large larger}"}" and back again.
	X\end{latextext}
	X
	XNotice that with \latex/ the sizes are absolutely specified and not
	Xrelatively specified, as with \troff/. 
	X
	X\cleardoublepage
	X
	X\appendix
	X
	X\section{Summary}
	X
	XThis Appendix provides a quick guide to the correspondences between th
e \ms/
	Xmacros (and some raw \troff/ commands) and \latex/ macros. Note that t
he output
	Xmay not have an identical appearance in all cases.
	X
	X\newenvironment{stack}{\begin{tabular}{l}}{\end{tabular}}
	X\newcommand{\eoe}{\\[\bigskipamount]}
	X
	X\begin{em}
	X\begin{tabular}{|p{0.2\textwidth}|l|l|}
	X\hline
	X\bf Purpose 	&	\bf \ms/ macro call &	\bf \latex/ equivalent 
\eoe
	X\hline \hline
	X\rm Date	&	".ND" date &	"\date{"date\/"}" \eoe
	X\hline
	X\rm Cover Page	&	".RP"	&	"\titlepage" \eoe
	X\hline
	X\rm Author	&	\begin{stack}
	X			".AU" \\
	X			author
	X			\end{stack}	&	"\author{"author\/"}" \
eoe
	X\hline
	X\rm Affiliation	&	\begin{stack}
	X			".AI" \\
	X			Institution
	X			\end{stack}	&	"\thanks{"Institution\/
"}" \eoe
	X\hline
	X\rm Abstract	&	\begin{stack}
	X			".AB" \\
	X	       		\ldots{} abstract \ldots \\
	X	       		".AE"
	X			\end{stack}	&	\begin{stack}
	X						"\begin{abstract}" \\
	X						\ldots{} abstract \ldot
s \\
	X						"\end{abstract}"
	X						\end{stack} \eoe
	X\hline
	X\rm Multi-column formats
	X		&	".2C"	&	"\twocolumn" \eoe
	X		&	".1C"	&	"\onecolumn" \eoe
	X\hline
	X\rm Section Headings &	\begin{stack}
	X			".SH" \\
	X			heading
	X			\end{stack}	&	"\section*{"heading\/"}
" \eoe
	X		&	\begin{stack}
	X			".NH" \\
	X			heading
	X			\end{stack}	&	"\section{"heading\/"}"
 \eoe
	X		&	\begin{stack}
	X			".NH 2" \\
	X			heading
	X			\end{stack}	&	"\subsection{"heading\/
"}" \eoe
	X		&	\begin{stack}
	X			".NH 3" \\
	X			heading
	X			\end{stack}	&	"\subsubsection{"headin
g\/"}" \eoe
	X		&	\begin{stack}
	X			".NH 4" \\
	X			heading
	X			\end{stack}	&	"\paragraph{"heading\/"
}" \eoe
	X		&	\begin{stack}
	X			".NH 5" \\
	X			heading
	X			\end{stack}	&	"\subparagraph{"heading
\/"}" \eoe
	X\hline
	X\end{tabular}
	X
	X\begin{tabular}{|p{0.2\textwidth}|l|l|}
	X\hline
	X\bf Purpose     &       \bf \ms/ macro call &   \bf \latex/ equivalent
 \eoe
	X\hline \hline
	X\rm Standard and Left-Block paragraphs
	X		&	".LP", ".PP"	&	one, or more blank line
s \eoe
	X\hline
	X\rm Numbered paragraphs
	X		&	\begin{stack}
	X			".IP" n. \\
	X			Text \ldots \\
	X			\vdots
	X			\end{stack}	&	\begin{stack}
	X						"\begin{enumerate}" \\
	X						"\item" Text \ldots \\
	X						\vdots \\
	X						"\end{enumerate}"
	X						\end{stack} \eoe
	X\hline
	X\rm Bulleted paragraphs
	X		&	\begin{stack}
	X			".IP \(bu" \\
	X			Text \ldots \\
	X			\vdots
	X			\end{stack}	&	\begin{stack}
	X						"\begin{itemize}" \\
	X						"\item" Text \ldots \\
	X						\vdots \\
	X						"\end{itemize}"
	X						\end{stack} \eoe
	X\hline
	X\rm Labelled paragraphs
	X		&	\begin{stack}
	X			".IP" label \\
	X			Text \ldots \\
	X			\vdots
	X			\end{stack}	&	\begin{stack}
	X						"\begin{description}" \
\
	X						"\item["label\/"]" Text
 \ldots \\
	X						\vdots \\
	X						"\end{description}"
	X						\end{stack} \eoe
	X\hline
	X\rm Quoted paragraphs
	X		&	\begin{stack}
	X			".QP" \\
	X			Text \ldots \\
	X			\end{stack}	&	\begin{stack}
	X						"\begin{quote}" \\
	X						Text \ldots \\
	X						"\end{quote}"
	X						\end{stack} \eoe
	X		&	\begin{stack}
	X			".QS" \\
	X			Text \ldots \\
	X			".QE"
	X			\end{stack}	&	\begin{stack}
	X						"\begin{quotation}" \\
	X						Text \ldots \\
	X						\vdots \\
	X						"\end{quotation}"
	X						\end{stack} \eoe
	X\hline
	X\rm Footnotes	&	\begin{stack}
	X			".FS" \\
	X			Text \ldots \\
	X			".FE"
	X			\end{stack}	&	"\footnote{"Text \ldots
 "}" \eoe
	X\hline
	X\end{tabular}
	X
	X\begin{tabular}{|p{0.2\textwidth}|l|l|}
	X\hline
	X\bf Purpose 	&	\bf \ms/ macro call &	\bf \latex/ equivalent 
\eoe
	X\hline \hline
	X\rm Font Styles	&	\begin{stack}
	X			".R" {\rm Roman} \\
	X			".I" {\it Italic} \\
	X			".B" {\bf Bold}
	X			\end{stack}	&
	X						\begin{stack}
	X						"{\rm" {\rm Roman}"}" \
\
	X						"{\it" {\it Italic\/}"}
" \\
	X						"{\bf" {\bf Bold}"}" \\
	X						"{\sl" {\sl Slanted\/}"
}" \\
	X						"{\sc" {\sc Small Capit
als}"}" \\
	X						"{\sf" {\sf Sans Serif}
"}" \\
	X						"{\tt" {\tt Typewriter}
"}"
	X						\end{stack} \eoe
	X\hline
	X\rm Font Sizes	&
	X			\begin{stack}
	X			".SM" {\small smaller} \\
	X			".NL" {\normalsize normal size} \\
	X			".LG" {\large larger}
	X			\end{stack} &	
	X				\begin{stack}
	X				"{\tiny" {\tiny tiny}"}" \\
	X				"{\scriptsize" {\scriptsize scriptsize}
"}" \\
	X				"{\footnotesize" {\footnotesize footnot
esize}"}" \\
	X				"{\small" {\small small}"}" \\
	X				"{\normalsize" {\normalsize normal size
}"}" \\
	X				"{\large" {\large large}"}" \\
	X				"{\Large" {\Large Large}"}" \\[\smallsk
ipamount]
	X				"{\LARGE" {\LARGE LARGE}"}" \\[\smallsk
ipamount]
	X				"{\huge" {\huge huge}"}" \\[\smallskipa
mount]
	X				"{\Huge" {\Huge Huge}"}"
	X				\end{stack} \eoe
	X\hline
	X\end{tabular}
	X\end{em}
	X
	X\bibliographystyle{alpha}
	X\bibliography{refs}
	X
	X\end{document}
SHAR_EOF
if test 17397 -ne "`wc -c < 'ms-latex.tex'`"
then
	echo shar: "error transmitting 'ms-latex.tex'" '(should have been 17397
 characters)'
fi
fi
echo shar: "extracting 'sfwmac.sty'" '(1626 characters)'
if test -f 'sfwmac.sty'
then
	echo shar: "will not over-write existing file 'sfwmac.sty'"
else
sed 's/^	X//' << \SHAR_EOF > 'sfwmac.sty'
	X% LaTeX support for writing UNIX-style documentation
	X
	X
	X% UNIX-style references
	X
	X\def\sfwFILfont{\sl}
	X
	X\def\@egaux#1#2#3{%
	X    \def#1##1{%
	X	#2\begingroup \tt \let\do=\@makeother \dospecials
	X	\def\@tempa####1##1{####1\endgroup#3}\@tempa
	X    }%
	X}
	X
	X\def\pgm#1{\mbox{\it#1}\index{#1}}	% programs
	X\def\xpgm#1#2{\mbox{\it#1}\index{\noexpand\noexpand\noexpand#2{}}}
	X\def\man#1(#2){\xpgm{#1\/}{#1}(#2)}	% manual entries
	X\@egaux\arg{`{}}{'{}}			% arguments to programs
	X\@egaux\switch{`{}-}{'{}}		% switches to programs
	X\def\file#1{\mbox{\sfwFILfont#1}}	% filename
	X
	X
	X% Commonly used software systems
	X
	X\def\sfwPGMfont{\tt}
	X
	X\def\@sfwdef#1#2{\@sfwaux{#1/}{#2}}
	X\def\@sfwaux#1#2{\def#1{\mbox{#2}\index{\noexpand\noexpand\noexpand#1{
}}}}
	X
	X\@sfwdef\EMACS{\sfwPGMfont EMACS}
	X\@sfwdef\INFO{\sfwPGMfont INFO}
	X\@sfwdef\MLisp{\sfwPGMfont MLisp}
	X
	X\@sfwdef\SendMail{\sfwPGMfont SendMail}
	X\@sfwdef\UUCP{\sfwPGMfont UUCP}
	X
	X\def\AmS{$\cal A$\kern-.1667em\lower.5ex\hbox{$\cal M$}\kern-.125em$\c
al S$}
	X\@sfwaux\AmSTeX{\rm \AmS-\TeX}
	X
	X\@sfwaux\PhDTeX{\rm P\kern-.05em{\sc h\kern-.025em D}\kern-0.08em\TeX}
	X
	X\@sfwaux\LaTeX{\rm L\kern-.36em\raise.3ex\hbox{\sc a}\kern-.15em\TeX}
	X\@sfwaux\BibTeX{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em\TeX}
	X\@sfwaux\SLiTeX{\rm S\kern-.06em{\sc l\kern-.035emi}\kern-.06em\TeX}
	X
	X
	X\@sfwdef\WEB{\sfwPGMfont WEB}
	X
	X\@sfwdef\Prolog{\sfwPGMfont Prolog}
	X\@sfwdef\Lisp{\sfwPGMfont Lisp}
	X
	X\@sfwdef\DBUG{\sfwPGMfont DBUG}
	X
	X\@sfwdef\troff{\sfwPGMfont troff}
	X\@sfwdef\nroff{\sfwPGMfont nroff}
	X\@sfwdef\Miranda{\sfwPGMfont Miranda}
	X\@sfwdef\AiM{\sfwPGMfont AiM}
	X\@sfwdef\ASN{\sfwPGMfont ASN.1}
	X\@sfwdef\ISODE{\sfwPGMfont ISODE}
	X
SHAR_EOF
if test 1626 -ne "`wc -c < 'sfwmac.sty'`"
then
	echo shar: "error transmitting 'sfwmac.sty'" '(should have been 1626 ch
aracters)'
fi
fi
exit 0
:	End of shell archive

------- Message 2

Date:    Wed, 08 Apr 87 06:46:43 -0400 
Subject: Returned mail: Host unknown
From:    Mail Delivery Subsystem <Postmaster@seismo.uucp>
To:      jrp@psg.npl.co.uk

   ----- Transcript of session follows -----
550 su-score.arpa!texhax... Host unknown

   ----- Unsent message follows -----
Received: from mcvax.UUCP by seismo.CSS.GOV (5.54/1.14) with UUCP 
	id AA02312; Wed, 8 Apr 87 06:46:43 EDT
Received: by mcvax.cwi.nl; Wed, 8 Apr 87 03:53:02 +0200 (MET)
Received: from nplpsg.uucp by kestrel.Ukc.AC.UK   with UUCP  id aa05412;
          8 Apr 87 0:10 BST
Received: from snow by snow.psg.npl.co.uk; Tue, 7 Apr 87 23:48:58 BST
To: texhax@su-score.arpa
Subject: LaTeX for the troff -ms Macros User
Return-Receipt-To: mcvax!psg.npl.co.uk!jrp
Date: Tue, 07 Apr 87 22:48:57 GMT
Message-Id: <6189.544834137@psg.npl.co.uk>
From: John Pavel <mcvax!nplpsg!jrp>


Here is a textual version of the first cut on a paper that should
help anyone trying to convert from the -ms macros to LaTeX.

I would welcome any contributions to completing/correcting this paper.

Thanks,

John Pavel

- --snip----snip----snip----snip----snip----snip----snip----snip--




















       LaTEX for the troff -ms Macros User


		    John Pavel
	   National Physical Laboratory
		  Teddington, UK


		 jrp@nplpsg.UUCP

	       87/04/07 at 23:37:25




















		     Abstract

   This document is intended to serve as a brief
 reference to  aTEX for  those who  are familiar
 with troff and  -ms macros.   This version is a
 draft for comment.






 Contents

 1Introduction                                 2

 2Getting Started with LaTX                    2
 3Document Structure                           3

 4Page Headings                                4

 5Multi-column Formats                         5
 6Section Headings                             5

 7Paragraphs                                   6
  7.1Standard and Left-Block Paragraphs :::::: 6
  7.2Indented Paragraphs :::::::::: :::::::::: 7
     7.2Numbered Paragraphs ::::::: :::::::::: 7
     7.2Bulleted Paragraphs ::::::: :::::::::: 7
     7.2Labelled Paragraphs ::::::: :::::::::: 8
     7.2Nested Indented Paragraphs: :::::::::: 9
  7.3Quoted Paragraphs :::::::::::: :::::::::: 9
 8Footnotes                                    9

 9Fonts                                        9
  9.1Style :::::::::: ::::::::::::: :::::::::: 9
  9.2Size ::::::::::: ::::::::::::: :::::::::: 10

 ASummary                                     12


















			1






 1 Introduction

 This document is  intended to serve  as a quick
 reference to  those converting  from troff with
 the -ms  macros [Les76] to  aTEX [Lam86].   The
 reader is assumed  to have  a working knowledge
 of the  -ms macros.    Furthermore,  the reader
 must have read  at least Chapter 2  of the LaTX

 manual[Lam86].  That  chapter covers the basics
 of aTEX.
   The default  behaviour of LaTEX is described.
 With  a certain  amount  of  configuring,  LaTX
 output.indSuch configuring ais,showever,tbeyond
 the scope  of this document.    Similarly, LaTX
 has  many  features  which  are not  described.
 These include

   ?diagram production;

   ?mathematical typesetting;

   ?the typesetting of program sources;
   ?automatic  cross-referencing and  index pro-
    duction;

   ?the layout of tables;

   The LTEX[Lam86] and TEX[Knu86] manuals should
 be consulted for the full story.


 2 Getting Started with aTEX

 To run  aTEX on a  file called  either file or,
 more conventionally, file.tex, type

     % latex file

   By  default,  the  file  will  be  taken from
 either  your  current  directory,   or,  if  no
 such   file  appears   there,    the  directory
 /usr/lib/tex/macros will be searched.


			2






   Running LaTEX produces  a DVI  file (file.dvi
 for the above  example).  You  can send this to
 the Imagen by using iptex(l):

     % iptex file

   Alternatively, you may  like to preview it on
 the Sun screen by using texview(l):

     % texview file
   The LaTX  Manual[Lam86] will  refer you  to a
 Local Guide.   This  guide can be  found in the

 file /usr/lib/tex/macros/local.tex,  and so can
 be printed out by
    % latex local
    % latex local
    % iptex local

   No, that is  not a mis-print.   You will need
 to run  LaTX  twice.    It  needs  to  make two
 passes to  establish all  the cross-references.
 Normally, you  will  do this  only for  a final
 copy.  You may now get rid of all the temporary
 files that aTEX creates with

     % texclean
   Two other files  that you might  like to look

 at  in  the  /usr/lib/tex/macros  directory are
 small.tex and sample.tex.


 3 Document Structure

 The -ms macros  assume a  document structure of
 the following form:

   [optional date specification:  .ND a date]
   [optional overall format:  .RP---see below]
   .TL
   Title of document (one or more lines)
   .AU
   Author(s) (may also be several lines)

			3






   .AI
   Author's institution(s)
   .AB
   Abstract; to be placed on the cover sheet of a paper.
   .AE  (abstract end)
   text .


   A aTEX document has an analogous structure:

   \documentstyle[aSpecifiesethe document style.
			      a4 is for A4 paper

   \title{Title of document (each line of title separated by \\)}
   \author{Author(s) (each author separated by \and)}
   \date{a date}

   \begin{documenEnd of preamble and beginning of text.

	\maketitle           Produces the title.
	\tableofcProduces the table of contents.

	\begin{abstract}
	Abstract; to be placed under the title
	\end{abstract}

	body of text .

   \end{document}


   If a  separate title  page and  abstract page
 are  preferred,   the  titlepage  style  option
 should be used:

   \documentstyle[titlepage,a4]{article}
	.



 4 Page Headings

 The -ms macros  allow headings  and footings to
 be set by means of string definitions:

			4






   .dsLH left header
   .dsCH center header
   .dsRH right header
   .dsLF left footer
   .dsCF center footer
   .dsRF right footer


   The  scheme in  LaTX  is  slightly different;
 there  are  four  page   styles:    plain  (the
 default),   empty,  headings   and  myheadings.
 These are activated by a

   \pagestyle{style}

   command.    To  set  your  own headings,  the
 commands  \markboth  (for  two-sided documents)
 and \markright  (for  one-sided  documents) are
 required in addition:

   \markright{heading} or \markboth{left head}{right head}
   \pagestyle{myheadings}



 5 Multi-column Formats

 The  .2C and  .1C  -ms  macros  permit changing
 to two-column  and single-column  format.   The
 analagous  aTEX  commands  are  \twocolumn  and

 \onecolumn.  Like  their -ms counterparts, they
 also  skip to  a  new  page.     If  a complete
 document  is  to   be  produced  in  two-column
 format,  the   twocolumn  style  option  should
 be  used,   since  that  alters  various  style
 parameters,  such as  the  amount  of paragraph
 indentation, while the  \twocolumn command does
 not.


 6 Section Headings

 The -ms macros

			5






   .NH
   numbered section heading
   may be several lines


   and
   .SH
   unnumbered section heading


   correspond to the aTEX commands
   \section{numbered section heading
	may be several lines}


   and

   \section*{section heading}

   Instead of  specifying depth  of level number
 for  sub-sections,  as  is  done  with  the -ms
 macros,  LaTX  provides  specific  \subsection,
 \subsubsection, \paragraph and \subsubparagraph
 commands.1


 7 Paragraphs


 7.1 Standard and Left-Block Paragraphs
 The -ms macros provide two paragraphing macros.
 The .PP  macro introduces  indented paragraphs.
 The  .LP  introduces  unindented  ones.    They
 both  leave space  between  paragraphs.    One,
 or more  blank  lines,  or the  beginning  of a
 section normally introduce a new paragraph with
 aTEX.   The  default behaviour  is to  have the
 first paragraph of  each section unindented, to
 indent all other paragraphs and to leave no gap
 between paragraphs.
 --------------------
  1Documents  written  in  the  report  document
 style may  also  be divided  into  chapters and
 parts.

			6






 7.2 Indented Paragraphs

 The -ms macros provide a fairly crude basis for
 producing indented or hanging paragraphs in the
 form of the .IP macro.   aTEX provides a number
 of different environments  which accomplish the
 same task.

 7.2.1 Numbered Paragraphs

 These are produced by  giving a number argument
 to the .IP macro, as in the following example:

   .IP1.
   Text for first paragraph, typed
   normally for as long as you would
   like on as many lines as needed.
   .IP2.
   Text for second paragraph, .


   A similar  result can  be achieved  using the
 enumerate environment of aTEX:

   \begin{enumerate}
	\item    Text for first paragraph, typed
		 normally for as long as you would
		 like on as many lines as needed.

	\item    Text for second paragraph, .
   \end{enumerate}



 7.2.2 Bulleted Paragraphs
 Bulleted  paragraphs,  produced  using  the -ms
 macro call

   .IP\(bu
   Text .


   can be produced in aTEX by the sequence


			7






   \begin{itemize}
	\item Text .
   \end{itemize}



 7.2.3 Labelled Paragraphs

 Labelled  paragraphs are  produced  by  the -ms
 macro call .IP. For example,

   .IPfirst:9
   Notice the longer label, requiring larger
   indenting for these paragraphs.
   .IPsecond:
   And so forth.

   will produce something like

    first:  9
       Notice  the  longer  label,  requiring
       larger   indenting  for   these  para-
       graphs.

    second:
       And so forth.

   These  are  produced  in   aTEX  use  of  the
 description   environment,   with   a  slightly
 different appearance:

   \begin{description}
	\item[firNotice the longer label, requiring
		 larger indenting for these paragraphs.
		 Note the different paragraph shape
		 and the embolding of the labels with
		 aTEX.
	\item[secAnd:so forth.
   \end{description}


   produces



			8






    first:  9 Notice  the longer  label,  re-
       quiring  larger  indenting  for  these
       paragraphs.      Note   the  different
       paragraph  shape and the  embolding of
       the labels with LaTX.
    second: And so forth.


 7.2.4 Nested Indented Paragraphs

 Nested indentation is  provided by  the .RS and
 .RE pair  of  -ms  macros.    List environments
 may be  nested freely  with LaTX,  resulting in
 correct indentation.   Also, paragraphs without
 a leading \item will be indented underneath the
 most recent paragraph to have a leading \item.


 7.3 Quoted Paragraphs
 The direct counterpart of  the .QP -ms macro is
 the quote environment.   The direct counterpart
 of the .QS  and .QE  pair of -ms  macros is the
 quotation environment.


 8 Footnotes


 The -ms macros  provide the .FS  and .FE macros
 pair for collecting  footnotes.   LTEX provides
 the \footnote  command,2.    That  footnote was
 produced by writing
   .  command.\footnote{Like this} That footnote .



 9 Fonts


 9.1 Style
 The -ms macros allow  font styles to be changed
 by use of one of the following commands:
 --------------------
  2Like this

			9






   .R  Roman
   .I  Italic
   .B  Bold


   For example,

   This text becomes
   .B  bolder
   and back again.


   or

   This text becomes
   .B
    bolder
   .R
   and back again.

   produces the word "bolder" in the bold font.
   aTEX  has  a similar  set  of  commands whose
 extent is limited by bracing:

     \rm  Roman
     \it  Italic

     \bf  Bold
     \sl  Slanted
     \sc  Small Capitals
     \sf  Sans Serif
     \tt  Typewriter

   The above example would be written

   This text becomes {\bf bolder} and back again.


 9.2 Size

 The -ms macros  allow font sizes  to be changed
 by use of one of the following commands:



			10






   .SM  smaller
   .NL  normal size
   .LG  larger


   For example,

   This text becomes
   .LG
    larger
   .SM
   and back again.


   The .SM  an  .LG macros  may be  repeated for
 greater effect.
   aTEX  has  a similar  set  of  commands whose
 extent is limited by bracing.

     \tiny          tiny
     \scriptsize    scriptsize
     \footnotesize  footnotesize
     \small         small
     \normalsize    normal size
     \large         large
     \Large         Large

     \LARGE         LARGE
     \huge          huge
     \Huge          Huge

   The above example would be written

   This text becomes {\large larger} and back again.


   Notice that  with  aTEX  the sizes  are abso-
 lutely specified and  not relatively specified,
 as with troff.






			11






 A Summary

 This Appendix  provides  a quick  guide  to the
 correspondences  between  the  -ms  macros (and

 some raw troff commands) and LaTX macros.  Note
 that  the  output  may  not  have an  identical
 ap-----------------------------------------------------
   -Purpose   --ms macro call  -aTEX equivalent         -
   ------------------------------------------------------
   -Date      -.ND date        -\date{date}             -
   ------------------------------------------------------
   -Cover     -.RP             -\titlepage              -
   -Page      -                -                        -
   -------------.AU--------------------------------------
   -Author    - author         -\author{author}         -
   -------------.AI--------------------------------------
   -Affiliatio-                -\thanks{Institution}    -
   -          - Institution    -                        -
   -------------.AB--------------\begin{abstract}--------
   -Abstract  - .  abstract .  - .  abstract .          -
   -          - .AE            -                        -
   ------------------------------------------------------
   -Multi-    -.2C             -\twocolumn              -
   -column    -                -                        -
   -formats   -                -                        -
   -          -.1C             -\onecolumn              -
   -------------.SH--------------------------------------
   -Section   -                -\section*{heading}      -
   -Headings  - heading        -                        -
   -          - .NH            -                        -
   -          -                -\section{heading}       -
   -          - heading        -                        -
   -          - .NH2           -                        -
   -          - heading        -\subsection{heading}    -
   -          - .NH3           -                        -
   -          -                -\subsubsection{heading} -
   -          - heading        -                        -
   -          - .NH4           -                        -
   -          - heading        -\paragraph{heading}     -
   -          - .NH5           -                        -
   -          -                -\subparagraph{heading}  -
   ------------------------------------------------------


			12





   -----------------------------------------------------
   -Purpose   --ms macro call LaTEX equivalent         -
   -----------------------------------------------------
   -Standard  -.LP, .PP       one, or more blank lines -
   -and Left- -               -                        -
   -Block     -               -                        -
   -para-     -               -                        -
   -graphs    -               -                        -
   -----------------------------------------------------
   -          - .IP n.        -\begin{enumerate}       -
   -Numbered  - Text .        -.item Text .            -
   -para-     - .             -                        -
   -graphs    -               -\end{enumerate}         -
   -----------------------------------------------------
   -          - .IP\(bu       -\begin{itemize}         -
   -          - Text .        -\item Text .            -
   -Bulleted  - .             -.                       -
   -para-     -               -                        -
   -----------------------------------------------------
   -          -               -\begin{description}     -
   -          - .IP label     -\item[label] Text .     -
   -Labelled  - .ext .        -.                       -
   -para-     -               -                        -
   -----------------------------------------------------
   -          - .QP           -\begin{quote}           -
   -Quoted    -               -Text .                  -
   -para-     - Text .        -\end{quote}             -
   -graphs    -               -                        -
   -          -               -                        -
   -          - .QS           -\begin{quotation}       -
   -          - Text .        -.ext .                  -
   -          - .QE           -                        -
   -          -               -\end{quotation}         -
   -------------.FS-------------------------------------
   -Footnotes - Text .        \footnote{Text . }       -
   -          - .FE           -                        -
   -----------------------------------------------------









			13





   -------------------------------------------------------------
   -Purpose   --ms macro call   -LaTX equivalent                -
   --------------------------------------------------------------
   -          -                 - {\rm Roman}                   -
   -          -                 - {\it Italic}                  -
   -          -                 -                               -
   -          - .R Roman        - {\bf Bold}                    -
   -Font      - .I Italic       - {\sl Slanted}                 -
   -Styles    - .B Bold         - {\sc Small Capitals}          -
   -          -                 - {\sf Sans Serif}              -
   --------------------------------------------------------------
   -          -                 - {\tiny tiny}                  -
   -          -                 - {\scriptsize scriptsize}      -
   -          -                 - {\footnotesize footnotesize}  -
   -          -                 - {\small small}                -
   -          - .SM smaller     - {\normalsize normal size}     -
   -Font      - .NL normal size -                               -
   -Sizes     - .LG larger      - {\large large}                -
   -          -                 - {\Large Large}                -
   -          -                 - {\LARGE LARGE}                -
   -          -                 - {\huge huge}                  -
   -          -                 -                               -
   --------------------------------------------------------------


 References

 [Knu86]Donald  E. Knuth.  The TEXbook. Volume A
	of  Computers  and  Typesetting  Series,
	Addison-Wesley, 1986.

 [Lam86]Leslie   Lamport.  LaTEX:    A  Document
	Preparation    System.   Addison-Wesley,
	1986.

 [Les76]Mike  E. Lesk. Using the -ms Macros with
	troff and nroff.  October 8 1976.









			14


------- End of Forwarded Messages

20-Apr-87 02:52:07-PDT,21714;000000000000
Return-Path: <ken@rochester.arpa>
To: texhax@score.stanford.edu
Subject: John Pavel's message
X-Uucp: ..!{allegra,decvax,seismo}!rochester!ken ARPA: ken@rochester.arpa
X-Snail: CS Dept., U of Roch., NY 14627. Voice: Ken!
X-Phone: (716) 275-2569 (office), (716) 244-3806 (home)
Date: Mon, 20 Apr 87 04:54:38 -0500
From: Ken Yap <ken@rochester.arpa>

John Pavel's message seems to have been the victim of a nasty gateway
that snips lines at column 72. I think I have put it back together OK.
Here is a replacement shar file.

	Ken

#! /bin/sh
# This is a shell archive, meaning:
# 1. Remove everything above the #! /bin/sh line.
# 2. Save the resulting text in a file.
# 3. Execute the file with /bin/sh (not csh) to create:
#	ms-latex.tex
#	sfwmac.sty
# This archive created: Mon Apr 20 04:53:57 1987
# By:	Ken Yap ()
export PATH; PATH=/bin:/usr/bin:$PATH
echo shar: "extracting 'ms-latex.tex'" '(17400 characters)'
if test -f 'ms-latex.tex'
then
	echo shar: "will not over-write existing file 'ms-latex.tex'"
else
cat << \SHAR_EOF > 'ms-latex.tex'
\documentstyle[12pt,a4,titlepage,sfwmac]{article}

% Some local macros, mostly stolen from the scheme distribution

% Same as \obeycr, but doesn't do a \@gobblecr.
{\catcode`\^^M=13 \gdef\myobeycr{\catcode`\^^M=13 \def^^M{\\}}%
\gdef\restorecr{\catcode`\^^M=5 }}

{\catcode`\^^I=13 \gdef\obeytabs{\catcode`\^^I=13 \def^^I{\hbox{\hskip 4em}}}}

{\makeatletter \gdef\gobblecr{\@gobblecr}}

\newenvironment{mstext}%
	{\obeyspaces \myobeycr \em
	\begin{tabbing}%
	\qquad\=\hspace*{5em}\=\hspace*{9em}\=\+\kill%   was 16em
	\gobblecr}%
	{\unskip\end{tabbing}}

\newenvironment{latextext}{
\obeyspaces \myobeycr \em
\begin{tabbing}%
\qquad\=\hspace*{5em}\=\hspace*{9em}\=\+\kill%   was 16em
\gobblecr}{\unskip\end{tabbing}}

\catcode`\"=\active
{\makeatletter {\gdef"{\begingroup \catcode``=13
		\@noligs \tt \let\do\@makeother \dospecials \let"=\endgroup}}}

\newcommand{\latex}[1]{\LaTeX}
\newcommand{\ms}[1]{\mbox{\tt -ms}}
\let\endverbatim=\endtrivlist

\title{\latex/ for the \troff/ \ms/ Macros User}
\author{John Pavel \\
National Physical Laboratory \\
Teddington, UK\\[\bigskipamount]
"jrp@nplpsg.UUCP"}

\date{87/04/07 at 23:37:25%
}

\begin{document}

	\maketitle

	\begin{abstract}

	This document is intended to serve as a brief reference to \latex/ for
	those who are familiar with \troff/ and \ms/ macros.  This version
	is a draft for comment.

	\end{abstract}

	\tableofcontents

\cleardoublepage

\section{Introduction}

This document is intended to serve as a quick reference to those
converting from \troff/ with the \ms/ macros~\cite{ms} to
\latex/~\cite{LaTeX}.  The reader is assumed to have a working knowledge
of the \ms/ macros. Furthermore, the reader {\em must\/} have read at least
Chapter~2 of the \latex/ manual\cite{LaTeX}. That chapter covers the basics of
\latex/.

The default behaviour of \latex/ is described.  With a certain amount of
configuring, \latex/ can be induced to produce almost any style of
output.  Such configuring is, however, beyond the scope of this
document.  Similarly, \latex/ has many features which are not described.
These include

\begin{itemize}
\item diagram production;
\item mathematical typesetting;
\item the typesetting of program sources;
\item automatic cross-referencing and index production;
\item the layout of tables;
\end{itemize}

The \latex/\cite{LaTeX} and \TeX\cite{TeX} manuals
should be consulted for the full story. 

\section{Getting Started with \latex/}

To run \latex/ on a file called either "file" or, more conventionally,
"file.tex", type
\begin{verbatim}
    % latex file
\end{verbatim}

By default, the file will be taken from either your current
directory, or, if no such file appears there, the directory
"/usr/lib/tex/macros" will be searched.

Running \latex/ produces a DVI file ("file.dvi" for the above example)
.
You can send this to the {\sf Imagen} by using \pgm{iptex}(l):
\begin{verbatim} 
    % iptex file         
\end{verbatim} 

Alternatively, you may like to preview it on the {\sf Sun} screen by using
\pgm{texview}(l):
\begin{verbatim}  
    % texview file         
\end{verbatim}

The \latex/ Manual\cite{LaTeX} will refer you to a {\sl Local Guide}. 
This guide can be found in the file "/usr/lib/tex/macros/local.tex", and
so can be printed out by
\begin{verbatim}
   % latex local
   % latex local
   % iptex local
\end{verbatim}

No, that is not a mis-print. You will need to run \latex/ twice.  It
needs to make two passes to establish all the cross-references.
Normally, you will do this only for a final copy.
You may now get rid of all the temporary files that \latex/ creates with
\begin{verbatim}
    % texclean
\end{verbatim}

Two other files that you might like to look at in the
"/usr/lib/tex/macros" directory are "small.tex" and "sample.tex". 

\section{Document Structure}

The \ms/ macros assume a document structure of the following form:

\begin{mstext}
	{[optional date specification: ".ND" a date]}
	{[optional overall format: ".RP"---see below]}
	".TL"
	Title of document (one or more lines)
	".AU"
	Author(s) (may also be several lines)
	".AI"
	Author's institution(s)
	".AB"
	Abstract; to be placed on the cover sheet of a paper.
	".AE"  (abstract end)
	text \ldots
\end{mstext}

A \latex/ document has an analogous structure:

\begin{latextext}
	"\documentstyle[a4]{article}"	\>\> \` Specifies the document style.
						\>\> \` {\tt a4} is for A4 paper

	"\title{"Title of document %
(each line of title separated by "\\")\/"}"
	"\author{"Author(s) (each author separated by "\and")\/"}"
	"\date{"a date"}"

	"\begin{document}"			\>\> \` End of preamble and beginning of text.

		\> "\maketitle"		\> \` Produces the title.
		\> "\tableofcontents"	\> \` Produces the table of contents.

		\> "\begin{abstract}"
		\> Abstract; to be placed under the title
		\> "\end{abstract}"

		\> body of text \ldots

	"\end{document}"
\end{latextext}

If a separate title page and abstract page are preferred,
the "titlepage" style option should be used:

\begin{latextext}
	"\documentstyle[titlepage,a4]{article}"
	\> \ldots
\end{latextext}

\section{Page Headings}

The \ms/ macros allow headings and footings to be set by means of string
definitions:
\begin{mstext}
".ds LH" left header
".ds CH" center header
".ds RH" right header
".ds LF" left footer
".ds CF" center footer
".ds RF" right footer
\end{mstext}

The scheme in \latex/ is slightly different;
there are four page styles: "plain" (the default), "empty", "headings" and
"myheadings". These are activated by a

\begin{latextext}
"\pagestyle{"style\/"}"
\end{latextext}

command. To set your own headings, the commands "\markboth" (for two-sided documents)
and "\markright" (for one-sided documents) are required in addition:

\begin{latextext} 
"\markright{"heading\/"}" or "\markboth{"left head\/"}{"right head\/"}"
"\pagestyle{myheadings}" 
\end{latextext} 
 
\section{Multi-column Formats}

\begin{sloppypar}
The ".2C" and ".1C" \ms/ macros permit changing to
two-column and single-column format. The analagous \latex/ commands
are "\twocolumn" and "\onecolumn". Like their \ms/
counterparts, they also skip to a new page.  If a complete document is
to be produced in two-column format, the "twocolumn" style option
should be used, since that alters various style parameters, such as
the amount of paragraph indentation, while the
"\twocolumn" command does not.
\end{sloppypar}

\section{Section Headings}

The \ms/ macros

\begin{mstext}
	".NH"
	numbered section heading
	may be several lines
\end{mstext}

and

\begin{mstext}
	".SH"
	unnumbered section heading
\end{mstext}

correspond to the \latex/ commands

\begin{latextext}
	"\section{"numbered section heading
		\>	may be several lines"}"
\end{latextext}

	and

\begin{latextext}
	"\section*{"section heading"}"
\end{latextext}

Instead of specifying depth of level number for sub-sections, as is done
with the \ms/ macros, \latex/ provides specific "\subsection",
"\subsubsection", "\paragraph" and "\subsubparagraph"
commands.\footnote{Documents written in the "report" document style may also
be divided into "chapter"s and "part"s.}

\section{Paragraphs}

\subsection{Standard and Left-Block Paragraphs}

The \ms/ macros provide two paragraphing macros.  The ".PP" macro
introduces indented paragraphs.  The ".LP" introduces unindented
ones.  They both leave space between paragraphs.  One, or more blank
lines, or the beginning of a section normally introduce a new paragraph
with \latex/.  The default behaviour is to have the first paragraph of
each section unindented, to indent all other paragraphs and to leave no
gap between paragraphs. 

\subsection{Indented Paragraphs}

The \ms/ macros provide a fairly crude basis for producing indented or
hanging paragraphs in the form of the ".IP" macro.  \latex/
provides a number of different environments which accomplish the same
task. 

\subsubsection{Numbered Paragraphs}

These are produced by giving a number argument to the ".IP" macro, as in the
following example:

\begin{mstext}
	".IP 1."
	Text for first paragraph, typed
	normally for as long as you would
	like on as many lines as needed.
	".IP 2."
	Text for second paragraph, \ldots
\end{mstext}

A similar result can be achieved using the enumerate environment of \latex/:

\begin{latextext}
	"\begin{enumerate}"
		\> "\item"	\> Text for first paragraph, typed
			\>	\> normally for as long as you would
			\>	\> like on as many lines as needed.

		\> "\item"	\> Text for second paragraph, \ldots
	"\end{enumerate}"
\end{latextext}

\subsubsection{Bulleted Paragraphs}

Bulleted paragraphs, produced using the \ms/ macro call

\begin{mstext}
	".IP \(bu"
	Text \ldots
\end{mstext}

can be produced in \latex/ by the sequence

\begin{latextext}
	"\begin{itemize}"
	\>	"\item" Text \ldots
	"\end{itemize}" 
\end{latextext}

\subsubsection{Labelled Paragraphs}

Labelled paragraphs are produced by the \ms/ macro call ".IP".
For example,

\begin{mstext}
	".IP first: 9"
	Notice the longer label, requiring larger
	indenting for these paragraphs.
	".IP second:"
	And so forth.
\end{mstext}

will produce something like

\begin{quote}
\begin{description}
	\item[\rm first: 9] \mbox{}

		Notice the longer label, requiring larger
		indenting for these paragraphs.

	\item[\rm second:] \mbox{}

		And so forth.

\end{description}
\end{quote}

These are produced in \latex/ use of the "description" environment, with a
slightly different appearance:

\begin{latextext}
	"\begin{description}"
		\> "\item[first: 9]" \> Notice the longer label, requiring
			\> \> larger indenting for these paragraphs.
			\> \> Note the different paragraph shape
			\> \> and the embolding of the labels with
			\> \> \latex/.
		\> "\item[second:]" \> And so forth.
	"\end{description}"
\end{latextext}

produces
\begin{quote}
\begin{description} 
	\item[first: 9]
			Notice the longer label, requiring larger
			indenting for these paragraphs. Note the
			different paragraph shape and the embolding
			of the labels with \latex/.
	\item[second:]
			And so forth.
\end{description}
\end{quote}
 
\subsubsection{Nested Indented Paragraphs}

Nested indentation is provided by the ".RS" and ".RE" pair of \ms/
macros. List environments may be nested freely with \latex/, resulting in correct
indentation. Also, paragraphs without a leading "\item" will be indented
underneath the most recent paragraph to have a leading "\item".


\subsection{Quoted Paragraphs}

The direct counterpart of the ".QP" \ms/ macro is the "quote" environment.
The direct counterpart of the ".QS" and ".QE" pair of
\ms/ macros is the "quotation" environment.

\section{Footnotes}

The \ms/ macros provide the ".FS" and ".FE" macros pair for collecting
footnotes. \latex/ provides the "\footnote" command,\footnote{Like this}. 
That footnote was produced by writing

\begin{latextext}
\ldots command."\footnote{"Like this"}" That footnote \ldots
\end{latextext}

\section{Fonts}

\subsection{Style}

The \ms/ macros allow font styles to be changed by use of one of the following
commands:

\begin{mstext}
".R" {\rm Roman}
".I" {\it Italic}
".B" {\bf Bold}
\end{mstext}

For example,

\begin{mstext}
This text becomes
".B" {\bf bolder}
and back again.
\end{mstext}

or

\begin{mstext}
This text becomes
".B"
{\bf bolder}
".R"
and back again.
\end{mstext}

produces the word ``bolder'' in the bold font.

\latex/ has a similar set of commands whose extent is limited by bracing:

\begin{quote}
\begin{tabular}{ll}
"\rm" & {\rm Roman} \\
"\it" & {\it Italic} \\
"\bf" & {\bf Bold} \\
"\sl" & {\sl Slanted} \\
"\sc" & {\sc Small Capitals} \\
"\sf" & {\sf Sans Serif} \\
"\tt" & {\tt Typewriter}
\end{tabular}
\end{quote}

The above example would be written

\begin{latextext}
This text becomes "{\bf "{\bf bolder}"}" and back again.
\end{latextext}

\subsection{Size}

The \ms/ macros allow font sizes to be changed by use of one of the fo
llowing
commands: 

\begin{mstext}
".SM" {\small smaller}
".NL" {\normalsize normal size}
".LG" {\large larger}
\end{mstext}

For example,

\begin{mstext}
This text becomes
".LG"
{\large larger}
".SM"
and back again.
\end{mstext}

The ".SM" an ".LG" macros may be repeated for greater effect.

\latex/ has a similar set of commands whose extent is limited by bracing.

\begin{quote}
\begin{tabular}{ll}
"\tiny" & {\tiny tiny} \\
"\scriptsize" & {\scriptsize scriptsize} \\
"\footnotesize" & {\footnotesize footnotesize} \\
"\small" & {\small small} \\
"\normalsize" & {\normalsize normal size} \\
"\large" & {\large large} \\
"\Large" & {\Large Large} \\[\smallskipamount]
"\LARGE" & {\LARGE LARGE} \\[\smallskipamount]
"\huge" & {\huge huge} \\[\smallskipamount]
"\Huge" & {\Huge Huge}
\end{tabular}
\end{quote}

The above example would be written

\begin{latextext}
This text becomes "{\large "{\large larger}"}" and back again.
\end{latextext}

Notice that with \latex/ the sizes are absolutely specified and not
relatively specified, as with \troff/. 

\cleardoublepage

\appendix

\section{Summary}

This Appendix provides a quick guide to the correspondences between the \ms/
macros (and some raw \troff/ commands) and \latex/ macros. Note that the output
may not have an identical appearance in all cases.

\newenvironment{stack}{\begin{tabular}{l}}{\end{tabular}}
\newcommand{\eoe}{\\[\bigskipamount]}

\begin{em}
\begin{tabular}{|p{0.2\textwidth}|l|l|}
\hline
\bf Purpose 	&	\bf \ms/ macro call &	\bf \latex/ equivalent 
\eoe
\hline \hline
\rm Date	&	".ND" date &	"\date{"date\/"}" \eoe
\hline
\rm Cover Page	&	".RP"	&	"\titlepage" \eoe
\hline
\rm Author	&	\begin{stack}
			".AU" \\
			author
			\end{stack}	&	"\author{"author\/"}" \eoe
\hline
\rm Affiliation	&	\begin{stack}
			".AI" \\
			Institution
			\end{stack}	&	"\thanks{"Institution\/"}" \eoe
\hline
\rm Abstract	&	\begin{stack}
			".AB" \\
	       		\ldots{} abstract \ldots \\
	       		".AE"
			\end{stack}	&	\begin{stack}
						"\begin{abstract}" \\
						\ldots{} abstract \ldots \\
						"\end{abstract}"
						\end{stack} \eoe
\hline
\rm Multi-column formats
		&	".2C"	&	"\twocolumn" \eoe
		&	".1C"	&	"\onecolumn" \eoe
\hline
\rm Section Headings &	\begin{stack}
			".SH" \\
			heading
			\end{stack}	&	"\section*{"heading\/"} " \eoe
		&	\begin{stack}
			".NH" \\
			heading
			\end{stack}	&	"\section{"heading\/"}" \eoe
		&	\begin{stack}
			".NH 2" \\
			heading
			\end{stack}	&	"\subsection{"heading\/"}" \eoe
		&	\begin{stack}
			".NH 3" \\
			heading
			\end{stack}	&	"\subsubsection{"heading\/"}" \eoe
		&	\begin{stack}
			".NH 4" \\
			heading
			\end{stack}	&	"\paragraph{"heading\/"}" \eoe
		&	\begin{stack}
			".NH 5" \\
			heading
			\end{stack}	&	"\subparagraph{"heading\/"}" \eoe
\hline
\end{tabular}

\begin{tabular}{|p{0.2\textwidth}|l|l|}
\hline
\bf Purpose     &       \bf \ms/ macro call &   \bf \latex/ equivalent \eoe
\hline \hline
\rm Standard and Left-Block paragraphs
		&	".LP", ".PP"	&	one, or more blank lines \eoe
\hline
\rm Numbered paragraphs
		&	\begin{stack}
			".IP" n. \\
			Text \ldots \\
			\vdots
			\end{stack}	&	\begin{stack}
						"\begin{enumerate}" \\
						"\item" Text \ldots \\
						\vdots \\
						"\end{enumerate}"
						\end{stack} \eoe
\hline
\rm Bulleted paragraphs
		&	\begin{stack}
			".IP \(bu" \\
			Text \ldots \\
			\vdots
			\end{stack}	&	\begin{stack}
						"\begin{itemize}" \\
						"\item" Text \ldots \\
						\vdots \\
						"\end{itemize}"
						\end{stack} \eoe
\hline
\rm Labelled paragraphs
		&	\begin{stack}
			".IP" label \\
			Text \ldots \\
			\vdots
			\end{stack}	&	\begin{stack}
						"\begin{description}" \
\
						"\item["label\/"]" Text\ldots \\
						\vdots \\
						"\end{description}"
						\end{stack} \eoe
\hline
\rm Quoted paragraphs
		&	\begin{stack}
			".QP" \\
			Text \ldots \\
			\end{stack}	&	\begin{stack}
						"\begin{quote}" \\
						Text \ldots \\
						"\end{quote}"
						\end{stack} \eoe
		&	\begin{stack}
			".QS" \\
			Text \ldots \\
			".QE"
			\end{stack}	&	\begin{stack}
						"\begin{quotation}" \\
						Text \ldots \\
						\vdots \\
						"\end{quotation}"
						\end{stack} \eoe
\hline
\rm Footnotes	&	\begin{stack}
			".FS" \\
			Text \ldots \\
			".FE"
			\end{stack}	&	"\footnote{"Text \ldots"}" \eoe
\hline
\end{tabular}

\begin{tabular}{|p{0.2\textwidth}|l|l|}
\hline
\bf Purpose 	&	\bf \ms/ macro call &	\bf \latex/ equivalent 
\eoe
\hline \hline
\rm Font Styles	&	\begin{stack}
			".R" {\rm Roman} \\
			".I" {\it Italic} \\
			".B" {\bf Bold}
			\end{stack}	&
						\begin{stack}
						"{\rm" {\rm Roman}"}" \\
						"{\it" {\it Italic\/}"}" \\
						"{\bf" {\bf Bold}"}" \\
						"{\sl" {\sl Slanted\/}"}" \\
						"{\sc" {\sc Small Capitals}"}" \\
						"{\sf" {\sf Sans Serif}"}" \\
						"{\tt" {\tt Typewriter}"}"
						\end{stack} \eoe
\hline
\rm Font Sizes	&
			\begin{stack}
			".SM" {\small smaller} \\
			".NL" {\normalsize normal size} \\
			".LG" {\large larger}
			\end{stack} &	
				\begin{stack}
				"{\tiny" {\tiny tiny}"}" \\
				"{\scriptsize" {\scriptsize scriptsize}"}" \\
				"{\footnotesize" {\footnotesize footnotesize}"}" \\
				"{\small" {\small small}"}" \\
				"{\normalsize" {\normalsize normal size}"}" \\
				"{\large" {\large large}"}" \\
				"{\Large" {\Large Large}"}" \\[\smallskipamount]
				"{\LARGE" {\LARGE LARGE}"}" \\[\smallskipamount]
				"{\huge" {\huge huge}"}" \\[\smallskipamount]
				"{\Huge" {\Huge Huge}"}"
				\end{stack} \eoe
\hline
\end{tabular}
\end{em}

\bibliographystyle{alpha}
\bibliography{refs}

\end{document}
SHAR_EOF
if test 17400 -ne "`wc -c < 'ms-latex.tex'`"
then
	echo shar: "error transmitting 'ms-latex.tex'" '(should have been 17400 characters)'
fi
fi
echo shar: "extracting 'sfwmac.sty'" '(1626 characters)'
if test -f 'sfwmac.sty'
then
	echo shar: "will not over-write existing file 'sfwmac.sty'"
else
cat << \SHAR_EOF > 'sfwmac.sty'
% LaTeX support for writing UNIX-style documentation


% UNIX-style references

\def\sfwFILfont{\sl}

\def\@egaux#1#2#3{%
    \def#1##1{%
	#2\begingroup \tt \let\do=\@makeother \dospecials
	\def\@tempa####1##1{####1\endgroup#3}\@tempa
    }%
}

\def\pgm#1{\mbox{\it#1}\index{#1}}	% programs
\def\xpgm#1#2{\mbox{\it#1}\index{\noexpand\noexpand\noexpand#2{}}}
\def\man#1(#2){\xpgm{#1\/}{#1}(#2)}	% manual entries
\@egaux\arg{`{}}{'{}}			% arguments to programs
\@egaux\switch{`{}-}{'{}}		% switches to programs
\def\file#1{\mbox{\sfwFILfont#1}}	% filename


% Commonly used software systems

\def\sfwPGMfont{\tt}

\def\@sfwdef#1#2{\@sfwaux{#1/}{#2}}
\def\@sfwaux#1#2{\def#1{\mbox{#2}\index{\noexpand\noexpand\noexpand#1{}}}}

\@sfwdef\EMACS{\sfwPGMfont EMACS}
\@sfwdef\INFO{\sfwPGMfont INFO}
\@sfwdef\MLisp{\sfwPGMfont MLisp}

\@sfwdef\SendMail{\sfwPGMfont SendMail}
\@sfwdef\UUCP{\sfwPGMfont UUCP}

\def\AmS{$\cal A$\kern-.1667em\lower.5ex\hbox{$\cal M$}\kern-.125em$\cal S$}
\@sfwaux\AmSTeX{\rm \AmS-\TeX}

\@sfwaux\PhDTeX{\rm P\kern-.05em{\sc h\kern-.025em D}\kern-0.08em\TeX}

\@sfwaux\LaTeX{\rm L\kern-.36em\raise.3ex\hbox{\sc a}\kern-.15em\TeX}
\@sfwaux\BibTeX{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em\TeX}
\@sfwaux\SLiTeX{\rm S\kern-.06em{\sc l\kern-.035emi}\kern-.06em\TeX}


\@sfwdef\WEB{\sfwPGMfont WEB}

\@sfwdef\Prolog{\sfwPGMfont Prolog}
\@sfwdef\Lisp{\sfwPGMfont Lisp}

\@sfwdef\DBUG{\sfwPGMfont DBUG}

\@sfwdef\troff{\sfwPGMfont troff}
\@sfwdef\nroff{\sfwPGMfont nroff}
\@sfwdef\Miranda{\sfwPGMfont Miranda}
\@sfwdef\AiM{\sfwPGMfont AiM}
\@sfwdef\ASN{\sfwPGMfont ASN.1}
\@sfwdef\ISODE{\sfwPGMfont ISODE}

SHAR_EOF
if test 1626 -ne "`wc -c < 'sfwmac.sty'`"
then
	echo shar: "error transmitting 'sfwmac.sty'" '(should have been 1626 characters)'
fi
fi
exit 0
#	End of shell archive
-------
