%
% The standard \LaTeX\ document classes are all very well for simple
% documents, but the style isn't appropriate for works like manuals.
%
% The standard \LaTeX\ document classes are all very well for simple
% documents, but the style isn't appropriate for works like manuals.
%
% The document class provides many options, most of which are taken from
% the standard \LaTeX\ classes.
%
% The document class provides many options, most of which are taken from
% the standard \LaTeX\ classes.
%
% In order to facilitate creation of attractively formatted text files
% from \LaTeX\ documents, \strayman\ provides a |text| option. This will
%
% In order to facilitate creation of attractively formatted text files
% from \LaTeX\ documents, \strayman\ provides a |text| option. This will
%
% That's all I'm writing for now. It's a document class. It defines the
% style. What more do you expect?
%
% That's all I'm writing for now. It's a document class. It defines the
% style. What more do you expect?
%
% From here on, a lot of the code is shamelessly borrowed from
% \file{book.cls} and other places. This is what code re-use is for.
%
% From here on, a lot of the code is shamelessly borrowed from
% \file{book.cls} and other places. This is what code re-use is for.
%
% The text sizing is rather messy. We store this in a separate file. To
% keep this stuff away from other classes, we use the file \emph{extension}
%
% The text sizing is rather messy. We store this in a separate file. To
% keep this stuff away from other classes, we use the file \emph{extension}
%
% Our layout is a bit different to the standard \LaTeX\ ones: we leave a lot
% of space down the left hand side: this is reserved for headings and
%
% Our layout is a bit different to the standard \LaTeX\ ones: we leave a lot
% of space down the left hand side: this is reserved for headings and
%
% This part defines the standard page styles. By default, \strayman\
% imports \package{fancyheadings} and uses them, although this section is
%
% This part defines the standard page styles. By default, \strayman\
% imports \package{fancyheadings} and uses them, although this section is
%
% \begin{macro}{\maketitle}
% This is a bit of a thorny issue at the moment. Really, these titles need
%
% \begin{macro}{\maketitle}
% This is a bit of a thorny issue at the moment. Really, these titles need
%
% In \strayman, quite a lot of the sectioning is different. We
% don't tend to number sections much. Also, the chapter heading style has
% been completely rewritten (several times).
%
%
% In \strayman, quite a lot of the sectioning is different. We
% don't tend to number sections much. Also, the chapter heading style has
% been completely rewritten (several times).
%
%
% We start off thinking we're in the main matter. The user ought to put a
% |\frontmatter| command at the beginning of the document if this is not
%
% We start off thinking we're in the main matter. The user ought to put a
% |\frontmatter| command at the beginning of the document if this is not
%
% Part headings are typeset on completely unadorned sheets, devoid of page
% numbers and suchlike. Because of the strange page layout, we have to
%
% Part headings are typeset on completely unadorned sheets, devoid of page
% numbers and suchlike. Because of the strange page layout, we have to
%
% The chapter typesetting has been more-or-less rewritten. We'll follow this
% in a reasonable amount of detail.
%
% The chapter typesetting has been more-or-less rewritten. We'll follow this
% in a reasonable amount of detail.
%
% These are all defined through |\@startsection|. They've been modified
% to typeset sections and subsections hanging into the left margin, and to
%
% These are all defined through |\@startsection|. They've been modified
% to typeset sections and subsections hanging into the left margin, and to
%
% A surprising number of \LaTeX's environments are defined in terms of
% lists, many of which hide the fact by putting the entire text in one big
%
% A surprising number of \LaTeX's environments are defined in terms of
% lists, many of which hide the fact by putting the entire text in one big
% This is largely the same as the standard classes, altered slightly to cope
% with the different paragraph spacing.
%
% This is largely the same as the standard classes, altered slightly to cope
% with the different paragraph spacing.
%
%
% This has been redefined a little to make it more sensible. The old version
% had a weird |\hspace\labelsep| in the labelling macro. This has now been
%
% This has been redefined a little to make it more sensible. The old version
% had a weird |\hspace\labelsep| in the labelling macro. This has now been
%
% Several other standard environments are defined in terms of lists. These
% are all dealt with here.
%
% Several other standard environments are defined in terms of lists. These
% are all dealt with here.
%
% Since raw \LaTeX\ doesn't actually define any floating objects, we have
% to do some of the work here. This isn't actually terribly arduous. For
%
% Since raw \LaTeX\ doesn't actually define any floating objects, we have
% to do some of the work here. This isn't actually terribly arduous. For
% We must also define |\@makecaption|, which typesets a float caption in
% an appropriate way, and an environment for each type of float.
%
% We must also define |\@makecaption|, which typesets a float caption in
% an appropriate way, and an environment for each type of float.
%
%
% We allow the `old' font commands to do sensible \textsf{NFSS} things, since
% we don't have any legacy documents. This means that we have proper
%
% We allow the `old' font commands to do sensible \textsf{NFSS} things, since
% we don't have any legacy documents. This means that we have proper
%
% Because of the strange layout of the pages, text which is centred using
% normal \LaTeX\ commands is centred in the text area, not on the page,
%
% Because of the strange layout of the pages, text which is centred using
% normal \LaTeX\ commands is centred in the text area, not on the page,
%
% The \strayman\ class uses \package{fancyheadings} for its headers
% and footers. This has already been included in the preamble. We now
%
% The \strayman\ class uses \package{fancyheadings} for its headers
% and footers. This has already been included in the preamble. We now
%
% The standard \LaTeX\ |\parbox| command, and the \env{minipage} environment,
% reset |\parskip| to zero, which is inconsistent with the document style.
%
% The standard \LaTeX\ |\parbox| command, and the \env{minipage} environment,
% reset |\parskip| to zero, which is inconsistent with the document style.