% \iffalse meta-comment
%
% Copyright (C) 2002 by John Burt <burt@brandeis.edu>
% --------------------------------------------------
% 
% This file may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.2
% of this license or (at your option) any later version.
% The latest version of this license is in:
%
%    http://www.latex-project.org/lppl.txt
%
% and version 1.2 or later is part of all distributions of LaTeX 
% version 1999/12/01 or later.
%
% \fi
%
% \iffalse
%<package>\NeedsTeXFormat{LaTeX2e}[1997/12/01]
%<package>\ProvidesPackage{poemscol}
%<package>   [2002/06/05 v1.01 poemscol file] 
%
%<*driver>
\documentclass{ltxdoc}
\usepackage{makeidx,multicol,keyval,ifthen}
\EnableCrossrefs         
\CodelineIndex
\RecordChanges
\begin{document}
  \DocInput{poemscol.dtx}
\end{document}
%</driver>
% \fi
%
% \CheckSum{3311}
%
% \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         \~}
%
% 
% \changes{v1.0}{2002/06/05}{Initial version}
% \changes{v.1.01}{20002/06/25}{added macros for titles of poems 
% without formal titles. Corrected typographical errors in manual.}
%
% \GetFileInfo{poemscol.sty}
% 
% \DoNotIndex{\newcommand,\newenvironment,\def,\edef,\else,\renewcommand,\makeatletter,\makeatother}
% \DoNotIndex{\abovedisplayskip,\belowdisplayskip,\abovedisplayshortskip,\belowdisplayshortskip}
% \DoNotIndex{\newcommand, \section, \subsection, \subsubsection,
% \fileversion,} \DoNotIndex{\filedate, \docdate, \leavevmode,
% \vspace, \small, \normalsize, \fontsize,} \DoNotIndex{\newcommand,
% \section, \subsection, \subsubsection, \fileversion}
% \DoNotIndex{\filedate, \docdate, \leavevmode, \vspace, \small,
% \normalsize, \fontsize} \DoNotIndex{\selectfont, \abovedisplayskip,
% \belowdisplayskip, \setlength, \item} \DoNotIndex{\global, \input,
% \def, \edef, \texttt, \textsf, \setcounter}
% \DoNotIndex{\pagenumbering, \oddsidemargin, \evensidemargin,
% \newdimen, \renewcommand} \DoNotIndex{\makeatletter, \let, \@listi,
% \@listl, \z@, \@xpt, \@xipt, \p@ , \@plus2} \DoNotIndex{\@minus5,
% \@minus3, \@plus3, \makeatother, \@minus4, \relax, \pagestyle}
% \DoNotIndex{\fancyhead, \fancyfoot, \thepage, \@ixp}
% \DoNotIndex{\begin \botmark, \botmark, \catcode, \croppadbot,
% \croppadtop} \DoNotIndex{\croppagewidth, \endverse, \equal,
% \fancyfoot, \fancyhead, \fancyhf} \DoNotIndex{\fancypagestyle,
% \firstmark, \footrulewidth, \hbox, \hbox, \headrulewidth}
% \DoNotIndex{\hfil, \hspace, \ifthenelse, \immediate, \itemindent,
% \listparindent} \DoNotIndex{\makeatletter, \nolinebreak, \openout,
% \raggedbottom, \setcounter, \textrm} \DoNotIndex{\value, \vspace,
% \write} 
% \DoNotIndex{\afterpoemtitleskip, \addtocounter, \advance,
% \begin, \bf, \bigskip}
% \DoNotIndex{\bigskipamount, \fi, \@fulltitle, \label, \large, \leftheader}
% \DoNotIndex{\leftheadervalue, \leftmargin, \leftmargini}
% \DoNotIndex{\medskip, \newcounter, \nobreak, \par, \textbf}
% \DoNotIndex{\closeout,\em,\emph,\expandafter,\Huge,\it,\jobname,\kern,\newif,
% \newwrite,\p@,\pageref,\renewenvironment,\rm,\scriptsize,\string, 
% \textsc, \unskip}
% \setcounter{IndexColumns}{2}
% \MakeShortVerb{|}
% \def\fileversion{1.01}
% \def\filedate{25 June 2002}
% \def\docdate{25 June 2002}
% \title{Typesetting Poetry Collections with \textsf{poemscol}\thanks{This document
%   corresponds to \textsf{poemscol}~\fileversion, dated \filedate.}}
% \author{John Burt \\ \texttt{burt@brandeis.edu}}
% \date{June 13, 2002}
% \maketitle
% \begin{abstract}
%  \textsf{poemscol} provides macros for \LaTeX\ for setting 
% collections of poetry. It is especially suited for setting collections 
% of poetry in which several volumes are combined, such as in a 
% critical edition of a poet's Collected Poems. It provides the structures 
% required to produce a critical edition of the kind specified by the 
% Modern Language Association's Committee on Scholarly Editions, and it 
% automatically marks every occasion where a stanza break falls on a 
% page break.
% \end{abstract}
% \tableofcontents
% \hfuzz=50pt
% \section{Introduction}
% 
% \textsf{poemscol} provides the structures necessary for editing a
% critical edition of a volume of poems or of a collection of a poet's
% works.  \textsf{poemscol} numbers the lines, and produces separate,
% formatted endnote sections for emendations, textual collations, and
% explanatory notes, tying each note the number of the line upon which
% it is a comment.  It also automatically generates a table of
% contents, an index of titles and first lines, and divider pages for
% the sections of the volumes.  It produces running headers of the
% form ``Emendations to pp.~xx-yy'' for the note sections.  And it
% marks occasions when a stanza break falls at a page break.
% 
% Producing line numbers for verse is something for which \LaTeX\
% would seem to be especially suited.  A line of verse, after all, is
% not a carriage return but a logical unit, perhaps running over
% several physical lines, or perhaps split into half-lines as speakers
% or subjects change.  With \textsf{poemscol} you mark lines,
% stanzas, and entire poems up as logical units, and \LaTeX\ does your
% formatting, and your counting, for you.  Once you have marked out
% the logical units of the poem, \textsf{poemscol} will take care of
% the line numbering, and will automatically mark every textual note,
% emendation, or explanatory note with the line number.  
% 
% One advantage of this kind of markup is that even if the appearance
% of the poem on the page may be ambiguous, the editor's intentions
% about the logical structure of the poem will be preserved in the
% \LaTeX\ source.  \textsf{poemscol} is designed so that even readers
% who know no \LaTeX\ can understand your intentions by examining your
% markup.  By manipulating penalties and designing commands even for
% relatively unusual circumstances, \textsf{poemscol} attempts to make
% the it possible for your source files to contain markup that is
% almost entirely content-based, marking the nature of the poetic
% objects to be set, with only a little markup of an explicitly
% typographical character.  If the content of your volume changes
% (say, you add or delete poems), \textsf{poemscol} will adjust, so
% that you (probably) will not have to change any formatting to
% produce satisfactory text output, notes sections, and tables of
% contents.
% 
% In poetry which does not have a regular stanzaic form, it is useful
% to be able to mark automatically occasions where there is a stanza
% break at the bottom of a page which the reader might not notice. 
% Doing this by hand is not only tedious and easy to get wrong, but
% also a process you will have to start over again if anything about
% your volume changes, if you add a poem, say, or even decide to break
% a title across two lines.  \textsf{poemscol} takes care of this
% process, so that the editor need never worry about it, automatically
% marking cases where the page break coincides with a stanza break
% with a symbol.  Even if you introduce a global change (such as
% changing the amount of white space between stanzas),
% \textsf{poemscol} will still be able to mark every case where a
% stanza break falls on a page break.
% 
% Editions of Collected Poetry might also require special structures
% to reflect the fact that they are made up of the contents of several
% volumes of poetry.  In particular, such editions require special
% structures for setting up specially formatted divider pages between
% volumes. They also require tables of contents and other front matter. 
% \textsf{poemscol} provides these structures.
% 
% The best features of \textsf{poemscol} are of course simply that it 
% is \TeX: it uses \TeX's automatic kerning and setting of ligatures, 
% its algorithm for justifying lines (in prose sections), and \LaTeX's 
% intelligent way of setting verse.
% 
% Using \LaTeX\ to typeset critical editions offers more advantages
% than simply the ability to automate tedious and easy to fumble
% tasks.  Most modern \TeX\ compilers have the ability to produce
% output in Adobe pdf format.  Adobe pdf output can be used as camera
% ready copy (which is why \textsf{poemscol} adds cropmarks), saving
% your publisher time and expense, and perhaps making a marginally
% economic critical edition a bit easier to bring to press. 
% Furthermore, since typesetting the edition yourself in \LaTeX\
% obviates the publisher's own typesetting of your text, it removes
% another possible source of new errors.  (You should expect to work
% with your publisher on the final design of the book, but \LaTeX\ is
% a flexible language which will enable you to reproduce most book
% designs.)  Since your \LaTeX\ sources for your edition are in ASCII,
% they provide a permanent record of your local intentions at every
% point in your edition, whether or not those who wish to consult your
% files have access to a \LaTeX\ compiler, or indeed whether or not
% they can read \LaTeX code.  (I have tried to design the markup so
% that it will even be intelligible to people who know very little
% about \LaTeX.) Finally, although \LaTeX\ is a typesetting language,
% not a content markup language, the ability to create new commands
% which the language offers comes very close to enabling one to
% realize the ideal of completely separating content markup from
% formatting.  Should you wish later to produce an electronic edition
% of your work, either using XML or the SGML markup approved by the
% Text Encoding Initiative, transforming your texts from \LaTeX\ to
% XML would largely (although not entirely) be a matter of performing
% a series of global search-and-replaces, and could conceivably be
% done with a perl script.
% 
% \textsf{poemscol} is designed for typesetting lyric and narrative
% poetry.  With a certain amount of fiddling, it could be modified to
% typeset dramatic verse, although it doesn't provide markup for the special
% structures for drama (stage directions, speech tags, act and scene
% environments, and so on) right now.  There are, however, \LaTeX\
% style files and class files with all of the structures for
% typesetting drama available on the Comprehensive \TeX\ Archive
% Network (CTAN --- see http://www.tug.org for details), and there is
% no reason to assume that \textsf{poemscol} could not work in
% conjunction with them.  (That is one reason why \textsf{poemscol} is
% a style file rather than a document class.)  \textsf{poemscol} is
% not, however, suited for typesetting prose if one seeks to annotate
% that prose by line number (as in critical editions of prose works),
% although of course it can typeset prose works if one wishes to use
% conventional endnotes or footnotes, and it can handle inset prose 
% passages in the midst of verse as well.  For critical editions of prose
% works, the reader would be best advised to use the \texttt{EDMAC}
% format, a \TeX\ format analogous to but distinct from \LaTeX, by
% John Lavagnino and Dominik Wujastyk. Because \texttt{EDMAC} is known 
% to break a number of \LaTeX\ structures, I assume that \texttt{EDMAC} 
% and \textsf{poemscol} cannot work together. But it is possible that 
% \textsf{edmacfss}, a \LaTeX\ style with many of the features of 
% \texttt{EDMAC}, will work with \textsf{poemscol}.
% 
% \section{Dependencies}
%
% \textsf{poemscol} depends upon several other packages, which you
% should be sure you have in your search path: \textsf{fancyhdr} for
% managing the running headers, \textsf{makeidx} and \textsf{multicol}
% for managing the index, \textsf{geometry}, \textsf{ifthen} and
% \textsf{keyval} to simplify page geometry, \textsf{newcropmark} to add
% crop marks, and \textsf{newmarn} to fix a problem with the way
% \LaTeX\ handles the marginal line numbering. You should make sure 
% that \textsf{poemscol} is the very last package you load in your 
% preamble, or at least is loaded after those packages upon which it 
% depends.
% 
% \subsection{A note about cropmarks}
% \textsf{newcropmarks} despite its name, is completely obsolete, and I only 
% include it so that you can produce exactly the output I had. (It's 
% an old, generic \TeX\ macro that I only slightly monkeyed with.) If you 
% don't include the \textsf{newcropmarks} package, \LaTeX\ won't complain, and 
% you can use a more modern crop marks package, such as \textsf{crop}.
% 
% \subsection{A note about marginal notes}
% \textsf{newmarn} is Donald Arseneau's \textsf{marn} package, which 
% I deliberately broke so that it would only put marginal notes in the
% left margin (as my publisher desired), even with twosided output.  If
% you want to put numbers on alternate margins on alternate pages
% (usually the outside margin), use \textsf{marn} instead.  
% \textsf{marn} is obsolete, but its replacement, \textsf{mparhack}, 
% doesn't work with \textsf{poemscol}
% 
% \section{Marking up individual poems}
% First, a word about the command names. The command names may seem 
% ugly and long. And there are separate commands for many tasks that 
% seem closely related, such as a command to mark the title of a 
% section of a poetic sequence, and a separate command to mark a 
% subsection. But the names do describe pretty much what
% each macro does, and they do specify exactly what the object they 
% mark is supposed to be.  The idea is that all of the real typesetting and
% formatting can be done by the style package files, by \textsf{poemscol}. 
% In the actual body of the edition, the markup should look like content
% markup, marking objects as a poem title, as a stanza, as a line, and so on. 
% \textsf{poemscol} gives all of these content terms typographical
% meaning.  Although what this package provides is a set of typesetting
% macros, not content markup in the manner of SGML, I have designed the
% macros to resemble content markup as much as possible. 
% 
% There are also many commands for special purposes whose necessity
% may not seem clear until the editor finds him or herself in the jam
% the command was designed for.  If, for instance, a long poem has
% several sections whose titles are only roman numerals, the ordinary
% |\poemsectiontitle{}| command may be inadequate, since there may be
% other poems in sections that do the same thing, and
% |\poemsectiontitle{}| will confuse the cross-references
% \textsf{poemscol} uses to set the page numbers that refer to the
% section in the textual notes.  The |\poemsectiontitlenocontents{}{}|
% macro below solves this problem by having two arguments, the first
% for the section title, and the second for the poem title, so that
% every section simply titled ``III'' will have a unique cross
% reference.
% 
% \subsection{The title of the poem}
% 
% \DescribeMacro{\poemtitle}|\poemtitle{}|, as its name implies, sets
% the title of the poem.  \textsf{poemscol} gives default values for
% such things as the font size, the separation between the top of the
% title and the bottom of the previous poem, the separation between
% the bottom of the title and the first line, and so on.  It also sets
% penalties in order to encourage page breaks just before a title, and
% to discourage page breaks between a title and a poem.  You can
% change all these values in your header file by changing the value of
% the parameters listed below in the implementation section using
% either |\setlength| or |\renewcommand| (depending upon what you are
% changing).  |\poemtitlefont| globally sets the font size (and
% leading) for all poem titles in the main text. 
% |\contentspoemtitlefont| globally sets the font size (and leading)
% for poem titles in the table of contents.  |\afterpoemtitleskip|
% sets the vertical separation between a poem and its title. 
% |\afterpoemskip| sets the vertical separation between the end of a
% poem and the title of the next poem.  |\poemtitlepenalty| encourages
% but does not require a page break just before a poem title.  A
% complete list of all of the special commands for setting font sizes,
% skips, and penalties, is in section 13.3 below.
% 
% In the actual text of the poem, you need only use the |\poemtitle{}|
% macro to specify the title of the poem.  The macro takes one
% argument --- the title, of course.  The macro typesets the title in
% the body of the volume (testing first to see whether there is enough
% space at the bottom of the page to get the title and a couple of
% lines of the poem in), typesets the title in the table of contents
% (with the page number), typesets the title in the textual notes
% (adding the page number, and checking to see whether there is room
% enough on the page), and prepares similar entries in the lists of
% emendations and in the explanatory notes (if you need them).  Titles
% with italics, multiple line titles, titles of subsections of poems,
% titles of sequences of poems, and titles of the elements of a
% sequence of poems are all special cases, which will be dealt with
% below.
% 
% \DescribeMacro{\poemsubtitle} Subtitles of poems should be issued as 
% the arguments to the |\poemsubtitle{}| macro.
% 
% \DescribeMacro{\titleindent} For indented parts of titles. In the 
% macros for setting the sections and subsections of poetic sequences, 
% \textsf{poemscol} uses |\titleindent| internally to set up a 
% hierarchy of indentations. (A section of a sequence is indented one 
% |\titleindent|. A subsection is indented two. And so on.)
% 
% \subsection{The body of the poem}
% 
% \DescribeEnv{poem} The body of every poem should be placed in a poem
% environment.  Putting the body of the poem between |\begin{poem}|
% and |\end{poem}| resets the line counter to 1, and puts the poem in
% a |\verse| environment (to handle run over lines automatically). 
% \textsf{poemscol} slightly modifies the |\verse| environment from
% the standard \LaTeX\ definition, increasing the indentation used for
% run over lines, in order to make the difference between the indented
% run over portion of a long line, on one hand, and an explicitly
% indented second line, more obvious in the output.
% 
% \textsf{poemscol} turns off automatic hyphenation in poetry
% environments.  The idea here is that every hyphen in the printed poem is
% authorial, obviating the need for you to compile a hyphenated-lines
% list to distinguish between authorial hyphens and hyphens you added
% for lineation purposes.  (You may wish to change this for your own
% edition, in order to improve its look; but if you do so you must
% keep track of added hyphens yourself.  This list will be easy to
% compile, however, because only authorial hyphens will appear in your
% source code.  Automatically added hyphens will appear only in the
% output.  You might even modify the output routine so that
% automatically added hyphens have a different look. That would be 
% non-trivial, but Donald Knuth has an exercise about doing just that in 
% \emph{The \TeX book}.)  \textsf{poemscol} turns automatic hyphenation back on
% in prose contexts, so if you wish to keep a hyphenation list for
% such things as authorial prefaces and so on, you must do so yourself
% manually.  (Alternatively, you can turn automatic hyphenation off in
% those contexts as well, by setting the |\language| to 255.  For an
% example of how to do this, look at the definition of the |\poem|
% environment in the implementation section below. If you do turn 
% automatic hyphenation off, it would be wise to restrict the change to 
% some particular environment, rather than changing the |\language| 
% globally.)
% 
% \DescribeEnv{stanza} Every stanza should be placed in its own stanza
% environment.  Every poem should have at least one stanza.  Marking
% the beginning and end of every stanza (with |\begin{stanza}| and
% |\end{stanza}|) provides \textsf{poemscol} with a way of detecting
% cases in which a page boundary falls on a stanza break, since in
% those cases a page turn happens when one is \emph{inside} a poem
% environment but \emph{not} inside a stanza environment.  Further,
% marking the beginning and end of every stanza makes the logical
% structure of the poem (and the editor's intentions about it) clear
% to readers of your source code.  \textsf{poemscol} adds a little bit
% more white space between stanzas than the standard \LaTeX\ |verse|
% environment does.  (I found that the standard stanza breaks did not
% leap out on the page as stanza breaks.)
% 
% \DescribeMacro{\verseline} |\verseline| should mark the end of every
% line, except the last line of every stanza (which should be marked
% with |\end{stanza}|.  |\verseline| marks the end of every line as a
% prosodic unit (since a line of verse is not simply a carriage
% return), and advances the line counter.  There are commands below
% for changing the line counter's horizontal placement (how close it
% is to the left margin of the line) and appearance.  (You can change
% a great deal more by changing the values used by the \textsf{marn}
% package.  For instance, you can change from left numbering to right,
% ``outside,'' or ``gutter'' numbering.)  To change how often the
% marginal line number appears (the default is every 10 lines), you
% need to change the value of a counter called |\lineindexrepeat|.  To
% change |\lineindexrepeat| to print a line number every five lines,
% issue |\setcounter{lineindexrepeat}{4}| in your preamble.  To turn
% marginal line numbering on (default is on), issue |\makelinenumbers|
% in your preamble.  To turn line numbering off, issue
% |\global\linenumbersfalse|.
% 
% \subsection{Special features}
% \DescribeMacro{\linebend} \textsf{poemscol} automatically runs over
% long lines, indenting the run over portion on the next physical
% line.  If you are unhappy with where \textsf{poemscol} has run over
% a particular line, you can ``bend'' that line by issuing |\linebend|
% at the point where you wish it to run over.  The run over portion of
% the line will be indented just as if \textsf{poemscol} had ``bent''
% the line at your selected point.  This command only works if you
% have chosen to bend the line at some point earlier than
% \textsf{poemscol} would have chosen on its own.  If you really do
% want to extend a line further into the right margin, you can
% probably do so by using a combination of |\nobreak| and |\hbox{}|,
% or by turning all of the spaces in that line into unbreakable
% spaces, marked with |~| in your source.  But \textsf{poemscol} will
% complain if you do this, and rightly so, since the result is likely
% to be ugly.
% 
% You may also wish to use |\linebend| to reproduce how your author broke up
% long lines on the page (if you know that your author cared about
% such things and did not leave them up to the typesetter).
% 
% I have not yet figured out how to right flush the run over
% portions of long lines instead of indenting them, but I am sure it can
% be done.  
% 
% |\linebend| should only be used for managing run over lines, not for
% cases in which a line is to be broken into separate half-lines.  For
% cases in which a line is to be broken into half-lines, use the
% |\brokenline| macro.  The two macros do similar (but not identical)
% things.  But a ``linebend'' is a feature of typesetting, and a
% ``broken line'' is a feature of versification, and it seems best to
% distinguish them logically. (|\linebend|, like |\brokenline|, issues 
% a carriage return without incrementing the line number, but 
% |\linebend| adds indentation to the next line.
% 
% To change the indentation for run over lines globally, go to the
% description of the |\verse| environment in the implementation section
% below and change the two places where a length is defined as 6 em. 
% Rather than modify \textsf{poemscol} itself you might just copy and
% modify (with |\renewcommand|) the definition of the verse
% environment below and add the new definition to your preamble.  Be
% sure to add |\makeatletter| just before and |\makeatother| just
% after the redefinition, or \LaTeX\ will stop and complain about the
% ``at'' signs.  
% 
% If you globally change the amount of indentation for run over
% lines in the |\verse| environment, you should use |\renewcommand| to
% change the amount for the |\linebend| macro as well, since it
% indents the portion of the line after the ``bend'' by the same
% amount that the |\verse| environment itself uses for the run over
% portion of bent lines.  For example, to change the run over
% indentation to 4 em for ``line bends,'' issue
% |\renewcommand{\linebend}{\\| \\ |\hspace{4em}|.
% 
% 
% \DescribeMacro{\verseindent} The |\verseindent| command is to be
% used for formally indented lines. It should not be used to indent 
% the run over portion of long lines (which \textsf{poemscol} handles 
% automatically anyway).  |\verseindent| indents the line a bit less
% than the run over portion of long ``bent'' lines are indented, so 
% that the two cases can be visually distinguished. 
%  
% 
% \DescribeMacro{\brokenline}
% \DescribeMacro{\versephantom}|\brokenline| should be used where you
% wish to break the line without incrementing the line counter. 
% Authors often break a line into two half-lines, setting the
% beginning of the second half-line flush with the end of the first
% half-line.  (Sometimes these broken lines indicate a change of
% speaker.  Sometimes they just indicate a change of subject, usually
% an abrupt one, a change which calls attention to itself by
% interrupting a line rather than waiting for a line break or stanza
% break).  |\brokenline| is normally used with |\versephantom{}|,
% which adds white space exactly as long as its argument would have 
% been had it been set in type. |\versephantom{}| thus provides an easy 
% way of setting the beginning of the second half-line flush with the 
% end of the first, whatever the font size or special formatting of the 
% first line.
% 
% The sestet of Yeats's sonnet ``Leda and the Swan,'' has such a broken 
% line: 
% \begin{verse}
% A shudder in the loins engenders there\\
% The broken wall, the burning roof and tower\\
% And Agamemnon dead.\\
% $\phantom{And Agamemnon dead.~}$ Being so caught up,\\
% So mastered by the brute blood of the air,\\
% Did she put on his knowledge with his power\\
% Before the indifferent beak could let her drop?\end{verse}
% 
% To set the broken line properly, issue:
% \begin{verse}
% 	And Agamemnon dead.|\brokenline|\\
% 	|\versephantom{And Agamemnon dead.}| Being so caught up,|\verseline|
% 	\end{verse}
% 	
% 	\DescribeMacro{\stanzalinestraddle}
% 	Some poets (such as Robert Penn Warren) occasionally introduce a 
% stanza break in the middle of a broken line, considering the line to 
% be a single metrical unit despite the fact that it straddles a stanza 
% break. To record these cases, mark the end of the first half-line 
% with |\end{stanza}| as usual. But instead of opening the next stanza 
% with |\begin{stanza}| issue |\stanzalinestraddle| instead. This will 
% make sure that the line counter counts the straddling line as only one 
% line, despite the stanza break. |\stanzalinestraddle| is usually used 
% with |\versephantom{}|.
% 
% \section{Making a table of contents}
% \DescribeMacro{\makepoemcontents} To make a table of contents for your 
% poems, issue |\makepoemcontents| in your preamble. Information for 
% your table of contents will be written to an external file with the 
% extension .ctn. You will need to run your book through \LaTeX\ twice 
% in order to generate a table of contents, the first time to generate 
% the correct page numbers, and the second time to set the table of 
% contents. (Under some circumstances --- if you have an index, for 
% instance --- you may need three passes rather 
% than two.)  
% 
% There are several ways of handling this external file.  One way is
% to generate the contents file by running your file through \LaTeX\
% once, and then to run \LaTeX\ again, this time reading the contents
% file back in with an |\input| command.  One can print the contents
% in the proper place simply by issuing an |\input| command in the
% right place in one's driver file on one's second or final run, as
% for example |\input{mypoems.ctn}|.  (You may also need to adjust the
% page number for the contents with |\setcounter{page}| just before
% the |\input|.)  If you do wish to read in the contents file at the
% proper place, be sure that the |\input| command is commented out for
% the first run, or you will get a series of very bad error messages. 
% Be sure as well that you comment out the |\makepoemcontents| line on
% the final run, so that you don't overwrite the contents file you
% have just made with a new (empty) one.  Finally, be sure that the
% |\input| occurs in some context where the page numbering is in small
% roman numerals and be sure to reset the page counter with
% |\pagenumbering{arabic}| and |\setcounter{page}{1}| when you get to
% the body of your poems.
% 
% Alternatively, you can take the easy way out and issue the |\finish| 
% command just before your |\end{document}|. |\finish| turns automatic 
% hyphenation back on, closes and reads back in the external files for 
% the emendations, the textual collations, and the explanatory notes 
% (setting them in small type), sets the index of first lines and 
% titles, puts the information about these sections in the table of 
% contents, closes the external file for the contents, and reads it back 
% in. The only disadvantage of this method is that you print the book 
% with the contents at the end, so when you print it you must retrieve 
% the contents pages and put them in the proper place. I found the 
% convenience worth the hassle, but you might not.
% 
% If you use |\finish| be sure to comment it out on the first run. You 
% will get an error message if you don't (because it is asking for 
% numbers that are only defined in the .aux file). If you do get this 
% error message, don't worry. Just run \LaTeX\ again. You will have 
% made that .aux file on your first run anyway.
% 
% If you don't use the |\finish| macro, you will have to use |\input| 
% for all of the various notes sections. You should be sure to use 
% |\literalcontents{}| (described below) to send the page label 
% information for the notes sections to the contents file.
% 
% All of the commands that generate lines in the table of contents are
% somewhat messy and somewhat rigid.  In the long run, I plan to
% change them to enable them to make use of the table of contents
% structures \LaTeX\ usually employs.
% 
% \section{Making an index of titles and first lines} To set up the Index
% section of your volume, issue |\indexingontrue| in your preamble. 
% This will create the external file for your index information and
% send that file the typesetting information for its title.  You must
% process this external file (the .idx file) with MakeIndex and run
% your book through \LaTeX\ again in order to set a properly organized
% and formatted index.  MakeIndex sorts the various multi-level
% ``index cards'' generated by all of the |\index| commands in your
% source files.  Once you have processed your .idx file with
% MakeIndex, and generated the sorted and formatted .ind file for your
% book, the |\printindex| command will insert the typeset index where
% you issue it.  
% 
% Alternatively, |\finish|, which I describe below, will include the
% (formatted) index (if it is ready) and send the proper information
% about the index to the table of contents.  \textsf{poemscol} sets up
% a two-column index with a simple running header.  (Setting up a
% two-column index, however, requires that you include the
% \textsf{multicol} package in your |\usepackage{}| list.)  To turn
% indexing off, issue |\global\indexingonfalse|.  If you don't use
% |\finish| to read the index in, you will have to be sure to send the
% contents information about the index to the contents file.  The
% |\index| environment will automatically record the page for the
% index.  To enter the page number for the index section into the
% contents (if you don't use |\finish|), issue \begin{verbatim}
% \immediate\write\poemcontents{\string~ / \string~\ 
% \string\pageref{indexpage}\string\par} \end{verbatim} immediately
% after issuing |\printindex|.  (This command writes its argument on
% the external file for the contents.  Since you want the command just
% to write out the names of the commands in the argument (such as
% |\pageref|) on the external file rather than interpreting them as
% commands, you specify that what follows is not a command but a
% string with |\string|.  Hence all of the funny business with the
% |\string| command.  When the contents file is read back in, all
% those strings turn into the commands that will be needed to set a
% contents line that will look like all the other contents lines. 
% This may be a little more (messy) \LaTeX\ than you need to know
% right now, but I include it just for the curious.)
% 
% Enter the individual index entries in the poems as you normally
% would for use by MakeIndex (say, after each title and first line).  One of
% the nice features of MakeIndex is that every entry has two parts,
% one for specifying the sort key of the entry (or subentry), the other
% for specifying the font and typesetting information of the entry (or
% subentry).  This enables you to drop all of the initial uses of
% ``the'' in titles for sorting purposes, while still including the
% ``the'' in the title.  It also enables you to distinguish titles
% from first lines (by italicizing them), and to include typesetting
% information (such as italicization) in titles or first lines without
% messing up their sort order.  
% 
% \section{Collections with multiple volumes}
% \DescribeEnv{volumetitlepage} \DescribeEnv{maintitlepage}
% The |\volumetitlepage| environment is an
% environment for divider pages in collections made up of several
% volumes.  Volume title pages will always appear on recto pages. 
% \textsf{poemscol} will automatically create a blank verso page
% preceding the volume title page if it necessary.  The
% |\maintitlepage| environment is for the title page of the whole
% book.  The main title page will also automatically always be on a
% recto page. These divider pages have special
% page styles, with no page numbers and no running headers.
% 
% \DescribeMacro{\wholebooktitle} \DescribeMacro{\volumetitle}
% \DescribeMacro{\volumetitlefirstline}
% \DescribeMacro{\volumetitlelastline} \DescribeMacro{\volumesubtitle}
% \DescribeMacro{\volumesectiontitle} |\wholebooktitle{}| is for the
% title of the entire collection.  The |\volumetitle{}|,
% |\volumetitlefirstline{}|, and |\volumetitlelastline{}| macros are
% for the titles of volumes gathered into the collection.  (The last
% two commands are for long titles.  You may want to specify how a
% long title is broken up both in the text and in the table of
% contents.)  |\volumesubtitle{}| is for setting the subtitle to a
% volume.  |\volumesectiontitle{}| is for setting the title of a
% section of a volume.  In addition to setting the text in the body of
% your edition, these commands send the title (and the formatting
% information about it) to the table of contents file and to the
% textnotes file.
%
% \DescribeMacro{\volumeepigraph}
% \DescribeMacro{\volumeattribution}
% \DescribeMacro{\volumeheader}
% \DescribeMacro{\leftheader} 
% |\volumeepigraph{}| and
% |\volumeattribution{}| are for epigraphs and attributions on the
% divider pages.  |\volumeheader{}| is the right running header for
% that volume (except for divider pages, the table of contents, the
% notes sections, and other special cases). Normally that is just the 
% name of the particular volume. |\leftheader{}| is the
% left running header for the entire book (except for divider pages,
% the table of contents, the notes sections, and other special 
% cases). Normally that is the name of the entire book. 
% 
% \section{Recording textual notes}
% \subsection{Setup for sections for textual notes, emendations, and
% explanatory notes.} 
% \DescribeMacro{\makeemendations}
% \DescribeMacro{\maketextnotes}
% \DescribeMacro{\makeexplanatorynotes}
% \textsf{poemscol} puts all of the emendations, textual collations,
% and explanatory notes in the backmatter of your volume. 
% \textsf{poemscol} opens external files for emendations, textual
% collations, and explanatory notes (with extensions .emd, .ent, and
% .enx respectively), and reads them back in at the place you specify 
% with an |\input| command or at the end (if you use the |\finish| 
% command).
%  
% To collect emendations, issue |\makeemendations| in your preamble. 
% To collect textual collations, issue |\maketextnotes| in your
% preamble.  To collect explanatory notes, issue
% |\makeexplanatorynotes| in your preamble.  These commands set up the
% external files, send to them the commands for typesetting the
% title of each section (e.g. Explanatory Notes) and modifying the
% running headers of the notes sections to xx--yy format (e.g.
% ``Explanatory Notes to pp.~55--7'').
% 
% 
% Issuing |\textnotesatfoot| will set the textual collations as
% footnotes, using the line number as the footnote number.  It should
% be possible to set the emendations and the explanatory notes as
% separate sets of footnotes, but I haven't done that.
% 
% 
% \textsf{poemscol} opens an entry (headed with the title and page of
% the poem in the text) in the textual notes section for every poem
% (since, minimally, you want to include information about the
% variants and copy text of the poem), but only opens entries in the
% emendations or explanatory notes sections if you actually have
% emendations or explanatory notes on that poem.  The notes for each
% poem are set in a block paragraph, with a new paragraph for every
% |\poemtitle| command, and the line counter for the notes is reset to
% 1 with every |\begin{poem}|.  (For long poems in books or cantos, it
% would be wise to use |\poemtitle| for the canto names or numbers,
% setting the volume title in some other way, perhaps with
% |\volumetitle| described above.)
% 
% \subsection{Textual notes of various kinds}
% \DescribeMacro{\sources} To record information about the copy text, editions and 
% publication history of individual poems, or any information not tied to 
% specific lines in the poem, you should place that information in the 
% argument to the |\sources{}| macro. Typically, you should issue this 
% macro after you have issued |\poemtitle{}| and before you issue 
% |\begin{poem}|. If you wish to send information to the textual notes 
% file (such as to force a page break), you can do so by using 
% |\sources{}|. You can send typesetting information to other sections 
% by using |\literalemend{}|, |\literalexplain{}|, or |\literalcontents{}|. 
% {There is also a |\literaltextnote{}| command, which is equivalent to 
% |\sources{}|. 
% 
% \DescribeMacro{\textnote}
% \DescribeMacro{\sameword}
% \DescribeMacro{\missingpunct}
% \DescribeMacro{\emendation}
% \DescribeMacro{\explanatory}
% 
% |\textnote{}| is used to capture variants and tie them to the
% correct line number.  You don't have to count line numbers. 
% \textsf{poemscol} keeps track of them for you.  Issue |\textnote{}|
% immediately after the |\verseline| command which marks the ending of
% the line you wish to comment upon.  Put the text of your note (which
% may be simply the recording of a variant in standard notation) into
% the argument of the macro.  You should put both the lemma and the
% variants or comment in the argument to the |\textnote{}| macro.  To
% put the $\sim$ glyph in your note (used for recording places where
% the variant and the copy text have the same word, as for instance
% when recording a variation of punctuation) use |\sameword|.  To put
% the ${}_{\wedge}$ glyph into your text (used for recording places
% where a punctuation mark is missing in a variant), use
% |\missingpunct|.
% 
% |\emendation{}| and |\explanatory{}| are used exactly as |\textnote{}| 
% is. Issue the emendation or the explanatory note as the argument to 
% the command. Place the command immediately after the |\verseline| that 
% concludes the line to which it is a comment. 
% 
% If you quote verse \emph{within} a textual note, an explanatory note, or an
% emendation, you may want to use the normal \LaTeX\ markup for verse
% for that quotation, rather than the special markup for
% \textsf{poemscol}.  \textsf{poemscol} will not complain about this.
% 
% If a textual note \emph{ends} with a quotation in verse, you should
% follow the |\textnote{}| entry with
% |\quotedversecorrectiontextnote|. \goodbreak
% |\quotedversecorrectionexplanatory| and
% |\quotedversecorrectionemendation| should follow explanatory notes
% or emendations that end with snippets of verse.  These three
% commands are an embarrassing kludge on my part.  I found that if I
% quoted verse in the note sections a dirty trick I used to send the
% notes to the external files would cause the following notes on that
% poem in the notes sections to be set in a new paragraph.  (This is
% of course not a problem if the quoted verse is the last thing in the
% notes to that poem, since the next poem will open a new paragraph in
% the notes anyway.  It is also not a problem if more of the
% individual textnote follows the verse.  It's only a problem if the
% last thing in the note is quoted verse, and it's not the last note
% on the poem.)  These three commands simply send commands to the relevant
% note sections that prohibit opening a new paragraph.  You should
% issue this command right after the close of the textnote (not in the
% text of the textnote itself). 
% 
% \DescribeMacro{\accidental} |\accidental{}| behaves exactly like 
% |\textnote{}|. If you wish to distinguish between accidentals and 
% substantives, this provides a way of doing so. If you wish to include 
% these accidentals in your textual collations, issue 
% |\global||\includeaccidentalstrue| in your preamble. 
% 
% \textsf{poemscol} does not provide for a separate backmatter section
% for accidentals, but it would be trivial to construct one, creating
% a |\makeaccidentals| command on the analogy with |\maketextnotes|
% and redefining the |\accidental{}| macro to divert its output into a
% new, separate external file.  
% 
% If you wish to exclude accidentals from your printed output, but to
% mark them in your source files, so that your published collation
% consists only of substantives, issue
% |\global\includeaccidentalsfalse| in your preamble.  Many publishers
% are reluctant to publish accidentals, believing that they are, well,
% less substantive than substantives.  Using the |\accidental{}| command
% allows you to exclude accidentals from the published version should your
% publisher insist, while preserving the information about them should the
% publisher's mind change.  In the very worst case, if you have marked
% all the accidentals in this way you can still produce a list of
% accidentals for later use, and other scholars can search for 
% accidentals in your source files simply by searching for the string 
% |\accidental|.
% 
% 
% \DescribeMacro{\tsvariant}
% \DescribeMacro{\tsentry}
% If you wish to distinguish between published variants and typescript, 
% man\-u\-script, or galley variants, this provides a way of doing so. If you wish to include 
% these variants in your textual collations, issue 
% |\global||\includetypescriptstrue| in your preamble, in which case 
% |\tsvariant{}| will behave exactly like |\textnote{}|. 
% 
% To exclude typescript variants, issue
% |\global\includetypescriptsfalse| in your preamble.  (Some
% publishers may turn up their noses at typescript variants in just
% the way they turn up their noses at accidentals.)  
% 
% \textsf{poemscol} does not provide for a separate backmatter section
% for typescript variants, but it would be trivial to construct one,
% creating a |\maketypescripts| command on the analogy with
% |\maketextnotes| and redefining the |\tsvariant{}| macro to divert
% its output into a new, separate external file.
% 
% If you wish to include typescript entries in a single note including
% those entries in a list with variants from other published versions
% (as for instance when a comma appears in a typescript but only in
% the second edition of the published poem), simply issue
% |\textnote{}| as usual, marking the relevant variant in the list of
% variants with the |\tsentry{}| macro.  If
% |\global||\includetypescriptstrue| appears in your preamble, the
% entry will be included in that textual note.  If typescript variants
% are excluded, the typescript entry will also be excluded.  You can
% mark individual variants with |\tsentry{}| in the arguments to the
% |\explanatory{}| and |\emendation{}| commands as well.
% 
% Here is a typical use of the |\tsentry{}| command:
% \begin{verbatim}
% Of moonlit desert. A stallion, white and flashing, slips,\verseline
% \textnote{Of moonlit] Of the moonlit {\em NY\/}\tsentry{\unskip, SP85TS 
% (revised in black pen to SP85)}}
% \end{verbatim}
%  
% Notice that since the |\tsentry{}| comes in the middle of the list, 
% it begins with a comma. The |\unskip| command is there to prevent 
% \LaTeX\ from adding white space before the comma. It is a bit of a 
% kludge, and it adds formatting information to what I had hoped to 
% make purely content markup. But not every |\tsentry{}| begins with a 
% comma, so one will just have to remember to add the kludge.
% 
% \section{Pulling it all together} \DescribeMacro{\finish} The
% |\finish| macro is one you will undoubtedly wish to modify.  It is
% designed to be placed just before |\end{document}| (which, in fact,
% it replaces --- but you should still put an |\end{document}| at the
% end of your document for form's sake).  |\finish| closes the
% external files for the three notes sections and reads them back into
% the document (turning the automatic hyphenation back on for these
% sections).  It adds entries to the table of contents file for the
% notes sections.  It reads in the formatted index file (which you
% have made from your raw .idx file using MakeIndex between \LaTeX\
% runs) and adds an entry for the index to the table of contents. 
% Then it closes the external file for the table of contents and reads
% that in (putting it at the end of the document, as I explained
% before).  Then it adds a page explaining that the * symbol at the
% bottom of certain pages marks places where a stanza break and a page
% break coincide.  If you have an editor's introduction preceding your
% notes section, or a list of abbreviations, you may wish to consult
% the |\finish| macro for suggestions about how to add the lines to
% read those files in and add entries for them in the table of
% contents.
% 
% 
% \section{Special cases}
% \subsection{Epigraphs, attributions etc.}
% \DescribeMacro{\epigraph} \DescribeMacro{\headnote}
% \DescribeMacro{\attribution} \DescribeMacro{\dedication} Set
% epigraphs, attributions, dedications, and headnotes as arguments to
% these macros. If you have epigraphs, attributions, dedications on the 
% divider pages of editions that combine several volumes of poetry, 
% use |\volumededication{}|, |\volumeepigraph{}|, and 
% |\volumeattribution{}|. 
% 
% \subsection{Inset prose quotations}
% \DescribeMacro{\savelinenumber}
% \DescribeMacro{\restorelinenumber} Sometime you will have inset prose 
% passages, but you will not wish to start the line numbering over 
% after the passage. The way to set this is to issue |\end{stanza}| 
% at the end of the stanza before the prose insert. Then issue 
% |\savelinenumber|. Then issue |\end{poem}|. Insert the prose 
% quotation (perhaps followed by |\attribution{}|). Then issue 
% |\begin{poem}| followed by |\restorelinenumber| and |\begin{stanza}|. 
% Then begin entering the rest of the poem.
% 
% \subsection{Multiline poem titles}
% \DescribeMacro{\poemtitlefirstline}
% \DescribeMacro{\poemtitlemiddleline}
% \DescribeMacro{\poemtitlelastline}
% \DescribeMacro{\poemtitlenocontents}
% \DescribeMacro{\poemtitlebaretitle}
% 
% Very long titles present special problems.  In the first place, they
% require special provisions to make sure that page breaks don't
% happen in the middle of a title, or immediately after a title.  In
% the second place, they raise questions about how the author wished
% to break them up over several lines.  If you think it might matter,
% these macros make it possible for you to ensure that long titles are
% broken in exactly the same way in your text and in your table of
% contents.  (I didn't pursue this question for titles in notes
% sections, and in notes sections these commands simply concatenate a
% long title.) 
% 
% If you wish to set the titles differently in the text and in the
% contents, you can set the title in the text and notes with
% |\poemtitlenocontents{}| and send a differently formatted entry to
% the table of contents file using |\literalcontents{}|. 
% |\poemtitlebaretitle{}| simply sets the title in the text, enabling
% you to use |\literalcontents{}| and |literaltextnotes{}| to produce
% whatever effect you wish.
% 
% \subsection{Italicized poem titles and empty poem titles}
% Titles with italics or other special formatting also pose special 
% problems since the typesetting commands gum up how I pass parameters 
% around that I was unable to solve using |\protect|. 
% \DescribeMacro{\poemtitleitalic{}{}}
% |\poemtitleitalic{}{}| takes two arguments. The first is the title of the 
% poem with the italics (or small capitals or what have you}, for 
% typesetting, and the second is the title without the commands, for 
% cross reference purposes.
% 
% \DescribeMacro{\poemtitlenotitle{}}
% |\poemtitlenotitle{}|, with its paradoxical name, is for poems 
% without formal titles. Usually such poems are referred to by their 
% first lines. This macro does not produce a title in the text, but 
% sets its argument in the table of contents and in the notes. Usually 
% you use the first line as the moral equivalent of a title.
% 
%  \DescribeMacro{\poemtitlenotitleitalic{}{}}
%  |\poemtitlenotitleitalic{}{}|, with its even more paradoxical name, 
% is for poems without formal titles but with italicized words in their 
% first lines.  |\poemtitlenotitleitalic{}{}| takes two arguments. The 
% first is the first line with the italics (for cross-reference 
% purposes), and the second is the 
% first line without the italics.
% \subsection{Poems in sections}
% 
% \DescribeMacro{\poemsectiontitle} |\poemsectiontitle{}| and its
% relatives (|\poemsubsectiontitle{}|,\goodbreak |\poemsectiontitlefirstline{}|,
% |\poemsectiontitlelastline{}|,\goodbreak |\poemsectiontitlenocontents{}|, and
% |\poemsectiontitlebaretitle{}|), as their titles imply, are used for
% the titles of sections of poems that have titled sections, and for
% special cases such as long section titles.  You can construct
% variants of these macros for dealing with section titles with
% italics and whatnot by adjusting the |\poemtitleitalic{}{}| macro
% above, or by using |\poemsectiontitlebaretitle{}| and
% |\literalcontents{}| and its siblings.
% 
% \subsection{Poetic sequences}
% 
% \DescribeMacro{\sequencetitle} \DescribeMacro{\sequencesectiontitle}
% \DescribeMacro{\sequencefirstsectiontitle} Sequences of related
% poems, perhaps with an over-title, demand special handling in the
% text, in the notes sections, and in the table of contents.  (A
% moment's thought will show that they are different in some ways from
% poems in sections.  For one thing, a sequence manifests a different
% relationship between part and whole than a poem in sections does,
% and often provides stronger experiences of momentary closure between
% sections.)  |\sequencefirstsectiontitle{}| gives a little more
% vertical space between the main title and the first section title
% than |\sequencesectiontitle{}| gives between adjacent sections later
% on in the sequence (since the over title for the sequence is in
% larger type) and adjusts the page breaking penalties to reflect the
% fact that such titles should not occur near the bottom of a page,
% since there should be no page break between the sequence title and
% the title of the first section of the sequence (although page breaks
% are permissible, indeed even slightly favored, between later
% sections).  There should also never be a page break between a
% section title and the first or second line of the section.  The
% penalties \textsf{poemscol} sets should take care of these
% automatically, but you may still have cases which require you to
% specify a page break with |\pagebreak| or |\newpage|.  There are a
% host of other commands, all with self-explanatory titles, that deal
% with some special situations that arise in setting the elements of
% poetic sequences.  These macros don't of course exhaust the dizzying
% possibilities, but from them you can construct whatever other macros
% you may need.  
% 
% \begin{itemize} 
% \item |\sequencetitlefirstline{}|,
% and |\sequencetitlelastline{}| are for long sequence titles
% 	
% 	\item 	|\sequencesectiontitlefirstline{}|, \goodbreak
% 	|\sequencesectiontitlemiddleline{}|,\goodbreak and 
%   |\sequencesectiontitlelastline{}| \goodbreak are for long titles of sequence 
%   sections.

% 	\item |\sequencefirstsectiontitlefirstline{}|, \goodbreak
% 	|\sequencefirstsectiontitlemiddleline{}|, \goodbreak and
% 	|\sequencefirstsectiontitlelastline{}|, \goodbreak are for long 
%   titles of the first section of a sequence.
% 
% 	\item |\sequencesectiontitleitalic{}{}|, \goodbreak 
% |\sequencesectiontitlefirstlineitalic{}{}|,  Others of this kind are easy 
% 	to construct. Remember to use two arguments --- one for the title 
% 	without the formatting characters and one for the title with the 
% 	formatting characters. 
% 	
% 	\item |\sequencefirstsectiontitlenonotes{}|, \goodbreak and
% 	|\sequencesectiontitleitalicnonotes{}{}|, \goodbreak 
% 	|\sequencesectiontitlebaretitle{}| for special cases
% 	
% 	\item 
% 	|\sequencesubsectiontitle{}|, \goodbreak 
% |\sequencefirstsubsectiontitle{}|, \goodbreak 
% |\sequencesubsectiontitlenocontents{}|, \goodbreak
% |\sequencesubsectiontitlefirstline{}|, \goodbreak
% |\sequencesubsectiontitlemiddleline{}|, \goodbreak
% |\sequencesubsectiontitlelastline{}|, \goodbreak
% |\sequencefirstsubsectiontitlefirstline{}|, \goodbreak
% |\sequencefirstsubsectiontitlemiddleline{}|,\goodbreak
% |\sequencefirstsubsectiontitlelastline{}|, \goodbreak
% |\sequencefirstsubsectiontitlenocontents{},| \goodbreak
% |\sequencefirstsubsubsectiontitlenocontents{}| and so on.
% 	\end{itemize}
% 	
% 	\bigskip
% \DescribeMacro{\sequencefirstsectiontitlenocontents}
% \DescribeMacro{\sequencesectiontitlenocontents}
% 
%   \medskip
% 
% These macros are designed to kludge around situations where the
% section title is just a number.  Obviously you can't just use that
% number as the label to hold the page number, since there may be
% other sequences that are organized the same way, and the label
% ``I.'' might take several meanings.  This macro has two arguments. 
% The first is the title of the section.  The second is the title of
% the sequence as a whole.  \textsf{poemscol} will combine both
% arguments to produce a unique label for cross referencing the page
% number for the section.
% 	
% \subsection{Visual formatting}
% \DescribeMacro{\longpage}
% \DescribeMacro{\shortpage}
% The ideal in \LaTeX\ is to separate 
% content markup and formatting as completely as possible. In the text 
% itself you simply mark the logical units (a poem, a title, a stanza, 
% a textual note), and a header program like this interprets the 
% meaning of those terms typographically. However, one still winds up 
% having to do some visual formatting. Especially in prose sections, 
% such as in the textual notes, you will sometimes have to enlarge or 
% shrink a page by one line in order to avoid an intractable widow or 
% club line, and when one does so one must be careful to do the same to 
% the other member of the two-page spread of which that page is a part. 
% These commands enable one to wiggle pagelength enough to handle these 
% problems. Since verse sections should be set with |\raggedbottom| 
% in effect, the commands are not necessary in verse sections.
% \section{A sample driver file}
% 
% If you are compiling a collected poems, you are probably preparing your 
% volume from many files. You may (or may not) wish to subdivide your 
% edition by the original volumes. Or you may subdivide by year, or by the 
% significant phases of the poet's career. One way to keep in control of the process is 
% to create a driver file, which calls all the appropriate\ .sty files 
% and sets the variables globally, and then read in the sections of 
% the edition using |\input|. Here is a version of the driver file I used for 
% \emph{The Collected Poems of Robert Penn Warren}:
% \begin{verbatim}
% \documentclass[10pt,twoside]{article}
% \usepackage{fancyhdr,kdgreek,makeidx,times,multicol,newmarn,geometry,}
% \usepackage{keyval,ifthen,newcropmark,poemscol}
% \begin{document}
% \leftheader{The Collected Poems of Robert Penn Warren}
% \makeexplanatorynotes
% \makeemendations 
% \maketextnotes
% \makepoemcontents
% \makelinenumbers
% \global\indexingontrue
% \global\includeaccidentalstrue
% \global\includetypescriptstrue
% \input maintitle.tex
% \input poems1922_1943.tex
% \input thirtysix.tex
% \input eleven.tex
% \input sp43.tex
% \input promises1.tex
% \input promises2.tex
% \input promises3.tex
% \input yeo1.tex.tex
% \input yeo2.tex.tex
% \input yeo3.tex.tex
% \input tale1.tex
% \input tale2.tex
% \input incarnations.tex
% \input audubon.tex
% \input orelse1.tex
% \input orelse2.tex
% \input arcturus.tex
% \input nowthen.tex
% \input beinghere.tex
% \input rumor1.tex
% \input rumor2.tex
% \input cj1.tex.tex
% \input cj2.tex.tex
% \input altitudes.tex.tex
% \input poems1943_1989.tex
% \input introduction.tex
% \finish
% \end{verbatim}
% 
% \section{A sample poem markup}
% Here is a poem Robert Penn Warren wrote in his first volume, 
% \emph{Thirty-Six Poems} (1935). The poem is the first poem of his 
% sequence ``Kentucky Mountain Farm.'' I include the over-title, to 
% demonstrate how to mark up such cases. 
% \begin{verbatim}
% 	\sequencetitle{Kentucky Mountain Farm}
% \index{Kentucky Mountain Farm@{\em Kentucky Mountain Farm\/}}
% \sources{Text: TSP. Variants: SP43, SP66 (Deletes ``The Cardinal,'' ``The
% Jay,'' and ``Watershed''), SP75 (Same sections as SP66), SP85 (Restores
% ``Watershed''), {\em Helsinki\/} (includes only ``Rebuke of 
% the Rocks'' and 
% ``At the Hour of the Breaking of the Rocks''). 
% ``The Owl'' (above) was marked as a section of ``Kentucky
% Mountain Farm'' when it first appeared in {\em Poetry,\/} but it was never
% included in any book version of the entire sequence. The sequence in {\em
% Poetry\/} included, in this order, ``The Owl,'' ``The Cardinal,'' and
% ``Watershed.'' TSP uses lower case Roman numerals in the section 
% titles. The typescript drafts in the Beinecke Library do not seem to 
% be setting copies.}
% \sequencefirstsectiontitle{I. Rebuke of the Rocks}
% \index{Rebuke of the Rocks@{\em Rebuke of the Rocks\/}}
% \sources{Text: TSP. Variants: {\em Nation\/}, 11 Jan.\ 1928, 
% p.~47, {\em Literary
% Digest,\/} 28 Jan.\ 1928, p.~32, {\em Vanderbilt Masquerader,\/} 10
% (Dec.\ 1933), p.~16, SP43, SP66, SP75, SP85, {\em Helsinki\/}, 
% Broadside: The Press at Colorado College, printed on paper handmade by 
% Thomas Leech for the American Poetry Society, April~26, 1985. This 
% poem was not included in SP85 until the second set of galleys, in 
% which a photocopy of the SP75 text is a stapled insert.} 
% \begin{poem}
% \begin{stanza}
% Now on you is the hungry equinox,\verseline
% \index{Now on you is the hungry equinox}
% O little stubborn people of the hill,\verseline
% \accidental{hill,] \sameword--- {\em Nation,\/} {\em Literary Digest\/}
% \sameword, {\em Vanderbilt\/} (I include the reading 
% from {\em Vanderbilt\/}
% even though it is the same as in TSP, because 
% {\em Vanderbilt\/} was published
% after the other magazine versions but before TSP.)}
% The season of the obscene moon whose pull\verseline
% Disturbs the sod, the rabbit, the lank fox,\verseline
% Moving the waters, the boar's dull blood,\verseline
% And the acrid sap of the ironwood.\end{stanza}
% 
% \begin{stanza}
% But breed no tender thing among the rocks.\verseline
% Rocks are too old under the mad moon,\verseline
% \accidental{old\missingpunct] \sameword, {\em Vanderbilt\/}}
% Renouncing passion by the strength that locks\verseline
% The eternal agony of fire in stone.\end{stanza}
% 
% \begin{stanza}
% Then quit yourselves as stone and cease\verseline
% \accidental{stone\missingpunct] \sameword, {\em Vanderbilt\/}}
% To break the weary stubble-field for seed;\verseline
% Let not the naked cattle bear increase,\verseline
% Let barley wither and the bright milkweed.\verseline
% \accidental{milkweed.] milk-weed. {\em Vanderbilt\/}}
% Instruct the heart, lean men, of a rocky place\verseline
% That even the little flesh and fevered bone\verseline
% May keep the sweet sterility of stone.\end{stanza}
% \end{poem}
% \end{verbatim}

% \goodbreak
% \section{A sample divider page}
% \begin{verbatim}
% \begin{volumetitlepage}
% 
% \volumetitle{Being Here}
% \volumeheader{Being Here}
% \volumesubtitle{Poetry 1977--1980}
% \volumededication{To Gabriel Thomas Penn\\
% (1836--1920)}
% \bigskip
% 
% \volumeepigraph{OLD MAN: You get old and you can't do anybody
% any good any more.\\
% BOY: You do me some good, Grandpa. You
% tell me things.}
% 
% 
% \bigskip
% 
% \volumeepigraph{There is in short no absolute time standard.}
% \volumeattribution{{\em Van Nostrand's Scientific Encyclopedia,\/}\\
% Fifth Edition, p. 2203}
% 
% \bigskip
% 
% 
% \volumeepigraph{I thirst to know the power and nature of Time\ldots.}
% \volumeattribution{St.\ Augustine: {\em Confessions,\/}\\
% Book {\em XI,\/} Chapter {\em XXIII\/}\\
% Translated by Albert C. Outler}
% 
% 
% \bigskip
% 
% \volumeepigraph{Time is the dimension in which God 
% strives to define His own Being.}
% 
% \sources{The typescript material in the Beinecke Library 
% indicates that this 
% book went through many drafts, and some rethinking about what to 
% include and how to order the poems. Until a late stage of 
% production---very late, since the typescript includes a designed 
% mock-up of the proposed title page---the title of this volume was {\em 
% Life is a Fable.\/} Indeed, as late as the time the book was set in 
% galleys it was called {\em Life is a Fable\/}, although the title was 
% corrected on the galleys. Like {\em Now and Then\/}, the typescript 
% was assembled from photocopies of re-typed copies of poems made after 
% their magazine appearance, with annotations giving the name of the 
% magazine in which they occurred. Unlike {\em Now and Then\/}, the 
% typescript seems to have been typed in one piece, and the annotations 
% added for the convenience of the permissions department at 
% Random House. The page numbers have been added---presumably 
% later---in blue pen. The copy is marked up in Warren's hand in black 
% pencil, and in another hand in red pencil. (Unless marked otherwise, 
% all of the mark-up described here is in black pencil.) \tsentry{Like most 
% Warren typescripts BHTS is single-spaced. The dedication to Gabriel 
% Thomas Penn and the dialogue between the old man and the boy appeared 
% on a separate page, and the three epigraphs appeared on another 
% separate page. BHTS gives 1838 as the year of Gabriel 
% Thomas Penn's 
% birth (the error is corrected on the galleys). In the quotation from 
% Augustine, the second word is corrected to ``thirst'' from ``yearn,'' 
% and the translator's name is added in pencil, not in Warren's 
% handwriting.} In one of Warren's own 
% copies at Western Kentucky University, he has corrected the date of 
% Gabriel Thomas Penn's birth to 1837 (copy 310). Some revisions in this book 
% may have come very late 
% indeed. A letter to Erskine of January 28, 1980, refers to changes 
% made in a bound manuscript that Warren kept after returning the 
% copy-edited typescripts. There are revisions not only on the galleys, 
% but also on the page proofs. There are even some corrections on the 
% ``blues'' for this volume, including some new copy on a card referred 
% to in a note on the cover of the ``blues'' but now lost. The Secker 
% and Warburg London edition is, except for the title page, printed from 
% the American plates. There is a copy of this book, marked up by 
% Warren with 
% proposed revisions for Stuart Wright's use on May 25, 1987, in the 
% Special Collections 
% Department of the Emory University Library. I quote Warren's 
% notes by permission. 
% Warren has also marked up, slightly, a copy of this book now in the 
% Robert Penn Warren Room of the Library of the Kentucky Museum at 
% Western Kentucky University. I quote that volume too by permission. 
% The setting typescript for the section of SP85 drawn from this volume 
% consisted of taped-in photocopies of passages from BH. Because the 
% revisions for SP85 are sometimes a vexed question, I have indicated 
% where the SP85 revisions are made on SP85TS.}
% 
% 
% \sources{Title Page] SP85 omits the dialogue between the old man and 
% the young boy. SP85 capitalizes ``time standard'' in the quotation 
% from Van Nostrand's Scientific Encyclopedia, and does not capitalize 
% ``Time'' in the quotation from Augustine.}
%  
% 
% 
% \end{volumetitlepage}
% \end{verbatim}
% 
% 
% 
% 
% \StopEventually{\PrintChanges\PrintIndex}
% \section{Implementation}
% \subsection{Page geometry and crop marks}


% \begin{macro}{\geometry} There's no reason why you should use the
% page geometry I specify here.  I use the \textsf{geometry} package,
% since it's simpler to figure out.  I give my page geometry here
% chiefly to remind the reader of some important variables that should
% be kept track of, such as marginparsep, which controls the
% separation of the marginal line numbers from the verse line,
% marginparwidth, which controls how wide the block for the marginal
% line numbers will be, headsep, which controls how far the text will
% be from the running headers, and footskip, which controls how far
% the last verse line will be from the marker which tells the reader
% that there is a stanza break at the end of the page (if there is
% one).  I've also set the odd side margin and the even side margin
% for two-sided printing, and defined a set of dimensions to use with
% the \textsf{newcropmarks} package, defining with width between the
% cropmarks, moving the top and bottom cropmarks around, and defining
% the width of the cropmark.  Finally, I have set the default handling
% of page endings to |\raggedbottom|.  Verse should always be set with
% a ragged bottom margin, otherwise \LaTeX\ will stretch the spaces
% between stanzas to make the bottom perfectly flush.  When you enter
% prose sections, such as the editor's introduction, you should enter
% the command |\flushbottom| to make sure that the prose sections have
% flush page bottoms.  If you wish to use a different geometry, you
% should issue the geometry command in your preamble.  You can change
% the parameters for the cropmarks with |\setlength|. 
% \begin{macrocode}
 \geometry{verbose, tmargin= 33pt,
 textwidth=318.21pt,textheight=550pt,
 marginparsep=7pt,marginparwidth=10pt,
 headheight= 12pt, 
 headsep=19pt,
 footskip=9pt,
 lmargin=132pt,
 twosideshift=0pt}
\setlength{\oddsidemargin}{60pt}
\setlength{\evensidemargin}{65.41pt} 

\newdimen\croppagewidth \croppagewidth=6.125in
\newdimen\croppadtop 
\newdimen\croppadbot 
\newdimen\croppadlr  \croppadlr=0pt
\newdimen\croppadright \croppadright=0pt
\newdimen\croppadleft  \croppadleft=0pt
  \newdimen\cropwidth 
  \cropwidth=.25pt
  \croppadbot=41.2pt \croppadtop=73pt
  \cropwidth=.25pt
\raggedbottom
%    \end{macrocode}
% \end{macro}
% 
% \subsection{Special font commands} 
% \subsubsection{Redefining normalsize and small} 
% 
% Here again is something you may wish to change for yourself.  Normal
% 10 point \LaTeX\ uses 12 point leading.  Strictly to save money, I
% redefined |\normalsize| to use 11 point leading.  You will probably
% wish to comment this area out of the style file, or issue a
% |\renewcommand| changing the values back to the normal ones (look in
% article.cls to see what they are).  
% 
% If you chose to redefine |\normalsize| or |\small| (or re-redefine
% them), be sure to surround your |\renewcommand| with |\makeatletter|
% and |\makeatother|, lest \LaTeX\ take exception to the ``at'' signs. 
% 
% I have left my geometry in here, chiefly to show you how to do the
% trick if you need it.  I did the same thing for |\small|, which I
% changed from 9 on 11 to 9 on 10.  \begin{macro}{\normalsize}
% \begin{macrocode}
\makeatletter
\renewcommand\normalsize{%
   \@setfontsize\normalsize\@xpt\@xipt
   \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
   \abovedisplayshortskip \z@ \@plus3\p@
   \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
   \belowdisplayskip \abovedisplayskip
   \let\@listi\@listI}
%    \end{macrocode}
%    \end{macro}
%    \begin{macrocode}   
\makeatother
\normalsize
\makeatletter
\renewcommand\small{%
   \@setfontsize\small\@ixpt{10}%
   \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@
   \abovedisplayshortskip \z@ \@plus2\p@
   \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
   \def\@listi{\leftmargin\leftmargini
               \topsep 4\p@ \@plus2\p@ \@minus2\p@
               \parsep 2\p@ \@plus\p@ \@minus\p@
               \itemsep \parsep}%
   \belowdisplayskip \abovedisplayskip
}
\makeatother
%    \end{macrocode}
% \subsubsection{Internal font size commands} You will probably never need 
% to use these font commands explicitly. I defined these for internal 
% use within \textsf{poemscol}, so that a command will always call the 
% same fonts.
% 
% As a way of making global changes to repeated features I have
% defined various special fonts for special purposes.  For instance,
% in a Collected Poems in which the poems are arranged by volume, with
% divider pages for the beginning of each volume, the first command
% sets the font for the volume title on the divider page, using the
% default font family, setting it in 18 point type on 23 point
% leading.  The second command, as the name of the command indicates,
% sets the font for the subtitle of the volume to be 14 point type on
% 18 point leading.  You can change these either by changing the
% values in your (renamed) style file, or by using |\renewcommand|. 
% For instance, you can change the font parameters for the font for
% setting poem titles from 14 on 18 to 12 on 14 by issuing
% |\renewcommand{\poemtitlefont}{\fontsize{12}{14}\selectfont}| in
% your preamble.  Notice that there are special fonts for titles in
% the back matter and in the table of contents as well.

%    \begin{macrocode}
\newcommand{\volumetitlefont}{\fontsize{18}{23}\selectfont}
\newcommand{\volumesubtitlefont}{\fontsize{14}{18}\selectfont}
\newcommand{\poemtitlefont}{\fontsize{14}{18}\selectfont}
\newcommand{\sequencetitlefont}{\fontsize{16}{20}\selectfont}
\newcommand{\subsectiontitlefont}{\fontsize{12}{14.5}\selectfont}
\newcommand{\backmatterheaderfont}{\fontsize{16}{20}\selectfont}
\newcommand{\volumetitlesink}{\leavevmode\vspace{23.5pt}}
\newcommand{\backmattersink}{\leavevmode\vspace{21.5pt}}
\newcommand{\backmatterafterheadersink}{\leavevmode\vspace{11pt}}
\newcommand{\backmattertextfont}{\small}
\newcommand{\backmatterintrofont}{\normalsize}
\newcommand{\backmattervolumefont}{\fontsize{12}{14.5}\selectfont}
\newcommand{\backmattervolumesubtitlefont}{\fontsize{11}{13}\selectfont}
\newcommand{\contentsvolumefont}{\fontsize{14}{20}\selectfont}
\newcommand{\contentsvolumesubtitlefont}{\fontsize{12}{14.5}\selectfont}
\newcommand{\contentssequencetitlefont}{\fontsize{10}{14}\selectfont}
\newcommand{\contentspoemtitlefont}{\fontsize{10}{14}\selectfont}
%    \end{macrocode}

% \subsection{Miscellaneous dimensions and constants}
% \textsf{poemscol} sets relatively large penalties for widows and
% clubs, both in the main text, and in the notes sections.  There are
% also special penalties after volume titles in the notes sections,
% since one does not want to leave a volume title in the notes
% sections stranded at the bottom of a page.  (Setting penalties may
% not automatically solve all the problems, however.  You can fix an
% intractable widow problem in the contents or in the notes sections
% by issuing |\literalcontents{\pagebreak}| or
% |\literalemend{\pagebreak}| just before you issue the
% |\poemtitle{}| or |\volumetitle{}| that resulted in the problematic
% title line.)  \textsf{poemscol} also manipulates penalties for places like
% the space between a poem's title and its first line.  It defines
% special values for the white space before and after poems and for
% the amount of a stanza break.  |\contentsindentone|,
% |\contentsindenttwo|, and so on are amounts to indent different
% hierarchical levels, say of poetic sequences and subsequences, in
% the table of contents. 
%    \begin{macrocode}
\widowpenalty=300
\clubpenalty=300
\newcommand{\notespoemclubpenalty}{\penalty-300}
\newcommand{\notessequenceclubpenalty}{\penalty-1500}
\newcommand{\notesvolumetitlepenalty}{\penalty-1500}
%    \end{macrocode}
% Since the right margin of verse is ragged anyway, I allowed some 
% flexibility for slightly longer lines.
%    \begin{macrocode}
\hfuzz=2pt
%    \end{macrocode}
%    For explicitly declared indented lines:
%    \begin{macrocode}
\newcommand{\verseindent}{\hspace{2em}}
%    \end{macrocode}
%    A hierarchy of indentations for sequence section titles and 
% subsection titles.
%    \begin{macrocode}
\newdimen\titleindentamount \titleindentamount=1pc
\newcommand{\titleindent}{\hspace{\titleindentamount}}
\setlength{\parindent}{\titleindentamount}
%    \end{macrocode}
%    White space after poem titles, after poems, and after sequence 
% titles.
%    \begin{macrocode}
\newcommand{\afterpoemtitleskip}{\smallskip}
\newcommand{\afterpoemskip}{\bigskip}
\newcommand{\aftersequencetitleskip}{\medskip}
%    \end{macrocode}
%    A little extra white space between stanzas.
%    \begin{macrocode}
\newcommand{\stanzaskip}{\medskip}
%    \end{macrocode}
%    A hierarchy of indentations for the table of contents:
%    \begin{macrocode}
\newdimen\volumetitleshiftamount \volumetitleshiftamount=1pc
\newcommand{\volumetitleshift}{\hbox{\hspace{\volumetitleshiftamount}}}
\newdimen\voladditionalamount \voladditionalamount=2pc
\newdimen\contentsindentoneamount \contentsindentoneamount=24pt
\newcommand{\contentsindentone}{\hspace{\contentsindentoneamount}}
\newdimen\contentsindenttwoamount \contentsindenttwoamount=42pt
\newcommand{\contentsindenttwo}{\hspace{\contentsindenttwoamount}}
\newdimen\contentsindentthreeamount \contentsindentthreeamount=60pt
\newcommand{\contentsindentthree}{\hspace{\contentsindentthreeamount}}
\newdimen\contentsindentfouramount \contentsindentfouramount=72pt
\newcommand{\contentsindentfour}{\hspace{\contentsindentfouramount}}
%    \end{macrocode}
%    Penalties to encourage page breaks before poem titles, before 
% multi-line poem titles, and before sequence titles.
%    \begin{macrocode}
\newcommand{\poemtitlepenalty}{\penalty-1000}
\newcommand{\multilinetitlepenalty}{\penalty-3000}
\newcommand{\sequencetitlepenalty}{\penalty-3000}
\newcommand{\multilinesequencepenalty}{\penalty-3500}
%    \end{macrocode}

% \subsection{Verse} The verse environment here is taken from \LaTeX, 
% slightly modified to indent run over lines more. The idea is to 
% distinguish the automatic indentation of run over lines from the 
% explicitly declared indentation of indented lines.
%    \begin{macrocode}
\def\makeatletter{\catcode`\@=11}
\def\makeatother{\catcode`\@=12 }
\makeatletter
\def\verse{\let\\=\@centercr  
  \list{}{\itemsep\z@ \itemindent -6em\listparindent \itemindent 
          \rightmargin 1sp\leftmargin 1sp\advance\leftmargin 6em}\item[]}
\let\endverse\endlist
\makeatother
\makeatletter
%    \end{macrocode}

% \subsection{Miscellaneous internal counters}
% |\linenumber| is the line number, obviously. |\printlineindex| 
% records how many lines have passed since the last marginal line 
% number was output. |\lineindexrepeat| governs how often the marginal 
% line numbers appear.
%    \begin{macrocode}
\newcounter{linenumber}
\newcounter{printlineindex}
\newcounter{linenumberscratch}
\newcounter{printlineindexscratch}
\newcounter{lineindexrepeat} \setcounter{lineindexrepeat}{9}
%    \end{macrocode}
%    These next two are used to set the page numbers in the running 
% headers of the various notes sections, which are of the form 
% ``Textual notes to pp.~xx--yy.''
%    \begin{macrocode}
\newcounter{notepageholdertitle} \setcounter{notepageholdertitle}{1}
\newcounter{notepageholdernote}  \setcounter{notepageholdernote}{1}
%    \end{macrocode}
%    
%    \subsection{Miscellaneous booleans}
%    Most of these have self-explanatory names.
%    \begin{macrocode}
\newif\ifinstanza
\newif\ifinpoem
\newif\ifpoemcontentson
\newif\iftextnoteson
\newif\iflinenumbers
\newif\ifexplanon
\newif\ifemendationson
\newif\iftextnotesatfoot
 \global\linenumberstrue
\newif\ifindexingon
\global\indexingontrue
\ifindexingon
  \makeindex
\fi
\newif\ifincludeaccidentals
\global\includeaccidentalstrue
\newif\ifincludetypescripts
\global\includetypescriptstrue
\newif\ifredundantemendations
\global\redundantemendationsfalse
\newif\ifnoemendyet
\newif\ifnoexplainyet
\newcommand{\makelinenumbers}{\global\linenumberstrue}
%    \end{macrocode}

% \subsection{Page styles} These define several special page styles. 
% To use them you must have the \textsf{fancyhdr} package installed. 
% First, the default running headers: the right side (|\volumeheader|)
% is the title of the volume in a multivolume edition, and the left
% (|\leftheader|) is the title of the general collection. 
% \begin{macro}{\volumeheader} \begin{macro}{\leftheader}
% \begin{macrocode}
\newcommand{\volumeheader}[1]{\global\edef\volumeheadervalue{#1}
}
\newcommand{\leftheader}[1]{\global\edef\leftheadervalue{#1}
}
\leftheader{\relax}
\volumeheader{\relax}
%    \end{macrocode}
% \end{macro}
% \end{macro}

% The default page style. Note the use of the mark mechanism to keep 
% track of cases where the stanza breaks and page breaks overlap.
% \begin{macro}{\pagestyle{fancy}}
%    \begin{macrocode}
\pagestyle{fancy}
\fancyhead{}
\fancyfoot{}
\fancyhead[RO,LE]{{\small\textrm{\thepage}}}
\fancyhead[CO]{{\small{\em \volumeheadervalue}}}
\fancyhead[CE]{{\small{\em \leftheadervalue}}}
\fancyfoot[L]{{\small \botmark}}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
%    \end{macrocode}
% \end{macro}

% Style for the first page of every volume in a Collected Poems. You 
% don't have to call this style explicitly. It is called by the |\volumetitlepage| 
% environment. But of course if you want to change the style of those 
% pages, you should do it here.
%    \begin{macrocode}
\fancypagestyle{volumefirststyle}{%
\fancyhf{}
\fancyfoot[L]{{\small \botmark}}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
}
%    \end{macrocode}
% Style for plain pages.
%    \begin{macrocode}
\fancypagestyle{plain}{%
\fancyhf{}
\fancyhead[RO,LE]{{\small\textrm{\thepage}}}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
}
%    \end{macrocode}
% Style for divider pages between volumes
%    \begin{macrocode}
\fancypagestyle{volumetitlestyle}{%
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
}
%    \end{macrocode}
% Here the marks mechanism keeps track of pages from which notes 
% come. Marks are used different in the notes sections and in the body 
% of the volume. In the body, they are used to keep track of cases 
% where a stanza break falls on a page break. In the notes sections, 
% they set the running headers.
% \begin{macro}{\mymarks}
%    \begin{macrocode}
\newcommand{\mymarks}{
   \ifthenelse{\equal{\firstmark}{\botmark}}
        {\unskip to p.~\firstmark} % if equal
        {\unskip to pp.~\firstmark--\botmark}}%if not equal
\newcommand{\poemdotfill}{\dotfill}
%    \end{macrocode}
% \end{macro}

% \subsection{Marginal line numbers, verse lines}
%    \begin{macrocode}
\renewcommand{\marnfont}{\scriptsize}
\newcommand{\@putlinenumber}{\nolinebreak\begin{marginenvironment}
  \nolinebreak
  \marn{\hfil\textrm{\thelinenumber}}
  \nolinebreak
  \end{marginenvironment}\nolinebreak
}
%    \end{macrocode}
% \begin{macro}{\verseline}
%    \begin{macrocode}
\newcommand{\verseline}{\nolinebreak\incrementlinenumber
\nolinebreak\\}
\newcommand{\incrementlinenumber}{\nolinebreak\addtocounter{linenumber}{1}
  \addtocounter{printlineindex}{1}
  \ifnum\theprintlineindex>\thelineindexrepeat
    \iflinenumbers\nobreak
      \@putlinenumber\nobreak
    \fi\nobreak
    \setcounter{printlineindex}{0}
   \fi
}
%    \end{macrocode}
% \end{macro} 
% \begin{macro}{\linebend}
% A linebend is a a normal linebreak from \LaTeX , with no incrementing 
% of the line number counter, but the indentation makes the line look 
% like a run over line. If you change the value of the run over in the 
% definition of the |\verse| environment, be sure to change it here 
% too. |\linebend| should be used for tweaking how \textsf{poemscol} 
% runs over long lines.

%    \begin{macrocode}
\newcommand{\linebend}{\\
\hspace{6em}
 }
%    \end{macrocode}
%  \end{macro}
%  |\savelinenumber| and |\restorelinenumber| are useful for setting 
% prose interjections in the midst of poems.
% \begin{macro}{\savelinenumber}
% \begin{macro}{\restorelinenumber}
%    \begin{macrocode} 
\newcommand{\savelinenumber}{\setcounter{linenumberscratch}
    {\value{linenumber}}
   \setcounter{printlineindexscratch}{\value{printlineindex}}}
\newcommand{\restorelinenumber}{\setcounter{linenumber}
     {\value{linenumberscratch}}
    \setcounter{printlineindex}{\value{printlineindexscratch}}}
%    \end{macrocode}
% 	\end{macro}
% 	\end{macro}
% \begin{macro}{\hour}
% |\hour{}| is useful for typesetting the AM and the PM in the time.
%    \begin{macrocode}	
\newcommand{\hour}[1]{{{\textsc{#1}}\ $\!\!\!$}
 }
%    \end{macrocode}
%  \end{macro}
%  \begin{macro}{\brokenline}
%  \begin{macro}{\versephantom}
%  |\brokenline| and |\versephantom{}| are a pair, useful for setting 
%  cases where there is a line break in the midst of a single metrical 
%  line.
%    \begin{macrocode}
\newcommand{\brokenline}{\\}
\newcommand{\versephantom}[1]{\leavevmode\phantom{#1}}
%    \end{macrocode}
% \end{macro}
% \end{macro}

% \subsection{Setup for contents, textual notes, emendations, and explanatory notes}
%  First, the table of contents:
%  \begin{macro}{\makepoemcontents}
%  An external file is created with the extension .ctn, and the 
% filename of your driver file. The 
% channel to that file is called |\poemcontents|. The rest of the 
% command is the page style for the contents section. You will notice 
% the running head Contents, and the title of the Contents section. I am 
% assuming that the table of contents starts on page 5, but it may be 
% different in different books. If you want to change that page 
% number (say, to page 3) without messing with this file, issue 
% |\literalcontents{\setcounter{page}{3}| just after you issue 
% |\makepoemcontents|
%    \begin{macrocode}
\newcommand{\makepoemcontents}{\global\poemcontentsontrue
  \newwrite\poemcontents
  \immediate\openout\poemcontents=\jobname.ctn
  \literalcontents{\flushbottom\normalfont 
{\par\clearpage{\pagestyle{volumetitlestyle}\cleardoublepage}
\pagestyle{fancy}\thispagestyle{volumetitlestyle}}
\pagenumbering{roman}
\setcounter{page}{5}
\fancyhead[RO,LE]{{\small\textrm{\thepage}}}
\fancyhead[CO]{{\small{\em Contents}}}
\fancyhead[CE]{{\small{\em Contents}}}
\fancyfoot{}
\backmattersink
\begin{center}{\normalfont \backmatterheaderfont 
	CONTENTS}\end{center}
\lefthyphenmin=2\backmatterafterheadersink\tolerance=500\language=0}}
%    \end{macrocode}
% \end{macro}

% Next, the textual collations:
% \begin{macro}{\maketextnotes} Like the |\makecontents| macro, 
% |\maketextnotes| opens an external file with the extension .ent. It 
% makes sure that line numbering is on (since it makes no sense to make 
% notes without numbering the lines, particularly since the 
% |\textnote{}| macro uses the line number). And it makes sure that the 
% notes section is set with a flush bottom line, rather than with the 
% ragged bottom line used for the verse sections. Also, it sets a 
% label for sending the page number of the textual notes to the table of 
% contents.
%    \begin{macrocode}
\newcommand{\maketextnotes}{\global\textnotesontrue
  \global\linenumberstrue
  \newwrite\textnotes
  \immediate\openout\textnotes=\jobname.ent
  \literaltextnote{\flushbottom{\par\clearpage
  {\pagestyle{volumetitlestyle}\cleardoublepage}
\thispagestyle{volumetitlestyle}}
\fancyhead{}
\fancyfoot{}
\fancyhead[RO,LE]{{\small\textrm{\thepage}}}
\fancyhead[CO]{{\small{\em Textual Notes~\mymarks}}}
\fancyhead[CE]{{\small{\em Textual Notes~\mymarks}}}
\fancyfoot[L]{}
\mark{3}
\backmattersink
\begin{center}{\normalfont \backmatterheaderfont TEXTUAL NOTES}\end{center}
\label{textualnotes}
\lefthyphenmin=2\backmatterafterheadersink\tolerance=500\language=0
\normalfont \backmattertextfont}
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\makeemendations}
% Next, the emendations section:
%    \begin{macrocode}
\newcommand{\makeemendations}{\global\emendationsontrue 
  \newwrite\emendations
  \global\linenumberstrue
   \immediate\openout\emendations=\jobname.emd
   \literalemend{\flushbottom{\par\clearpage
   {\pagestyle{volumetitlestyle}\cleardoublepage}
\thispagestyle{volumetitlestyle}}
\fancyhead{}
\fancyhead[RO,LE]{{\small\textrm{\thepage}}}
\fancyhead[CO]{{\small{\em Emendations~\mymarks}}}
\fancyhead[CE]{{\small{\em Emendations~\mymarks}}}
\fancyfoot{}
\mark{3}
\backmattersink
\begin{center}{\normalfont \backmatterheaderfont 
	EMENDATIONS}\end{center}
\label{emendationnotes}
\lefthyphenmin=2\backmatterafterheadersink\tolerance=500\language=0
\normalfont \backmattertextfont}
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\makeexplanatorynotes}
% And the explanatory notes:
%    \begin{macrocode}
\newcommand{\makeexplanatorynotes}{\global\explanontrue
     \global\linenumberstrue
     \newwrite\explanations
     \immediate\openout\explanations=\jobname.enx
     \literalexplain{\flushbottom{\par\clearpage
	 {\pagestyle{volumetitlestyle}\cleardoublepage}
\thispagestyle{volumetitlestyle}}
\fancyhead[RO,LE]{{\small\textrm{\thepage}}}
\fancyhead[CO]{{\small{\em Explanatory Notes~\mymarks}}}
\fancyhead[CE]{{\small{\em Explanatory Notes~\mymarks}}}
\fancyfoot{}
\mark{3}
\backmattersink
\begin{center}{\normalfont \backmatterheaderfont 
	EXPLANATORY NOTES}\end{center}
\label{explanatorynotes}
\lefthyphenmin=2\backmatterafterheadersink\tolerance=500\language=0
\normalfont \backmattertextfont }
}
%    \end{macrocode}
% \end{macro}

% Auxiliary commands for note and title sections
%    \begin{macrocode}
\newcommand{\@poempagetotextnotes}[1]{
    \immediate\write\textnotes{\string\par\string\argpageref\string{#1\string}}
\@pagemarktotextnotes{#1}}     
\newcommand{\@poemtitletotextnotes}[1]{\literaltextnote{\textbf{#1}}}
\newcommand{\@pagemarktotextnotes}[1]
{\immediate\write\textnotes{\string\setcounter\string{notepageholdertitle\string}
\string{\string\argpageref\string{#1\string}\string}}
\immediate\write\textnotes{\string\mark
\string{\string\thenotepageholdertitle\string}\string\unskip}}
%    \end{macrocode}
%    

% \subsection{Book, volume, and volume section titles}
% \begin{macro}{\wholebooktitle}
% \begin{macro}{\booksection}
%    \begin{macrocode}
\newcommand{\wholebooktitle}[1]{{\Huge\begin{center} 
\hbox{#1}\end{center}}
}
\newcommand{\booksection}[1]{\volumesection{#1}}
%    \end{macrocode}
%    \end{macro}
%    \end{macro}
% \begin{macro}{\volumetitle{}}
%    \begin{macrocode}
\newcommand{\volumetitle}[1]{\volumetitlesink\par
{\volumetitlefont\volumetitleshift #1}\par
  \ifpoemcontentson
    \literalcontents{\par
{\contentsvolumefont #1\vspace{5pt}\par\nobreak}}   
  \fi
  \iftextnoteson
\immediate\write\textnotes{\string\notesvolumetitlepenalty\string\bigskip}
     \immediate\write\textnotes{\string\goodbreak}
     \immediate\write\textnotes{\string\par \string\par}
     \immediate\write\textnotes{\string\backmattervolumefont\ #1}
\immediate\write\textnotes{\string\mark\string{\thepage\string}\string\unskip}
     \immediate\write\textnotes{\string\par \string\backmattertextfont} 
     \immediate\write\textnotes{\string\nobreak}
  \fi
  }
%    \end{macrocode}
%    \end{macro} 
%    \begin{macro}{\volumetitlefirstline}
%    \begin{macro}{\volumetitlelastline}
%    \begin{macro}{\volumesubtitle} 
%    \begin{macro}{\volumesectiontitle}
%    \begin{macrocode}
\newcommand{\volumetitlefirstline}[1]
{\volumetitlesink\par{\volumetitlefont 
\volumetitleshift #1 \par}
  \ifpoemcontentson
   \literalcontents{
{\contentsvolumefont #1\par\nobreak}}
   \fi
  \iftextnoteson
     \immediate\write\textnotes{\string\penalty-2000\string\bigskip}
     \immediate\write\textnotes{\string\par \string\par}
     \immediate\write\textnotes{\string\backmattervolumefont\ #1}
  \fi
}
\newcommand{\volumetitlelastline}[1]{{\volumetitlefont 
\volumetitleshift #1 \par}
  \ifpoemcontentson
    \literalcontents{{\contentsvolumefont #1\vspace{5pt}\par\nobreak}}
  \fi
  \iftextnoteson
\immediate\write\textnotes{\string\backmattervolumefont\ #1}
\immediate\write\textnotes{\string\mark\string{\thepage\string}\string\unskip}
     \immediate\write\textnotes{\string\par \string\backmattertextfont} 
     \immediate\write\textnotes{\string\nobreak}
  \fi
}
\newcommand{\volumesubtitle}[1]{{\volumesubtitlefont 
\volumetitleshift #1 \par}
  \ifpoemcontentson
    \literalcontents{{\contentsvolumesubtitlefont 
#1\vspace{3pt}\par\nobreak}}
  \fi
  \iftextnoteson
     \immediate\write\textnotes{\string\backmattervolumesubtitlefont\ #1}
     \immediate\write\textnotes{\string\par \string\backmattertextfont} 
     \immediate\write\textnotes{\string\nobreak}
  \fi
}
\newcommand{\volumesectiontitle}[1]
{\clearpage\thispagestyle{volumefirststyle}
\begin{center} {\volumesubtitlefont\textbf{#1}}
\end{center} \bigskip\bigskip
  \ifpoemcontentson
  \literalcontents{\goodbreak{\contentsvolumesubtitlefont #1\par\nobreak}}
  \fi
  \iftextnoteson
     \immediate\write\textnotes{\string\notesvolumetitlepenalty}
     \immediate\write\textnotes{\string\par \string\begin{bf}}
     \immediate\write\textnotes{#1 \string\end{bf}}
     \immediate\write\textnotes{\string\par}
     \immediate\write\textnotes{\string\nobreak}
  \fi
}
%    \end{macrocode}
% \end{macro}
% \end{macro}
% \end{macro}
% \end{macro}

% \subsection{Commands for setting titles of poems and sequences}
% First, commands for sending labels to the table of contents and to 
% the notes sections. Since these are internal commands, not intended 
% to be issued in the body of the text, they might have been marked out 
% with ``at'' signs to prevent accidental redefinition. But since they 
% are repeatedly written out to the external files, it seemed more 
% economical to run the risk of redefinition than to write out 
% |\makeatletter| and |\makeatother| with every note.
%    \begin{macrocode}
\newcommand{\makepoemlabel}[1]{\label{#1}}
\newcommand{\argpageref}[1]{\pageref{#1}}
%    \end{macrocode}
%  \subsubsection{Poem Titles} 
%  \begin{macro}{\poemtitle}
%  All of the other commands in this section are 
% variations on this one, changing the penalties, the skips, and the 
% fonts, or, in the case of lines with italics, separating a non-italic 
% version of the title for use as a label for page references from the 
% italic version used to actually set the title. The command breaks into three sections. 
% First, the title is set in the text.  |\poemtitlepenalty| tests 
% whether there is room for the title and the first couple of lines. 
% |\poemtitlefont| globally sets the fonts for all poem titles.  
% The |\hbox{}| is to make sure that the poem title is not broken across 
% two lines, and the |\label| records the page for the contents and 
% notes sections. |\afterpoemtitleskip| is the amount of white space 
% after a poem title. |\@fulltitle| and |\@compoundlabelscratch| record 
% the title for concatenation later.
% 
% Second, the poem is entered in the external file for the table of 
% contents. |\contentsindentone| sets it in one level in the hierarchy 
% of indentations, and |\contentspoemtitlefont| is the type size used 
% for poems in the table of contents. The |\pageref{}| holds the page 
% number of the poem. 
% 
% Third, a new paragraph is opened in the textual notes for textual 
% collations. |\@poempagetotextnotes{}| sends the page number to the 
% textual notes. |\@poemtitletotextnotes{}| sends the title.
%    \begin{macrocode}
\newcommand{\poemtitle}[1]
{\poemtitlepenalty{\poemtitlefont \hbox{#1}}\label{#1}
  \nobreak\par\nobreak\afterpoemtitleskip\nobreak
   \global\edef\@fulltitle{#1}
   \global\edef\@compoundlabelscratch{#1}
  \ifpoemcontentson
  \literalcontents{\contentsindentone{\contentspoemtitlefont #1
~/~\pageref{#1}\par}}
  \fi
  \iftextnoteson
 \immediate\write\textnotes{\string\notespoemclubpenalty}
     \@poempagetotextnotes{#1}
     \@poemtitletotextnotes{#1}
  \fi
}
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\poemtitleitalic} Poems with italic titles or other 
% formatting (such as |\hour{}|) take two arguments. The first, with the 
% formatting characters included, is sent to the text and to the 
% contents for setting. The second, without the formatting characters, 
% is used to define the labels used to keep cross references to the page 
% number for this title correct.
%    \begin{macrocode}
\newcommand{\poemtitleitalic}[2]
{\poemtitlepenalty{\poemtitlefont \hbox{#1}}\label{#2}
  \nobreak\par\nobreak\afterpoemtitleskip\nobreak
   \global\edef\@fulltitle{#2}
   \global\edef\@compoundlabelscratch{#2}
  \ifpoemcontentson
    \literalcontents{\contentsindentone{\contentspoemtitlefont #1
~/~\pageref{#2}\par}}
  \fi
  \iftextnoteson
\immediate\write\textnotes{\string\notespoemclubpenalty}
     \@poempagetotextnotes{#2}
     \@poemtitletotextnotes{#1}
  \fi
}
%    \end{macrocode}
%    \end{macro}
%    For poem subtitles, see the entry on |\sequencesectionsubtitle{}|.
%    
%    \begin{macro}{\poemtitlefirstline}
%    \begin{macro}{\poemtitlemiddleline}
%    \begin{macro}{\poemtitlelastline}
% Next, macros for setting multiline poem titles. Notice the special larger 
% penalty for page breaks in the middle of  multiple line title. 
%    \begin{macrocode}
\newcommand{\poemtitlefirstline}[1]
{\multilinetitlepenalty{\poemtitlefont \hbox{#1}}\label{#1}
  \nobreak\par\nobreak
   \global\edef\@fulltitle{#1}
   \global\edef\@compoundlabelscratch{#1}
  \ifpoemcontentson
    \literalcontents{
\contentsindentone{\contentspoemtitlefont #1\par\nobreak}}
  \fi
  \iftextnoteson
 \immediate\write\textnotes{\string\notespoemclubpenalty}
     \@poempagetotextnotes{#1}
     \@poemtitletotextnotes{#1}
  \fi
}
%    \end{macrocode}

% Notice the use of |\let| and |\edef| here to concatenate the first and second 
% lines.
%    \begin{macrocode}
\newcommand{\poemtitlemiddleline}[1]{{\poemtitlefont \hbox{#1}}
  \nobreak\par\nobreak
   \let\@titlesofar=\@fulltitle
   \global\edef\@fulltitle{\@titlesofar\string~#1}
   \let\@compoundsofar=\@compoundlabelscratch
   \global\edef\@compoundlabelscratch{\@compoundsofar #1}
  \ifpoemcontentson
    \literalcontents{\nobreak\contentsindenttwo
{\contentspoemtitlefont #1\par\nobreak}}
  \fi
  \iftextnoteson
     \@poemtitletotextnotes{#1}
  \fi

}
\newcommand{\poemtitlelastline}[1]{{\poemtitlefont \hbox{#1}}\label{#1}
  \nobreak\par\nobreak
  \afterpoemtitleskip\nobreak
   \let\@titlesofar=\@fulltitle
   \global\edef\@fulltitle{\@titlesofar\string~#1}
   \let\@compoundsofar=\@compoundlabelscratch
   \global\edef\@compoundlabelscratch{\@compoundsofar #1}
   \makepoemlabel{\@compoundlabelscratch}
  \ifpoemcontentson
    \literalcontents{\nobreak\contentsindenttwo{\contentspoemtitlefont #1
~/~\pageref{#1}\par}}
  \fi
  \iftextnoteson
     \@poemtitletotextnotes{#1}
  \fi
}
%    \end{macrocode}
% \end{macro}
% \end{macro}
% \end{macro}
% Titles for sections of poems, and multi-line titles of sections 
% of poems
% \begin{macro}{\poemsectiontitle}
% \begin{macro}{\poemsectiontitlefirstline}
%    \begin{macrocode}
\newcommand{\poemsectiontitle}[1]{\par\nobreak
   {\subsectiontitlefont \hbox{\titleindent #1}}\label{#1}\par\nobreak
   \afterpoemtitleskip\nobreak 
   \global\edef\@fulltitle{#1}
   \global\edef\@compoundlabelscratch{#1}
  \ifpoemcontentson
    \literalcontents{\nobreak\contentsindenttwo{\contentspoemtitlefont #1
~/~\pageref{#1}\par}}
  \fi
  \iftextnoteson
 \immediate\write\textnotes{\string\notespoemclubpenalty}
     \@poempagetotextnotes{#1}
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\poemsectiontitlefirstline}[1]{\par\nobreak
   {\subsectiontitlefont \hbox{\titleindent #1}}\label{#1}\par\nobreak
   \global\edef\@fulltitle{#1}
   \global\edef\@compoundlabelscratch{#1}
  \ifpoemcontentson
    \literalcontents{
\contentsindenttwo{\contentspoemtitlefont #1}\par\noskip}
  \fi
  \iftextnoteson
     \@poempagetotextnotes{#1}
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\poemsectiontitlelastline}[1]{
   {\subsectiontitlefont \hbox{\titleindent #1}}\label{#1}\par\nobreak
   \afterpoemtitleskip\nobreak 
   \let\@titlesofar=\@fulltitle
   \global\edef\@fulltitle{\@titlesofar\string~#1}
   \let\@compoundsofar=\@compoundlabelscratch
   \global\edef\@compoundlabelscratch{\@compoundsofar #1}
   \makepoemlabel{\@compoundlabelscratch}
  \ifpoemcontentson
    \literalcontents{\nobreak\contentsindentthree{\contentspoemtitlefont #1
~/~\pageref{#1}\par}}
  \fi
  \iftextnoteson
     \@poemtitletotextnotes{#1}
  \fi
}
%    \end{macrocode}
% \end{macro}
% \end{macro}
% \begin{macro}{\poemsectiontitlenocontents}
% \begin{macro}{\poemsectionbaretitle}
% \begin{macro}{\poemsubsectiontitle}
% \begin{macro}{\poemtitlenotitle}
% \begin{macro}{\poemtitlenotitleitalic}
%    \begin{macrocode}
\newcommand{\poemsectiontitlenocontents}[2]{
  \sequencesubsectiontitlenocontents{#1}{#2}}
\newcommand{\poemfirstsectiontitlebaretitle}[1]
{\par\nobreak\aftersequencetitleskip
   {\subsectiontitlefont \hbox{\titleindent #1}}\par\nobreak
   \afterpoemtitleskip\nobreak 
}
\newcommand{\poemsectiontitlebaretitle}[1]{\par\poemtitlepenalty
   {\subsectiontitlefont \hbox{\titleindent #1}}\par\nobreak
   \afterpoemtitleskip\nobreak 
}
\newcommand{\poemsubsectiontitle}[1]
{{\large \hbox{\titleindent\titleindent #1}}
    \afterpoemtitleskip\nobreak}
\newcommand{\poemtitlenotitle}[1]
{\poemtitlepenalty \label{#1}
  \nobreak\par\nobreak\afterpoemtitleskip\nobreak
   \global\edef\@fulltitle{#1}
   \global\edef\@compoundlabelscratch{#1}
  \ifpoemcontentson
  \literalcontents{\contentsindentone{\contentspoemtitlefont #1
~/~\pageref{#1}\par}}
  \fi
  \iftextnoteson
 \immediate\write\textnotes{\string\notespoemclubpenalty}
     \@poempagetotextnotes{#1}
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\poemtitlenotitleitalic}[2]
{\poemtitlepenalty\label{#2}
  \nobreak\par\nobreak\afterpoemtitleskip\nobreak
   \global\edef\@fulltitle{#2}
   \global\edef\@compoundlabelscratch{#2}
  \ifpoemcontentson
    \literalcontents{\contentsindentone{\contentspoemtitlefont #1
~/~\pageref{#2}\par}}
  \fi
  \iftextnoteson
\immediate\write\textnotes{\string\notespoemclubpenalty}
     \@poempagetotextnotes{#2}
     \@poemtitletotextnotes{#1}
  \fi
}
%    \end{macrocode}
%    \end{macro}
%    \end{macro}
%    \end{macro}
%    \end{macro}
%    \end{macro}
%    
%    \subsubsection{Poetic Sequences: Setting the Main Title}
% \begin{macro}{\sequencetitle}
%    Variants here for multiple line titles and titles with font 
% commands. Also some all-purpose kludges to work around other problems.
%    \begin{macrocode}
\newcommand{\sequencetitle}[1]{\par\sequencetitlepenalty
  {\sequencetitlefont 
  \hbox{#1}}\label{#1}\par\nobreak\aftersequencetitleskip\nobreak
   \global\edef\@fulltitle{#1}
   \global\edef\@compoundlabelscratch{#1}
  \ifpoemcontentson
    \literalcontents{
\par\contentsindentone
{\contentssequencetitlefont #1\par\nobreak}}
  \fi
  \iftextnoteson
     \immediate\write\textnotes{\string\notessequenceclubpenalty}
     \@poempagetotextnotes{#1}
     \@poemtitletotextnotes{#1}
  \fi
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\sequencetitlefirstline}
%% \begin{macro}{\sequencetitlelastline}
%  To set the title of a poetic sequence if it requires two lines 
% to do so.
%    \begin{macrocode}
\newcommand{\sequencetitlefirstline}[1]{\par\multilinesequencepenalty
  {\sequencetitlefont \hbox{#1}}\label{#1}\par\nobreak
   \global\edef\@fulltitle{#1}
   \global\edef\@compoundlabelscratch{#1}
  \ifpoemcontentson
    \literalcontents{
\contentsindentone 
{\contentssequencetitlefont #1\par\nobreak}}
  \fi
  \iftextnoteson
     \immediate\write\textnotes{\string\penalty-2000\string\par}
     \@poempagetotextnotes{#1}
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencetitlelastline}[1]{
  {\sequencetitlefont \hbox{#1}}
  \label{#1}\par\nobreak\aftersequencetitleskip\nobreak
   \let\@titlesofar=\@fulltitle
   \global\edef\@fulltitle{\@titlesofar\string~#1}
   \let\@compoundsofar=\@compoundlabelscratch
   \global\edef\@compoundlabelscratch{\@compoundsofar #1}
   \makepoemlabel{\@compoundlabelscratch}
  \ifpoemcontentson
    \literalcontents{\nobreak\contentsindenttwo
{\contentssequencetitlefont #1\par\nobreak}}
  \fi
  \iftextnoteson
     \@poemtitletotextnotes{#1}
  \fi
}
%    \end{macrocode}
%    \end{macro}
%    \end{macro}
%    \subsubsection{Sections of poetic sequences}
% \begin{macro}{\sequencesectiontitle}
% First, the easy case: a simple section of a poetic sequence.
%    \begin{macrocode}
\newcommand{\sequencesectiontitle}[1]{\par\poemtitlepenalty
   {\poemtitlefont \hbox{\titleindent #1}}\label{#1}
  \nobreak\par\nobreak\afterpoemtitleskip\nobreak
   \global\edef\@fulltitle{#1}
   \global\edef\@compoundlabelscratch{#1}
  \ifpoemcontentson
  \literalcontents{\contentsindenttwo{\contentspoemtitlefont #1
~/~\pageref{#1}\par}}
  \fi
  \iftextnoteson
  \immediate\write\textnotes{\string\notespoemclubpenalty}
     \@poempagetotextnotes{#1}
     \@poemtitletotextnotes{#1}
  \fi
}
%    \end{macrocode}
%    \end{macro}
% If you don't have any notes on a sequence section, it seems a shame 
% to open an entry in the textual notes for that section:
%    \begin{macrocode}
\newcommand{\sequencesectiontitlenonotes}[1]{
\par\poemtitlepenalty
   {\poemtitlefont \hbox{\titleindent #1}}\label{#1}
  \nobreak\par\nobreak\afterpoemtitleskip\nobreak
  \ifpoemcontentson
  \literalcontents{\contentsindenttwo{\contentspoemtitlefont #1
~/~\pageref{#1}\par}}
  \fi
}
%    \end{macrocode}
%    \begin{macro}{\sequencefirstsectiontitle}
% The first poem in a sequence is a special case. 
%    \begin{macrocode}
\newcommand{\sequencefirstsectiontitle}[1]{\par\nobreak
   {\poemtitlefont \hbox{{\titleindent #1}}}\label{#1}
  \nobreak\par\nobreak\afterpoemtitleskip\nobreak
   \global\edef\@fulltitle{#1}
   \global\edef\@compoundlabelscratch{#1}
  \ifpoemcontentson
     \literalcontents{\nobreak\contentsindenttwo{\contentspoemtitlefont #1
~/~\pageref{#1}\par}}
  \fi
  \iftextnoteson
     \@poempagetotextnotes{#1}
     \@poemtitletotextnotes{#1}
  \fi
}
%    \end{macrocode}
%    \end{macro}
% The following macros are to kludge around situations where the section 
% title is just a number. Obviously you can't just use that number as 
% the label to hold the page number, since there may be other sequences 
% that are organized the same way, and the label ``I.'' might take 
% several meanings. This macro has two arguments. The first is the 
% title of the section. The second is the title of the sequence as a 
% whole. 
%    \begin{macrocode}
\newcommand{\sequencefirstsectiontitlenocontents}[2]{\par\nobreak
   {\poemtitlefont \hbox{{\titleindent #1}}}\label{#1 #2}
  \nobreak\par\nobreak\afterpoemtitleskip\nobreak
   \global\edef\@fulltitle{#2 \string~ #1}
   \global\edef\@compoundlabelscratch{#1 #2}
  \iftextnoteson
     \@poempagetotextnotes{#1 #2}
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencesectiontitlenocontents}[2]
{\par\poemtitlepenalty\goodbreak
   {\poemtitlefont \hbox{\titleindent #1}}\label{#1 #2}
  \nobreak\par\nobreak\afterpoemtitleskip\nobreak
   \global\edef\@fulltitle{#2 \string~ #1}
   \global\edef\@compoundlabelscratch{#1 #2}
  \iftextnoteson
\immediate\write\textnotes{\string\notespoemclubpenalty}
    \@poempagetotextnotes{#1 #2}
    \@poemtitletotextnotes{#1}
  \fi
}
%    \end{macrocode}
% If the first section of a sequence is a multiple line title, the 
% following macros can handle the special problems that situation poses.
%    \begin{macrocode}
\newcommand{\sequencefirstsectiontitlefirstline}[1]{\par\nobreak
   {\poemtitlefont \hbox{{\titleindent #1}}}\label{#1}
  \nobreak\par\nobreak
   \global\edef\@fulltitle{#1}
   \global\edef\@compoundlabelscratch{#1}
  \ifpoemcontentson
\literalcontents{\nobreak\contentsindenttwo
{\contentspoemtitlefont #1\par\nobreak}}
  \fi
  \iftextnoteson
     \@poempagetotextnotes{#1}
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencefirstsectiontitlemiddleline}[1]{
   {\poemtitlefont \hbox{\titleindent #1}}
  \nobreak\par\nobreak
   \let\@titlesofar=\@fulltitle
   \global\edef\@fulltitle{\@titlesofar\string~#1}
   \let\@compoundsofar=\@compoundlabelscratch
   \global\edef\@compoundlabelscratch{\@compoundsofar #1}
  \ifpoemcontentson
\literalcontents{\nobreak\contentsindentthree{\contentspoemtitlefont 
#1\par\nobreak}}  
  \fi
  \iftextnoteson
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencefirstsectiontitlelastline}[1]{
   {\poemtitlefont \hbox{\titleindent #1}}\label{#1}
   \nobreak\par\nobreak\afterpoemtitleskip\nobreak
   \let\@titlesofar=\@fulltitle
   \global\edef\@fulltitle{\@titlesofar\string~#1}
   \let\@compoundsofar=\@compoundlabelscratch
   \global\edef\@compoundlabelscratch{\@compoundsofar #1}
   \makepoemlabel{\@compoundlabelscratch}
  \ifpoemcontentson
  \literalcontents{\nobreak\contentsindentthree{\contentspoemtitlefont #1
~/~\pageref{#1}\par}}
  \fi
  \iftextnoteson
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencefirstsectiontitlenonotes}[1]{
\par\nobreak\afterpoemtitleskip\nobreak
   {\poemtitlefont \hbox{\titleindent #1}}\label{#1}
  \nobreak\par\nobreak
  \ifpoemcontentson
  \literalcontents{\nobreak\contentsindenttwo{\contentspoemtitlefont #1
~/~\pageref{#1}\par}}
  \fi
}
%    \end{macrocode}

% \begin{macro}{\sequencesectionsubtitle}
% \begin{macro}{\poemsubtitle}
%    \begin{macrocode}
\newcommand{\sequencesectionsubtitle}[1]{{\large \hbox{\titleindent #1}}
  \nobreak\par\nobreak\afterpoemtitleskip\nobreak
}
\newcommand{\poemsubtitle}[1]{\sequencesectionsubtitle{#1}
}
%    \end{macrocode}
%    \end{macro}
%    \end{macro}
% Another kludge for special situations:
%    \begin{macrocode}
\newcommand{\sequencesectiontitleitalicnonotes}[2]
{\par\poemtitlepenalty\goodbreak
   {\poemtitlefont \hbox{\titleindent #1}}\label{#2}
  \nobreak\par\nobreak\afterpoemtitleskip\nobreak  
   \global\edef\@fulltitle{#2}
   \global\edef\@compoundlabelscratch{#2} 
  \ifpoemcontentson
\literalcontents{\contentsindenttwo{\contentspoemtitlefont #1
~/~\pageref{#2}\par}}
  \fi
}
%    \end{macrocode}
% Italic titles require two arguments.
% 
% \begin{macro}{\sequencesectiontitleitalic}
%    \begin{macrocode}
\newcommand{\sequencesectiontitleitalic}[2]
{\par\poemtitlepenalty\goodbreak
   {\poemtitlefont \hbox{\titleindent #1}}\label{#2}
  \nobreak\par\nobreak\afterpoemtitleskip\nobreak  
   \global\edef\@fulltitle{#2}
  \ifpoemcontentson
\literalcontents{\contentsindenttwo{\contentspoemtitlefont #1
~/~\pageref{#2}\par}}
  \fi
  \iftextnoteson
     \immediate\write\textnotes{\string\notespoemclubpenalty}
     \@poempagetotextnotes{#2}
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencesectiontitlefirstlineitalic}[2]
{\par\multilinetitlepenalty\goodbreak
   {\poemtitlefont \hbox{\titleindent #1}}\label{#2}
  \nobreak\par\nobreak
   \global\edef\@fulltitle{#2}
   \global\edef\@compoundlabelscratch{#2}
  \ifpoemcontentson
  \literalcontents{\contentsindenttwo{\contentspoemtitlefont #1\par\nobreak}}
  \fi
  \iftextnoteson
 \immediate\write\textnotes{\string\notespoemclubpenalty}
     \@poempagetotextnotes{#2}
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencesectiontitlebaretitle}[1]
{\par\poemtitlepenalty\goodbreak
   {\poemtitlefont \hbox{\titleindent #1}}
  \nobreak\par\nobreak\afterpoemtitleskip\nobreak
}
%    \end{macrocode}
%    \end{macro}

% For multiple line titles of sequence sections
%    \begin{macrocode}
\newcommand{\sequencesectiontitlefirstline}[1]
{\par\multilinetitlepenalty\goodbreak%\smallskip
   {\poemtitlefont \hbox{\titleindent #1}}\label{#1}
  \nobreak\par\nobreak%\medskip\nobreak
   \global\edef\@fulltitle{#1}
   \global\edef\@compoundlabelscratch{#1}
  \ifpoemcontentson
  \literalcontents{\contentsindenttwo
{\contentssequencetitlefont #1\par\nobreak}}
  \fi
  \iftextnoteson
\immediate\write\textnotes{\string\notespoemclubpenalty}
     \@poempagetotextnotes{#1}
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencesectiontitlemiddleline}[1]{
   {\poemtitlefont \hbox{\titleindent #1}}
  \nobreak\par\nobreak%\medskip\nobreak
   \let\@titlesofar=\@fulltitle
   \global\edef\@fulltitle{\@titlesofar\string~#1}
   \let\@compoundsofar=\@compoundlabelscratch
   \global\edef\@compoundlabelscratch{\@compoundsofar #1}
  \ifpoemcontentson
  \literalcontents{\nobreak\contentsindentthree
{\contentssequencetitlefont #1\par\nobreak}}
  \fi
  \iftextnoteson
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencesectiontitlelastline}[1]{
   {\poemtitlefont \hbox{\titleindent #1}}\label{#1}
  \nobreak\par\nobreak\afterpoemtitleskip\nobreak
   \let\@titlesofar=\@fulltitle
   \global\edef\@fulltitle{\@titlesofar\string~#1}
   \let\@compoundsofar=\@compoundlabelscratch
   \global\edef\@compoundlabelscratch{\@compoundsofar #1}
   \makepoemlabel{\@compoundlabelscratch}
  \ifpoemcontentson
  \literalcontents{\nobreak\contentsindentthree
{\contentspoemtitlefont #1
~/~\pageref{#1}\par}}
  \fi
  \iftextnoteson
     \@poemtitletotextnotes{#1}
  \fi
}
%    \end{macrocode}

% \subsubsection{Subsections of sequences} 
% \begin{macro}{\sequencesubsectiontitle}

% 	Continuing several levels down: macros for setting subsections and 
% subsubsections  of sequences. |\sequencesubsectiontitlenocontents| 
% and its relatives  
% take two arguments. Since the titles of subsections of sequences are 
% often just roman numerals, they don't make good labels for 
% crossreferencing purposes.  The second argument of the macro is for 
% the title of the sequence section (or of the sequence), which enables 
% a unique label for that poem to be generated.
%    \begin{macrocode}
\newcommand{\sequencesubsectiontitle}[1]{
\par\poemtitlepenalty\goodbreak
   {\subsectiontitlefont 
\hbox{\titleindent\titleindent #1}}\label{#1}\par\nobreak
   \afterpoemtitleskip\nobreak 
   \global\edef\@fulltitle{#1}
   \global\edef\@compoundlabelscratch{#1}
  \ifpoemcontentson
  \literalcontents{\nobreak\contentsindentthree{\contentspoemtitlefont #1
~/~\pageref{#1}\par}}
  \fi
  \iftextnoteson
\immediate\write\textnotes{\string\notespoemclubpenalty}
     \@poempagetotextnotes{#1}
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencesubsectiontitlenocontents}[2]{
\par\poemtitlepenalty\goodbreak
   {\large \hbox{\titleindent\titleindent #1}}
   \label{#1 #2}\par\nobreak
   \afterpoemtitleskip\nobreak 
   \global\edef\@fulltitle{#2 \string~ #1}
   \global\edef\@compoundlabelscratch{#1 #2}
  \iftextnoteson
\immediate\write\textnotes{\string\notespoemclubpenalty}
     \@poempagetotextnotes{#1 #2}
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencefirstsubsectiontitlenocontents}[2]{
\par\nobreak
   {\large \hbox{\titleindent\titleindent #1}}\label{#1 #2}\par\nobreak
   \afterpoemtitleskip\nobreak 
   \global\edef\@fulltitle{#2 \string~ #1}
   \global\edef\@compoundlabelscratch{#1 #2}
  \iftextnoteson
     \@poempagetotextnotes{#1 #2}
     \@poemtitletotextnotes{#1} 
  \fi
}
\newcommand{\sequencesubsubsectiontitlenocontents}[2]{
\sequencesubsectiontitlenocontents{#1}{#2}
}
\newcommand{\sequencefirstsubsubsectiontitlenocontents}[2]{
\sequencefirstsubsectiontitlenocontents{#1}{#2}
}
%    \end{macrocode}
%    \end{macro}
%    \begin{macrocode}
\newcommand{\sequencesubsectiontitlefirstline}[1]{
\par\multilinetitlepenalty\goodbreak
   {\subsectiontitlefont 
   \hbox{\titleindent\titleindent#1}}\label{#1}\par\nobreak
   \global\edef\@fulltitle{#1}
   \global\edef\@compoundlabelscratch{#1}
  \ifpoemcontentson
  \literalcontents{\contentsindentthree
{\contentspoemtitlefont #1\par\nobreak}}
  \fi
  \iftextnoteson
     \@poempagetotextnotes{#1}
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencesubsectiontitlemiddleline}[1]{
\par\nobreak
   {\subsectiontitlefont \hbox{\titleindent\titleindent #1}}\par\nobreak
   \let\@titlesofar=\@fulltitle
   \global\edef\@fulltitle{\@titlesofar\string~#1}
   \let\@compoundsofar=\@compoundlabelscratch
   \global\edef\@compoundlabelscratch{\@compoundsofar #1}
  \ifpoemcontentson
  \literalcontents{\nobreak\contentsindentfour
{\contentspoemtitlefont #1\par\nobreak}}
  \fi
  \iftextnoteson
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencesubsectiontitlelastline}[1]{
\par\nobreak
   {\subsectiontitlefont \hbox{\titleindent\titleindent #1}}
   \label{#1}\par\nobreak
   \afterpoemtitleskip\nobreak 
   \let\@titlesofar=\@fulltitle
   \global\edef\@fulltitle{\@titlesofar\string~#1}
   \let\@compoundsofar=\@compoundlabelscratch
   \global\edef\@compoundlabelscratch{\@compoundsofar #1}
   \makepoemlabel{\@compoundlabelscratch}
  \ifpoemcontentson
  \literalcontents{\nobreak\contentsindentfour
{\contentspoemtitlefont #1
~/~\pageref{#1}\par}}
  \fi
  \iftextnoteson
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencefirstsubsectiontitle}[1]{
\par\nobreak
   {\subsectiontitlefont \hbox{\titleindent\titleindent #1}}
   \label{#1}\par\nobreak
   \afterpoemtitleskip\nobreak 
   \global\edef\@fulltitle{#1}
   \global\edef\@compoundlabelscratch{#1}
  \ifpoemcontentson
  \literalcontents{\nobreak\contentsindentthree
{\contentspoemtitlefont #1
~/~\pageref{#1}\par}}
  \fi
  \iftextnoteson
     \@poempagetotextnotes{#1}
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencefirstsubsectiontitlefirstline}[1]{
\par\nobreak
   {\subsectiontitlefont \hbox{\titleindent\titleindent #1}}
   \label{#1}\par\nobreak
   \global\edef\@fulltitle{#1}
   \global\edef\@compoundlabelscratch{#1}
  \ifpoemcontentson
  \literalcontents{\nobreak\contentsindentthree
{\contentspoemtitlefont #1\par\nobreak}}
  \fi
  \iftextnoteson
     \immediate\write\textnotes{\string\par}
     \immediate\write\textnotes{\string\nopagebreak}
     \@poempagetotextnotes{#1}
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencefirstsubsectiontitlemiddleline}[1]{
\par\nobreak
   {\subsectiontitlefont \hbox{\titleindent\titleindent #1}}\par\nobreak
   \let\@titlesofar=\@fulltitle
   \global\edef\@fulltitle{\@titlesofar\string~#1}
   \let\@compoundsofar=\@compoundlabelscratch
   \global\edef\@compoundlabelscratch{\@compoundsofar #1}
  \ifpoemcontentson
  \literalcontents{\nobreak\contentsindentfour
{\contentspoemtitlefont  #1\par\nobreak}}
  \fi
  \iftextnoteson
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\sequencefirstsubsectiontitlelastline}[1]{
\par\nobreak
   {\subsectiontitlefont \hbox{\titleindent\titleindent #1}}
   \label{#1}\par\nobreak
   \afterpoemtitleskip\nobreak 
   \let\@titlesofar=\@fulltitle
   \global\edef\@fulltitle{\@titlesofar\string~#1}
   \let\@compoundsofar=\@compoundlabelscratch
   \global\edef\@compoundlabelscratch{\@compoundsofar #1}
   \makepoemlabel{\@compoundlabelscratch}
  \ifpoemcontentson
  \literalcontents{\nobreak\contentsindentfour
{\contentspoemtitlefont #1
~/~\pageref{#1}\par}}
 \fi
  \iftextnoteson
     \@poemtitletotextnotes{#1}
  \fi
}
%    \end{macrocode}

% Interjections in sequences, as in Robert Penn Warren's \emph{Or Else}.
%    \begin{macrocode}
\newcommand{\interjectiontitlefirstline}[2]{
\par\multilinetitlepenalty%\smallskip
   {\poemtitlefont \hbox{\titleindent\titleindent \emph{#1}}}
   \label{#2}\par\nobreak
\afterpoemtitleskip\nobreak
   \global\edef\@fulltitle{#2}
   \global\edef\@compoundlabelscratch{#2}
  \ifpoemcontentson
  \literalcontents{
\contentsindentthree
{\contentspoemtitlefont \emph{#1}\par\nobreak}}
  \fi
  \iftextnoteson
\immediate\write\textnotes{\string\notespoemclubpenalty}
     \@poempagetotextnotes{#2}
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\interjectiontitlelastline}[1]{
   {\poemtitlefont \hbox{\titleindent\titleindent \emph{#1}}}
   \label{#1}\par\nobreak
   \afterpoemtitleskip\nobreak 
   \let\@titlesofar=\@fulltitle
   \global\edef\@fulltitle{\@titlesofar\string~#1}
   \let\@compoundsofar=\@compoundlabelscratch
   \global\edef\@compoundlabelscratch{\@compoundsofar #1}
   \makepoemlabel{\@compoundlabelscratch}
  \ifpoemcontentson
  \literalcontents{\nobreak\contentsindentfour{\contentspoemtitlefont 
\emph{#1}\/~/~\pageref{#1}\par}}
  \fi
  \iftextnoteson
     \@poemtitletotextnotes{#1}
  \fi
}
\newcommand{\interjectiontitlemiddleline}[1]{\par\nobreak
   {\poemtitlefont \hbox{\titleindent\titleindent #1}}\par\nobreak
   \let\@titlesofar=\@fulltitle
   \global\edef\@fulltitle{\@titlesofar\string~#1}
   \let\@compoundsofar=\@compoundlabelscratch
   \global\edef\@compoundlabelscratch{\@compoundsofar #1}
  \ifpoemcontentson
  \literalcontents{\nobreak\contentsindentfour
{\contentspoemtitlefont \emph{#1}\par\nobreak}}  
  \fi
  \iftextnoteson
     \@poemtitletotextnotes{#1}
  \fi
}
%    \end{macrocode}

% \subsection{Epigraphs, headnotes, attributions, dedications}
% Notice that epigraphs to volumes are handled differently from 
% epigraphs to poems.
% \begin{macro}{\epigraph}
% \begin{macro}{\headnote}
% \begin{macro}{\attribution}
% \begin{macro}{\dedication}
% \begin{macro}{\volumededication}
% \begin{macro}{\volumeepigraph}
% \begin{macro}{\volumeattribution}
%    \begin{macrocode}
\newcommand{\epigraph}[1]{\nopagebreak\afterpoemtitleskip\begin{epigraphquote}
  \emph{#1}\end{epigraphquote}\afterpoemtitleskip\nopagebreak}
\newcommand{\headnote}[1]{\epigraph{#1}}
\newcommand{\attribution}[1]{\nopagebreak\afterpoemtitleskip\begin{epigraphquote}
 {\small\emph{#1}}\end{epigraphquote}\afterpoemtitleskip\nopagebreak}
\newcommand{\dedication}[1]{\nopagebreak\afterpoemtitleskip\begin{epigraphquote}
 \emph{#1}\end{epigraphquote}\afterpoemtitleskip\nopagebreak}
\newcommand{\volumededication}[1]{\par\bigskip\begin{volumetitlepagequote}
  \emph{#1}\end{volumetitlepagequote}}
\newcommand{\volumeepigraph}[1]{\par\bigskip\begin{volumetitlepagequote}
  \emph{#1}\end{volumetitlepagequote}}
\newcommand{\volumeattribution}[1]{\par\smallskip\begin{volumetitlepagequote}
 {\small \emph{#1}}\end{volumetitlepagequote}}
%    \end{macrocode}
%    \end{macro}
%    \end{macro}
%    \end{macro}
%    \end{macro}
%    \end{macro}
%    \end{macro}
%    \end{macro}
%    \subsection{Tools used for making note sections} The main tool is 
% a dirty trick borrowed from John Lavagnino's package for endnotes, 
% \textsf{endnotes}, which allows for writing out literal characters to an 
% external file. The trick involves redefining the space character as 
% the newline character and treating the text of the note as the body of 
% a macro that |\meaning| specifies. The result is that the text is 
% written to the external file in a long ribbon one word wide.
%    \begin{macrocode} 
\def\strip#1>{}
\newcommand{\literaltextnote}[1]{
     \begingroup
        \def\next{#1}%
        \newlinechar='40
        \immediate\write\textnotes{\expandafter\strip\meaning\next}%
     \endgroup
 }
\newcommand{\literalemend}[1]{
     \begingroup
        \def\next{#1}%
        \newlinechar='40
        \immediate\write\emendations{\expandafter\strip\meaning\next}%
     \endgroup
}
\newcommand{\literalexplain}[1]{
     \begingroup
        \def\next{#1}%
        \newlinechar='40
        \immediate\write\explanations{\expandafter\strip\meaning\next}%
     \endgroup
}
\newcommand{\literalcontents}[1]{
     \begingroup
        \def\next{#1}%
        \newlinechar='40
        \immediate\write\poemcontents{\expandafter\strip\meaning\next}%
     \endgroup
}
\newcommand{\literaltextnoteshort}[1]{
        \begingroup
        \def\next{#1}%
        \immediate\write\textnotes{\expandafter\strip\meaning\next}%
     \endgroup}
\newcommand{\literalemendshort}[1]{
        \begingroup
        \def\next{#1}%
        \immediate\write\emendations{\expandafter\strip\meaning\next}%
     \endgroup}
\newcommand{\literalexplainshort}[1]{
        \begingroup
        \def\next{#1}%
        \immediate\write\explanations{\expandafter\strip\meaning\next}%
     \endgroup}
\newcommand{\literalcontentsshort}[1]{
        \begingroup
        \immediate\write\poemcontents{\expandafter\strip\meaning\next}%
     \endgroup}
\newcommand{\sameword}{$\sim$}
\newcommand{\missingpunct}{${}_{\wedge}$}
%    \end{macrocode}	 
% \subsection{Commands to make notes and send info to contents} 
% % \begin{macro}{\textnote}
% The 
% basic |\textnote{}| command, on which everything else is based, has 
% several parts. First, it tests to see whether endnotes or footnotes 
% are required. Second, If endnotes are required, it writes out a little program 
% on the external endnotes file which, when it is read back in when 
% the endnotes are typeset, sets a variable with the value of 
% the page of the line the note is commenting upon and checks to see 
% whether that value is equal to or greater than that of previous notes 
% on that page of notes. Depending upon the outcome of that test, it 
% sets the value of |\mark| with the correct numbers to print the proper 
% running header of the form ``Textual Notes to pp.xx--yy.'' Third, it 
% sends the line number of the line it is a comment upon and the text of 
% the note to the notes section. 
% 
%
% 
%    \begin{macrocode}
\newcommand{\textnote}[1]{
 \iftextnotesatfoot
   \footnotetext[\thelinenumber]{#1}
 \fi
 \iftextnoteson
   \immediate\write
\textnotes{\string\setcounter\string{notepageholdernote\string}
\string{\thepage\string}\string\unskip}
    \immediate\write
\textnotes{\string\ifthenelse\string{\string\value\string{notepageholdernote\string}
>\string\value\string{notepageholdertitle\string}\string}}
    \immediate\write
\textnotes{\string{\string\mark\string{\string\thenotepageholdernote\string}\string}}
    \immediate\write
\textnotes{\string{\string\mark\string{\string\thenotepageholdertitle\string}
\string}\string\unskip}
    \immediate\write\textnotes
{\string\unskip\string\relax\ \thelinenumber :\string~\string\nolinebreak}
    \literaltextnote{#1} 
 \fi
}
%    \end{macrocode}
%    \end{macro}
%    \begin{macro}{\accidental}
% Accidentals: As it is, the command just tests to see whether 
% accidentals are being included or not, and sets the accidental as a 
% textnote if accidentals are being included. It would not be hard to 
% divert accidentals to another external file in order to compile a 
% separate list of accidentals.
%    \begin{macrocode}
\newcommand{\accidental}[1]{
 \ifincludeaccidentals
    \immediate\write\textnotes{\string\unskip\string\nobreak}
\textnote{#1}
\immediate\write\textnotes{\string\unskip\string\nobreak}
 \fi
}
%    \end{macrocode}
%    \end{macro}
%    \begin{macro}{\tsvariant}
%    \begin{macro}{\tsaccidental}
%    Typescript variants. Treated like accidentals. If they are being 
% collected, they are sent to the textual notes. Again, it would not be 
% hard to collect them separately.
%    \begin{macrocode}
\newcommand{\tsvariant}[1]{
 \ifincludetypescripts
   \immediate\write
\textnotes{\string\unskip\string\nobreak}
\textnote{#1}
\immediate\write\textnotes{\string\unskip\string\nobreak}
  \fi
}
\newcommand{\tsaccidental}[1]{\ifincludetypescripts\accidental{#1}\fi}
%    \end{macrocode}
%    \end{macro}
%    \end{macro}
%    \begin{macro}{\tsentry}
% Typescript entries. Allows one to to selectively include or exclude 
% typescript entries from lists of variants.
%    \begin{macrocode}
\newcommand{\tsentry}[1]{\ifincludetypescripts{#1}\fi\unskip}
%    \end{macrocode}
%    \end{macro}
%    \begin{macro}{\sources}
%    |\sources{}| is essentially a |\textnote{}| with no line number 
% and no page checking. Useful for typesetting the sources of the text 
% (hence the name) and for sending literal characters to the endnotes 
% file for other purposes.
%    \begin{macrocode}
\newcommand{\sources}[1]{
\iftextnoteson
    \begingroup
        \newlinechar='40
        \def\next{#1}%
        \immediate\write\textnotes{\expandafter\strip\meaning\next}%
     \endgroup
 \fi
}
%    \end{macrocode}
%    \end{macro}
%    
%    \subsection{Emendations and explanatory notes}
%    The difference between these kinds of notes and ordinary 
% |\textnotes{}| is that they must first test to see whether there have 
% been any emendations or explanatory notes for the poem in question. 
% If there have not been prior notes, then a new paragraph must be 
% opened and the page number and title of the poem set in the note 
% section.
% \begin{macro}{\emendation}
%    \begin{macrocode}
\newcommand{\emendation}[1]{
 \ifnoemendyet
   \firstemendation{#1}
   \global\noemendyetfalse
 \else  
    \ifredundantemendations
      \textnote{#1}
    \fi
    \ifemendationson
   \immediate\write
\emendations{\string\setcounter\string{notepageholdernote\string}
\string{\thepage\string}\string\unskip}
    \immediate\write
\emendations{\string\ifthenelse\string{\string\value\string{notepageholdernote\string}
>\string\value\string{notepageholdertitle\string}\string}}
      \immediate\write
\emendations{\string\unskip\string\relax\ \thelinenumber :\string~\string\nolinebreak}
      \literalemend{{#1}}
      \immediate\write\emendations{\string\leavevmode\string\nolinebreak}
   \fi
 \fi
 }
%    \end{macrocode}
%  \end{macro}
%  This next is an internal command, 
% called by |\emendation|. There's no need to use it explicitly.
%    \begin{macrocode}
\newcommand{\firstemendation}[1]{
  \ifredundantemendations
     \textnote{#1}
  \fi
 \ifemendationson
     \immediate\write\emendations{\string\par}
     \immediate\write
\emendations{\string\argpageref\string{\@compoundlabelscratch\string}}
     \immediate\write
\emendations{\string\setcounter\string{notepageholdertitle\string}
\string{\string\argpageref\string{\@compoundlabelscratch\string}\string}\string\unskip}
     \immediate\write
\emendations{\string\mark\string{\string\thenotepageholdertitle\string}
\string\unskip}
     \immediate\write\emendations{\string\textbf\string{\ \@fulltitle\string}}
     \immediate\write\emendations{\thelinenumber :\string~\string\nolinebreak}
     \literalemend{#1}
 \fi
}
%    \end{macrocode}
%    \begin{macro}{\explanatory}
%    Again, |\firstexplanatory| is internal, called by |\explanatory|.
%    \begin{macrocode}
\newcommand{\explanatory}[1]{
 \ifnoexplainyet
     \firstexplanatory{#1}
     \global\noexplainyetfalse
 \else 
    \ifexplanon
   \immediate\write
\explanations{\string\setcounter\string{notepageholdernote\string}
\string{\thepage\string}\string\unskip}
    \immediate\write
\explanations{\string\ifthenelse\string{\string\value\string{notepageholdernote\string}
>\string\value\string{notepageholdertitle\string}\string}}
      \immediate\write
\explanations{\string\unskip\string\relax\ \thelinenumber :\string~\string\nolinebreak}
      \literalexplain{#1}
      \immediate\write\explanations{\string\leavevmode\string\nolinebreak}
    \fi 
 \fi
}
\newcommand{\firstexplanatory}[1]{
 \ifexplanon
     \immediate\write\explanations{\string\par}
     \immediate\write
\explanations{\string\argpageref\string{\@compoundlabelscratch\string}}
     \immediate\write
\explanations{\string\setcounter\string{notepageholdertitle\string}
\string{\string\argpageref\string{\@compoundlabelscratch\string}\string}\string\unskip}
     \immediate\write
\explanations{\string\mark\string{\string\thenotepageholdertitle\string}\string\unskip}
     \immediate\write\explanations{\string\textbf\string{\ \@fulltitle\string}}
     \immediate\write\explanations{\thelinenumber :\string~\string\nolinebreak}
     \literalexplain{#1}
 \fi
}
%    \end{macrocode}
% \end{macro}
% 

%    
%    \subsection{Embarrassing kludges} Because the dirty trick 
% mentioned above writes out textnotes as a ribbon one word wide, 
% quoted poetry in the notes sections will leave a blank line at the 
% end, which will be interpreted as a paragraph break when the file is 
% read back in by \LaTeX. These kludges correct that problem.
%    \begin{macrocode}
\newcommand{\quotedversecorrectiontextnote}
{\immediate\write
\textnotes{\string\par\string\noindent\string\kern-3pt}}% a bad kludge
\newcommand{\quotedversecorrectionemendation}
{\immediate\write
\emendations{\string\par\string\noindent\string\kern-3pt}}% a bad kludge
\newcommand{\quotedversecorrectionexplanatory}
{\immediate\write
\explanations{\string\par\string\noindent\string\kern-3pt}}% a bad kludge
%    \end{macrocode}

% 
% \subsection{Finishing up} 
% \begin{macro}{\finish}
% The  |\finish| macro  reads in the notes, 
% the index (previously created from your .aux file by MakeIndex), and 
% the contents sections and sets them. The notes sections send page 
% information to the contents file as they are set. Then the page 
% information for the index is sent to the contents file. Finally the 
% contents file is closed and read in. If you have an editor's 
% introduction or a list of abbreviations, copy this macro, uncomment out the commented out lines, 
% and issue it all as a |\renewcommand| for |\finish|. Be sure to 
% have the command |\label{editorsintroduction}| on the first page of 
% your introduction.

% It usually takes three 
% passes to get the table of contents and the index files correct. 
% 
% The consequence of doing using |\finish| is that the table of
% contents comes last.  There are ways around this that are described
% earlier.  The notes sections are all typeset in the |\small| size.
% 
%    \begin{macrocode}
\newcommand{\finish}{
\small\bf \hyphenchar\font=45
\small\it \hyphenchar\font=45
\small\rm \hyphenchar\font=45

\ifemendationson
   \newpage
   \immediate\closeout\emendations
   \input \jobname.emd 
\fi
\iftextnoteson
   \newpage
   \immediate\closeout\textnotes
   \input \jobname.ent
   \newpage
 \fi
 \ifexplanon
      \immediate\closeout\explanations
      \input \jobname.enx
      \newpage
 \fi
 \ifindexingon
 \printindex
 \fi
 \ifpoemcontentson
%      \immediate\write\poemcontents{\string\vspace{10pt}\string\par}
%      \immediate\write
% \poemcontents{\string\contentspoemtitlefont\ Introduction to the Notes}
%      \immediate\write
% \poemcontents{\string~ /  \string~\ \string\pageref{editorsintroduction} \string\par}
%      \immediate\write\poemcontents{\string\par \string\smallskip}
%      \immediate\write\poemcontents{\string\contentspoemtitlefont\ Abbreviations}
%      \immediate\write
% \poemcontents{\string~ /  \string~\ \string\pageref{abbreviations} \string\par}
%      \immediate\write\poemcontents{\string\par \string\smallskip}
     \ifemendationson
      \immediate\write\poemcontents{\string\contentspoemtitlefont\ Emendations}
      \immediate\write
\poemcontents{\string~ /  \string~\ \string\pageref{emendationnotes} \string\par}
      \immediate\write\poemcontents{\string\par \string\smallskip}
     \fi
     \iftextnoteson
      \immediate\write\poemcontents{\string\contentspoemtitlefont\ Textual Notes}
      \immediate\write
\poemcontents{\string~ /  \string~\ \string\pageref{textualnotes} \string\par}
      \immediate\write\poemcontents{\string\par \string\smallskip}
     \fi
     \ifexplanon 
       \immediate\write
\poemcontents{\string\contentspoemtitlefont\ Explanatory Notes}
       \immediate\write
\poemcontents{\string~ /  \string~\ \string\pageref{explanatorynotes}}
     \fi
     \ifindexingon
        \immediate\write\poemcontents{\string\par \string\smallskip}
        \immediate\write
\poemcontents{\string\contentspoemtitlefont\ Index of Titles and First Lines}
        \immediate\write
\poemcontents{\string~ /  \string~\ \string\pageref{indexpage}\string\par}
     \fi
    \immediate\closeout\poemcontents
    \input \jobname.ctn
 \fi
 \clearpage
\thispagestyle{volumetitlestyle}
\vspace{106pt}
\begin{center}
{\poemtitlefont Note}
\end{center}

\noindent The symbol * is used to indicate a space between sections of a poem 
wherever such spaces are lost in pagination.
\cleardoublepage
}
%    \end{macrocode}
% \end{macro}

% \subsection{Visual formatting} The ideal in \LaTeX\ is to separate 
% content markup and formatting as completely as possible. In the text 
% itself you simply mark the logical units (a poem, a title, a stanza, 
% a textual note), and a header program like this interprets the 
% meaning of those terms typographically. However, one still winds up 
% having to do some visual formatting. Sometimes you have to enlarge or 
% shrink a page by one line in order to avoid an intractable widow or 
% club line, and when one does so one must be careful to do the same to 
% the other member of the two-page spread of which that page is a part. 
% These commands enable one to wiggle pagelength enough to handle these 
% problems.
%    \begin{macrocode}
\newcommand{\longpage}{\enlargethispage{\baselineskip}}
\newcommand{\shortpage}{\enlargethispage{-\baselineskip}}
%    \end{macrocode}
%    
%    \subsection{Environments: poem, and stanza} Here are definitions 
% of the poem and stanza environments, and of the |\verseline|  and 
% |\stanzalinestraddle| macros.
% \begin{macro}{stanza}
% Page breaks are slightly encouraged in stanza breaks. Notice that 
% entering a stanza sets the mark to |\relax| and leaving it sets the 
% mark to *. If you want to use some other symbol for this purpose, put 
% it here.
%    \begin{macrocode}
\newenvironment{stanza}{\penalty-100\instanzatrue\mark{\relax}}
 {\nobreak\mark{*}\nobreak\incrementlinenumber
\nobreak
  \instanzafalse
   
  \stanzaskip
}

\newenvironment{marginenvironment}{}{}
\newcommand{\stanzalinestraddle}
    {\begin{stanza}\addtocounter{linenumber}{-1}
    \addtocounter{printlineindex}{-1}
    }
%    \end{macrocode}
%    \end{macro}
% The poem environment. The little trick about setting the language 
% number is designed to suppress automatic hyphenation in the poem 
% environment. The booleans tell the |\emendation{}| and 
% |\explanatory{}| macros that there have not yet been emendations or 
% explanatory notes for this poem. The little trick with |\mark| sets 
% the value of |\mark| to * if the current location is in a poem but not 
% in a stanza (which is to say, in a stanza break). The |\pagestyle| for 
% poetry sets the value of |\mark| in the footer, which is * if the page 
% break happens at a stanza break, and |\relax| if the page break 
% happens anywhere else.
% \begin{macro}{poem}
%    \begin{macrocode}
\newenvironment{poem}{\raggedright
     \language=255%no hyphenation in verse
     \noemendyettrue
     \noexplainyettrue
     \setcounter{linenumber}{0}\setcounter{printlineindex}{0}
     \nobreak\begin{verse}   
     \inpoemtrue\nobreak\mark{\relax}}{\end{verse}
     \inpoemfalse\mark{\relax}
     \goodbreak\afterpoemskip%\bigskip
     }
%    \end{macrocode}
%    \end{macro}
%    \subsection{Environments: main title page, divider pages}
% 	 Environments for the main title page, and for the divider pages for 
% 	 individual volumes in a Collected Poems.
% 	 \begin{macro}{volumetitlepage}
% 	 \begin{macro}{maintitlepage}
% 	 \begin{macro}{booksectionpage}
%    \begin{macrocode}
\newenvironment{volumetitlepage}
{\par\clearpage{\pagestyle{volumetitlestyle}\cleardoublepage}
\thispagestyle{volumetitlestyle}}
    {\newpage\thispagestyle{volumetitlestyle}
	\cleardoublepage\thispagestyle{volumefirststyle}}
\newenvironment{maintitlepage}
{\par\cleardoublepage\thispagestyle{volumetitlestyle}
}{\newpage\thispagestyle{volumetitlestyle}\cleardoublepage}
\newenvironment{booksectionpage}
{\par\newpage\thispagestyle{volumetitlestyle}}{\newpage}
%    \end{macrocode}
%    \end{macro}
%    \end{macro}
%    \end{macro}
%  \subsection{Special environments: cjquotation and theindex}  
% An environment for special prose quotations within verse
% as in ``Chief Joseph of the Nez Perce''
% 
% \goodbreak
% 
% \begin{macro}{cjquotation}
%    \begin{macrocode}
\makeatletter
\newenvironment{cjquotation}
                {\tolerance=2000%
                \vspace{-\bigskipamount}
               \restorelinenumber
               \language=255
               \noindent\relax
               \list{}{\listparindent 0em%
                        \itemindent 0em%
                        \rightmargin 2em%
                        \leftmargin 2em%
                        \topsep 0em%
                        \parskip 0em%
                        \itemindent    \listparindent
                        \rightmargin   \leftmargin
                        \parsep        \z@ \@plus\p@}%
                \item[]
                }
               {\endlist}
\makeatother


\makeatletter
%    \end{macrocode}
%    \end{macro}
%    \begin{macro}{theindex}
% And the environment for the index:
%    \begin{macrocode}
\renewenvironment{theindex}
     {{\par\clearpage{\pagestyle{volumetitlestyle}\cleardoublepage}
     \thispagestyle{volumetitlestyle}}
     \makeatletter
     \def\@idxitem{\par\hangindent 1em}
     \makeatother
\fancyhead[RO,LE]{{\small\textrm{\thepage}}}
\fancyhead[CO]{{\small{\em Index of Titles and First Lines}}}
\fancyhead[CE]{{\small{\em Index of Titles and First Lines}}}
\fancyfoot{}
     \label{indexpage}
     \lefthyphenmin=2\tolerance=500\language=0
     \normalfont \backmattertextfont
               \raggedright
                \begin{multicols}
{2}[\backmattersink\begin{center}{\normalfont 
\backmatterheaderfont INDEX OF TITLES AND FIRST LINES}\end{center}
\backmatterafterheadersink]%
                \let\item\@idxitem}
               {\end{multicols}\clearpage}
\makeatother
%    \end{macrocode}
%    \end{macro}
% Finally, some other miscellaneous environments.
%    \begin{macrocode}
\newenvironment{epigraphquote}{\list{}{\rightmargin 1.5em%
                                       \leftmargin  1.5em%
                                       \topsep 0pt%
                                       \partopsep 0pt%
                                       \listparindent 0pt%
                                       }%
                \item\relax}
               {\endlist}
\newenvironment{volumetitlepagequote}{\list{}{\rightmargin \voladditionalamount%
                                              \leftmargin \voladditionalamount%                                             
                                       \topsep 0pt%
                                       \partopsep 0pt%
                                       \listparindent 0pt
                                       }%
                \item\relax}
               {\endlist}
%    \end{macrocode}			   
% \Finale
\endinput			   