summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/poemscol
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-05-23 20:48:49 +0000
committerKarl Berry <karl@freefriends.org>2006-05-23 20:48:49 +0000
commita0656ca84ce9566ca07f791707f6f26d7e6942c8 (patch)
tree250cc8ca9a1ece9a2098d932be59d8d9988293f6 /Master/texmf-dist/source/latex/poemscol
parent48c9a8207e08e743610a9b7eefb304de26b1cf57 (diff)
poemscol update
git-svn-id: svn://tug.org/texlive/trunk@1584 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/poemscol')
-rw-r--r--Master/texmf-dist/source/latex/poemscol/poemscol.dtx1014
1 files changed, 705 insertions, 309 deletions
diff --git a/Master/texmf-dist/source/latex/poemscol/poemscol.dtx b/Master/texmf-dist/source/latex/poemscol/poemscol.dtx
index 09877adbdae..90f00abd417 100644
--- a/Master/texmf-dist/source/latex/poemscol/poemscol.dtx
+++ b/Master/texmf-dist/source/latex/poemscol/poemscol.dtx
@@ -18,7 +18,7 @@
% \iffalse
%<package>\NeedsTeXFormat{LaTeX2e}[1997/12/01]
%<package>\ProvidesPackage{poemscol}
-%<package> [2005/10/05 v2.391 poemscol file]
+%<package> [2006/04/25 v2.49 poemscol file]
%
%<*driver>
\documentclass{ltxdoc}
@@ -32,7 +32,7 @@
%</driver>
% \fi
%
-% \CheckSum{5214}
+% \CheckSum{5584}
%
% \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
@@ -135,8 +135,42 @@
% than marginpars.}
% \changes{v2.39}{2005/9/07}{Left a DeclareOption hanging in version
% 2.38. Fixed that.}
-% \changes{v2.391}{2005/9/07}{Corrections to user's guide.}
-%
+% \changes{v2.391}{2005/10/06}{Corrections to user's guide.}
+% \changes{v2.392}{2005/10/13}{More corrections to user's guide.}
+% \changes{v2.394}{2005/12/10}{More corrections to user's guide.}
+% \changes{v2.4}{2006/02/25}{Commands to make new kinds of endnotes
+% also make notes for line numbered prose sections and for prose
+% sections with paragraph and sentence numbering.}
+% \changes{v2.41}{2006/03/02}{Fixed a bug in line numbers of new
+% kinds of prose note.}
+% \changes{v2.42}{2006/03/04}{Fixed error in handling conditionals when
+% setting prose numbered by sentence and paragraph.}
+% \changes{v2.43}{2006/03/06}{Notes in prose numbered by sentence
+% and paragraph number can refer only to the sentence number even
+% when paragraphs are also being counted.}
+% \changes{v2.44}{2006/03/07}{Fixed a bug which caused new kinds of
+% endnotes in prose sections to add unwanted white space to the
+% output.}
+% \changes{v2.45}{2006/04/08}{Use of sidepar in v2.38 introduced a
+% problem, causing line numbers sometimes to drift up a point.
+% Changed commands for putting verse line numbers, but not paragraph and
+% sentence numbers, to use marginpars again.}
+% \changes{v2.46}{2006/04/10}{Changed definition of sidepar so that
+% it uses struts to find the depth of the line, restored line number
+% commands to use sidepar and its variants.}
+% \changes{v2.47}{2006/04/12}{Changed name of sidepar to
+% pcmclsidepar to avoid conflicts with the sidepar command from the
+% memoir class, since they are no longer exactly the same. Added
+% commands to put a marginal reference to the notes section in the
+% margins of poem titles.}
+% \changes{v2.48}{2006/04/13}{Added more general form of the
+% commands to put a marginal reference to the notes section in the
+% margins of poem titles.}
+% \changes{v2.49}{2006/04/25}{Changed marginal reference command to
+% use marginpar rather than pmclsidepar (alas, it still adds vertical
+% white space after the title with pmclsidepar). Added marginal
+% reference commands for sequences and sequence sections. Fixed
+% errors in manual. }
% \GetFileInfo{poemscol.sty}
%
% \DoNotIndex{\newcommand,\newenvironment,\def,\edef,\else,\renewcommand,\makeatletter,\makeatother}
@@ -172,13 +206,13 @@
% \textsc, \unskip}
% \setcounter{IndexColumns}{2}
% \MakeShortVerb{|}
-% \def\fileversion{2.391}
-% \def\filedate{5 October 2005}
-% \def\docdate{5 October 2005}
+% \def\fileversion{2.49}
+% \def\filedate{9 May 2006}
+% \def\docdate{9 May 2006}
% \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{October 5, 2005}
+% \date{May 9, 2006}
% \maketitle
% \begin{abstract}
% \textsf{poemscol} provides macros for \LaTeX\ for setting
@@ -294,13 +328,17 @@
% \section{Dependencies and compatibility with other packages}
%
% \textsf{poemscol} depends upon several other packages, which you
-% should be sure you have in your preamble and search path:
+% should be sure you have in your preamble and search path:
% \textsf{fancyhdr} for managing the running headers, \textsf{makeidx}
% and \textsf{multicol} for managing the index, \textsf{geometry}, and
-% \textsf{ifthen} and \textsf{keyval} to simplify page geometry.
-% 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.
+% \textsf{ifthen} and \textsf{keyval} to simplify page geometry. If
+% you are using the |\JHpoemtitle| alternate form of the |\poemtitle|
+% command, you need to add \textsf{mparhack} to your package list, to
+% make sure that the marginal references |\JHpoemtitle| adds appear on
+% the correct side of the page. 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{~Prose sections}
@@ -352,9 +390,17 @@
% |\makeverselinenumbers|. Because the counter ``linenumber'' has
% been changed to ``verselinenumber,'' you must use
% |\global\verselinenumbersfalse| to turn off line numbering, rather
-% than |\global\linenumbersfalse| as before. You will probably need
-% to change only one line to make files from prior versions of
-% \textsf{poemscol} run.
+% than |\global\linenumbersfalse| as before.
+%
+% Up to version 2.44 \textsf{poemscol} borrowed the code for
+% |\sidepar| non-floating marginal paragraphs from the memoir class,
+% and also made |\leftsidepar| and |\rightsidepar| commands on their
+% model. Version 2.46 modified Peter Wilson's original code for
+% |\sidepar|, so therefore I have changed the names of |\sidepar|,
+% |\leftsidepar|, and |\rightsidepar| to |\pmclsidepar|,
+% |\pmclleftsidepar| and |\pmclrightsidepar| respectively. If you
+% used any of these commands in your files, you will need to change
+% their names.
%
% \subsection{~Incompatibility with \textsf{memoir} and \textsf{verse}}
% Unfortunately, \textsf{poemscol} is not compatible with the
@@ -539,7 +585,6 @@
% numbering off, issue |\global\verselinenumbersfalse|. To turn it
% back on, issue |\makeverselinenumbers|.
%
-%
% \DescribeMacro{\verselinenumberstoright}
% \DescribeMacro{\verselinenumberstoleft}
% \DescribeMacro{\verselinenumbersswitch}
@@ -549,14 +594,22 @@
% |\verselinenumberstoleft| in your preamble.
% |\verselinenumberstoright| puts the line numbers in the right
% margin. (These two commands use non-floating marginal note macros
-% derived from the \textsf{memoir} class, |\leftsidepar| and
-% |\rightsidepar|, respectively.) If you wish them to appear in the
-% outer margins, issue |\verselinenumbersouter| in your preamble. If
-% you want the line numbers to appear in the inner margins, issue
-% |\verselinenumbersgutter| in your preamble. (These two commands use
-% |\sidepar|, from the \textsf{memoir} class.) You can adjust the
-% distance between the marginal line number and the text with
-% |\setlength{\marginparsep}{}|.
+% derived from the \textsf{memoir} class, |\pmclleftsidepar| and
+% |\pmclrightsidepar|, respectively.) If you wish them to appear in
+% the outer margins, issue |\verselinenumbersouter| in your preamble.
+% If you want the line numbers to appear in the inner margins, issue
+% |\verselinenumbersgutter| in your preamble. (These two commands use
+% |\pmclsidepar|, derived from |\sidepar| from the \textsf{memoir}
+% class, but modified by Dan Leucking.) You can adjust the distance
+% between the marginal line number and the text with
+% |\setlength{\marginparsep}{}|.The default value for |\marginparsep|
+% is 18pt, and the default value for the width of the box in which
+% the line numbers are set, |\marginparwidth|, is 10 pt.
+%
+% The line numbers should print on the baseline. You can adjust them
+% to move them up or down by changing the value of a length called
+% |\pmclsideparvshift|. The default value is
+% |\setlength{\pmclsideparvshift}{0ex}|.
%
% \subsection{~Special features}
% \DescribeMacro{\linebend} \textsf{poemscol} automatically runs over
@@ -606,7 +659,7 @@
% than the run over portion of long ``bent'' lines are indented, so
% that the two cases can be visually distinguished. By default, the
% length of |\verseindent| is 2em. To change it, say to 3em, issue
-% |\setlength{\verseindent}{3em}|
+% |\renewcommand{\verseindent}{\hspace{3em}}|
%
%
% \DescribeMacro{\brokenline}
@@ -625,6 +678,7 @@
% 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}
@@ -666,7 +720,6 @@
% the beginning of runover lines with |\startverseline|.
%
% \DescribeMacro{\startverseline}
-% \DescribeMacro{\tweakstartverseline}
% If you begin a verse line with |\startverseline| the line number
% will be set level with the beginning of the line rather than with
% the end. This is useful, for instance, if you want to ensure that
@@ -674,12 +727,18 @@
% beginning of the line. You can, if you don't want to keep track of
% where runover lines are, start every line with |\startverseline|.
%
-% Rather than setting the line number of every runover line level
-% with the beginning of the line, it may make more sense for you to
-% set the line number level with the beginning in cases where the
-% line number is to the left, and level with the end in cases where
-% the line number is to the right. To do this, issue
-% |\tweakstartverseline| in your preamble.
+% \DescribeMacro{\tweakstartverseline}
+% Rather than setting the line number of every runover line level with
+% the beginning of the line, it may make more sense for you to set the
+% line number level with the beginning in cases where the line number
+% is to the left, and level with the end in cases where the line
+% number is to the right. You might want to do this, for instance, if
+% you have decided to set all the verse lines at the outer margin (by
+% issuing |\verselinenumbersouter| in your preamble), or have decided to
+% set all the verse lines at the inner margin (by issuing
+% |\verselinenumbersgutter| in your preamble). To ensure that
+% |\startverseline| does this, issue |\tweakstartverseline| in your
+% preamble.
%
% \DescribeMacro{\stanzalinestraddle}
% Some poets (such as Robert Penn Warren) occasionally introduce a
@@ -709,7 +768,7 @@
% between a verse environment that indents runover lines and a verse
% environment that flushes runover lines to the right. I have seen
% examples of this kind of environment from Markus Kohm and Christian
-% Ebert, but so far they don't play well with \textsf{poemscol}
+% Ebert, but so far I haven't been able to persuade them to play well with \textsf{poemscol}
%
% \DescribeMacro{\poemlinelabel} \label{poemlinelabel} |\poemlinelabel{}| enables crossreferences
% by line number. To make a line label, issue |\poemlinelabel{text of label}|
@@ -723,20 +782,24 @@
% number of the page on which the label appears.
%
% \section{Making a table of contents}
-% \DescribeMacro{\makepoemcontents} I found the normal \LaTeX\ macros
-% for making tables of contents unsuited to poetry, so I have
-% provided my own. 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 may 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.) |\makepoemcontents| takes an optional argument, which sets the
-% page number for the table of contents. If your publisher wishes to add some
-% front matter so that the contents will appear on page vii, you should issue
-% |\makepoemcontents{7}|.
+% \DescribeMacro{\makepoemcontents}
+% I found the normal \LaTeX\ macros for making tables of contents
+% unsuited to poetry, so I have provided my own. To make a table of
+% contents for your poems, issue |\makepoemcontents|. It might seem
+% as though you would want to issue this command in your preamble. In
+% fact it is better, for reasons explained below, to issue it
+% immediately after issuing the |\putpoemcontents|, the command which
+% inputs and typesets a table of contents from a prior run.
+% Information for your table of contents will be written to an
+% external file with the extension .ctn. You may 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.) |\makepoemcontents| takes an optional argument, which
+% sets the page number for the table of contents. If your publisher
+% wishes to add some front matter so that the contents will appear on
+% page vii, you should issue |\makepoemcontents{7}|.
% All of the commands that generate lines in the table of contents are
% somewhat messy and somewhat rigid, but you can modify them if you
@@ -745,14 +808,14 @@
% volume title, a poem title, or something else), then the title
% itself. If the entry is for a poem, for a section of a poem, or for
% a section of a poetic sequence, a slash follows the title, followed
-% by the page number. If you wish to give \emph{all} your entries a different
-% look altogether,
-% modify the |\c@ntentsinfo| macro below. To change the appearance of
-% a \emph{particular} kind of entry (for all sequences of poems, for
-% instance), go to the definition of the title of that kind of entry
-% (e.g. |\sequencetitle|) below, find the line where it calls the
-% |\c@ntentsinfo| macro, and change the arguments to that macro to
-% suit you.
+% by the page number. If you wish to give \emph{all} your entries a
+% different look altogether, modify the |\c@ntentsinfo| macro below
+% (see section \ref{poemtitlecode}, page \pageref{poemtitlecode}. To
+% change the appearance of a \emph{particular} kind of entry (for all
+% sequences of poems, for instance), go to the definition of the title
+% of that kind of entry (e.g. |\sequencetitle|) below, find the line
+% where it calls the |\c@ntentsinfo| macro, and change the arguments
+% to that macro to suit you.
%
%\DescribeMacro{\setcontentsleaders} By default the title and the page
% are separated by a slash (actually by |~/~|). If you wish to change
@@ -761,25 +824,27 @@
% |\setcontentsleaders{\poemdotfill}|, which will flush the number to
% the right margin, and insert leading dots up to the number.
%
-% \DescribeMacro{\putpoemcontents} |\putpoemcontents| will input the
-% table of contents file if it exists, and complain on your log file
-% if it does not. Because the table of contents uses a special page
-% style and special fonts |\putpoemcontents| restores the default
-% fancy page style once it has input the contents, and restores
-% |\normalfont| as well. Be sure to reset the style of page numbering
-% (from |\pagenumbering{roman}| to |\pagenumbering{arabic}|) after
-% issuing |\putpoemcontents|, since when you read in the external file
-% created by |\makepoemcontents| the page numbering will be set to
-% roman. The command |\resetpagestyle| (which is called by
-% |\putpoemcontents|) will reset the fancy page style to that used in
-% the main body of the volume, but it won't change the page numbering
-% to arabic, in case there is some frontmatter between the contents
-% and the main text, so you should be sure to do so yourself. If you
-% neglect to issue |\pagenumbering{arabic}| before you begin to get to
-% your poems your page numbering will remain in roman numerals. The
-% notes sections use the page numbers from the poem to construct
-% running headers of the form ``Notes to pp.~xx--yy,'' and if those
-% numbers are roman numerals you will get the infamous ``Missing
+% \DescribeMacro{\putpoemcontents}\label{putpoemcontents}
+% |\putpoemcontents| will input the table of contents file if it
+% exists, and complain on your log file if it does not. Because the
+% table of contents uses a special page style and special fonts
+% |\putpoemcontents| restores the default fancy page style once it has
+% input the contents, and restores |\normalfont| as well. Be sure to
+% reset the style of page numbering (from |\pagenumbering{roman}| to
+% |\pagenumbering{arabic}|) after issuing |\putpoemcontents|, since
+% when you read in the external file created by |\makepoemcontents|
+% the page numbering will be set to roman. The command
+% |\resetpagestyle| (which is called by |\putpoemcontents|) will reset
+% the fancy page style to that used in the main body of the volume,
+% but it won't change the page numbering to arabic, in case there is
+% some frontmatter between the contents and the main text, so you
+% should be sure to do so yourself. If you neglect to issue
+% |\pagenumbering{arabic}| before you begin to get to your poems your
+% page numbering will remain in roman numerals. The notes sections
+% use the page numbers from the poem to construct running headers of
+% the form ``Notes to pp.~xx--yy.'' If those numbers are roman
+% numerals rather than arabic ones, \textsf{poemscol} will not
+% recognize them as numbers, and you will get the infamous ``Missing
% Number'' error that puzzles so many users of \LaTeX.
%
% Because |\putpoemcontents| uses the table of contents file from a
@@ -798,15 +863,18 @@
% contents. |\putpoemindex| inputs the formatted index, and adds an entry
% for it into the table of contents.
%
-% \begin{sloppypar}\DescribeMacro{\puttextnotes} |\puttextnotes|,
-% |\putemendations|, |\putexplanatory|, like|\putpoemindex|, input the
-% formatted notes sections, and put entries for them into your table
-% of contents. As with |\putpoemindex|, you will have to run \LaTeX\ again to set the table of
-% contents properly. The first run sets a label to find the page
-% number to add to the table of contents, and the second run actually
-% sets the table of contents. (These commands are described below, in section
-% \ref{putexternalfiles}.) All of these commands also restore normal
-% hyphenation. \end{sloppypar}
+% \begin{sloppypar}\DescribeMacro{\puttextnotes}
+% \DescribeMacro{\putemendations}
+% \DescribeMacro{\putexplanatory}
+% |\puttextnotes|, and its siblings |\putemendations| and
+% |\putexplanatory|, like |\putpoemindex|, input the formatted notes
+% sections, and put entries for them into your table of contents. As
+% with |\putpoemindex|, you will have to run \LaTeX\ again to set the
+% table of contents properly. The first run sets a label to find the
+% page number to add to the table of contents, and the second run
+% actually sets the table of contents. (These commands are described
+% below, in section \ref{putexternalfiles}.) All of these commands
+% also restore normal hyphenation. \end{sloppypar}
%
% \DescribeMacro{\finish} Rather than issuing |\putpoemcontents| in
% the proper place, and |\puttextnotes| and its siblings in their
@@ -820,7 +888,9 @@
% 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.
-% This command is deprecated now.
+% This command is deprecated now. But I have retained it, since the
+% few users who gave me their opinions of the matter told me that
+% they preferred to use |\finish| than |\puttextnotes|.
%
%
%
@@ -869,22 +939,28 @@
% recto page. These divider pages have special
% page styles, with no page numbers and no running headers.
%
+% \begin{sloppypar}
% \DescribeMacro{\wholebooktitle} \DescribeMacro{\volumetitle}
% \DescribeMacro{\volumetitlefirstline}
% \DescribeMacro{\volumetitlemiddleline}
-% \DescribeMacro{\volumetitlelastline} \DescribeMacro{\volumesubtitle}
-% \DescribeMacro{\volumesectiontitle} |\wholebooktitle{}| is for the
-% title of the entire collection. The |\volumetitle{}|,
-% |\volumetitlefirstline{}|, |\volumetitlemiddleline|, 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{\volumetitlelastline}
+% \DescribeMacro{\volumesubtitle}
+% \DescribeMacro{\volumesectiontitle}
+% |\wholebooktitle{}| is for the title of the entire collection.
+% |\volumetitle{}| is for the title of an individual volume within a
+% Collected Poems. The |\volumetitlefirstline{}|,
+% |\volumetitlemiddleline{}|, and |\volumetitlelastline{}| macros are
+% for multi-line titles of volumes gathered into the collection. (Use
+% these last commands if you want to specify how a long title is
+% broken up both in the text and in the table of contents.
+% \textsf{poemscol} will break up long titles on its own anyway, but
+% you might not be happy with how it breaks up the lines.)
+% |\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.\end{sloppypar}
%
% \DescribeMacro{\volumeepigraph}
% \DescribeMacro{\volumeattribution}
@@ -910,7 +986,7 @@
% \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 |\puttextnotes|, |\putexplanatory|, or |\putemendations| or at
+% with |\puttextnotes|, |\putexplanatory|, or |\putemendations|, or at
% the end (if you use the |\finish| command).
%
% To collect emendations, issue |\makeemendations| in your preamble.
@@ -918,7 +994,7 @@
% 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
+% title of each section (e.g. Explanatory Notes) and for modifying the
% running headers of the notes sections to xx--yy format (e.g.
% ``Explanatory Notes to pp.~55--7'').
%
@@ -944,6 +1020,7 @@
% canto names or numbers, setting the poem 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
@@ -989,22 +1066,21 @@
% 214, this is to say, the output in the textual notes would be:
% 214--218: lemma] rest of note.
%
-% \begin{sloppypar}
-% It seems clumsy to count the lines
-% referred to by a note, especially since you don't have to count
-% lines to set where the note begins.
-% A more sophisticated way, and one which involves no counting, is to
-% make a unique poem line label for the last line of the range by
-% issuing |\poemlinelabel{some unique label}| just after the
-% |\verseline| or |\end{stanza}| that ends the range. (To use
-% |\poemlinelabel| see section \ref{poemlinelabel}.) Then put the
-% text of the label into the optional argument of |\textnote| as
-% follows: |\textnote[some unique label]{lemma]rest of note}|. This
-% is the preferred method. The line-counting method is deprecated,
-% but retained for backwards compatibility with earlier
-% versions. If you use the label method, you will have to run your
-% file through \LaTeX\ twice, once to define the labels, and once to
-% set the text.\end{sloppypar}
+% \begin{sloppypar} It seems clumsy to count the lines referred to by
+% a note, especially since you don't have to count lines to set where
+% the note begins. A more sophisticated way, and one which involves
+% no counting, is to make a unique poem line label for the last line
+% of the range by issuing |\poemlinelabel{some unique label}| just
+% after the |\verseline| or |\end{stanza}| that ends the range. (To
+% use |\poemlinelabel| see section \ref{poemlinelabel}.) Then, back
+% after the |\verseline| or |\end{stanza}| command that closes the
+% first line of the range, put the text of the label into the optional
+% argument of |\textnote| as follows: |\textnote[some unique label]{lemma]rest of note}|.
+% This is the preferred method. The line-counting method is
+% deprecated, but retained for backwards compatibility with earlier
+% versions. If you use the label method, you will have to run your
+% file through \LaTeX\ twice, once to define the labels, and once to
+% set the text.\end{sloppypar}
%
% One advantage of using an optional argument to specify line ranges
% in notes is that nested or overlapping lemmas, or lemmas that
@@ -1120,9 +1196,9 @@
%
% You can
% mark individual variants with |\tsentry{}| in the arguments to the
-% |\explanatory{}| and |\emendation{}| commands, and
-% |\tsentry| will behave normally in any endnote or footnote section
-% you define using |\definenewnotetype| as well.
+% |\explanatory{}| and |\emendation{}| commands as well, and
+% |\tsentry| will also behave normally in any endnote or footnote section
+% you define using |\definenewnotetype|.
%
% \textsf{poemscol} does not provide for a separate backmatter section
% for typescript variants, but it would be trivial to construct one,
@@ -1151,7 +1227,9 @@
% writing literal, unexpanded text on the file (as
% |\literaltextnote{}| does on the textnotes file), and for the
% note command that sends the actual textual note (line number and
-% all) to the section (e.g. |\mynote{}|). These commands will always be
+% all) to the section (e.g. |\mynote{}|), also the command to write
+% notes in line-numbered prose (e.g. |\prosemynote{}|) or prose
+% numbered by paragraph and sentence (e.g. |\pmmynote{}|). These commands will always be
% singular.
% \item The name of the |\put| command (e.g. |\putmynotes|) which closes
% the external file for the notes section, reads it back in to your
@@ -1174,12 +1252,22 @@
%
% So, for instance,
% |\definenewnotetype{xyznote}{xyz}{Xyznotes}{XYZNOTES}| creates the
-% booleans |\ifxyznoteson| and |\ifnoxyznoteyet|, the commands
-% |\literalxyznote| and |\xyznote|, (and, although you don't ever
+% booleans |\ifxyznoteson| and |\ifnoxyznoteyet|, the commands |\xyznote|,
+% |\literalxyznote|, |\prosexyznote|, |\pmxyznote|, and |\putxyznotes| (and, although you don't ever
% have to use it explicitly, |\firstxyznote|) the output channel xyznotes,
% the external file |\jobname.xyz|, an entry in the contents for
% ``Xyznotes'', and an endnotes section with a running header of the
-% form ``Xyznotes to pp.~xx--yy'' and a title XYZNOTES.
+% form ``Xyznotes to pp.~xx--yy'' and a title XYZNOTES. |\xyznote|
+% takes the same arguments that |\explanatory| does (which is to say,
+% an optional argument for a label for entering line ranges, and an
+% argument for the lemma and the comment). There won't be an entry
+% for a poem in the ``Xyznotes'' endnotes section unless there
+% actually is an xyznote for the poem. |\prosexyznote| takes the same
+% arguments |\proseexplanatory| does (which is to say, an aptional
+% argument for a label for entering line ranges, an argument for a
+% label to capture the line number of the first line, and an argument
+% for the lemma and the comment). |\pmxyznote| behaves exactly like
+% |\pmexplanatory|.
%
% \section{Multi-level footnotes} \label{makingfootnotes}
% \textsf{poemscol} will set multiple
@@ -1201,7 +1289,8 @@
% |\emendationsatfoot| in your preamble. These notes will be set by
% default as block paragraphs. If you have multiple-paragraph notes
% in your emendations, you should redefine these notes to set plain
-% rather than para style notes. To set your explanatory notes as
+% rather than para style notes. (See the next paragraph for how to do
+% this.) To set your explanatory notes as
% footnotes, issue |\explanationsatfoot|. These notes will also, by
% default, be plain style notes, with one indented paragraph per note.
% You do not need to issue |\maketextnotes|, |\makeemendations| or
@@ -1210,15 +1299,23 @@
% the text it would have put in your textnotes, since |\literaltext|
% just writes its argument onto the external file for textual notes.
%
-% If you wish to change the style of your footnotes between plain and
-% para modes, globally change the values of the booleans
-% |\ifsourcesfootnotespara|, |\iftextfootnotespara|,
-% |\ifemendationfootnotespara|, or |\ifexplanfootnotespara|, as the
-% case may be. To change the explanatory footnotes from plain to para
-% mode, for instance, issue |\global\explanfootnotesparatrue|.
-% Counterintuitive as it sounds, you must issue this \emph{before}
-% issuing |\textnotesatfoot| (or the command for whichever other kind
-% of note you are wishing to change the appearance of).
+%
+% To change the style of your footnotes between plain and
+% para modes, globally change the values some of the following
+% booleans. |\ifsourcesfootnotespara|, obviously, is true if
+% footnotes from the |\sources| command are set in ``para'' mode
+% (default is false). |\iftextfootnotespara| is true if footnotes
+% from |\textnote| are set in ``para'' mode (default is true).
+% |\ifemendationfootnotespara|, or |\ifexplanfootnotespara| are the
+% booleans which set the style of footnotes from |\emendation| and
+% |\explanatory| respectively. By default, footnotes from
+% |\emendation| are set in ``para'' mode, and footnotes from
+% |\explanatory| are set in ``plain'' mode. To change the explanatory
+% footnotes from plain to para mode, for instance, issue
+% |\global\explanfootnotesparatrue|. Counterintuitive as it sounds,
+% you must issue this \emph{before} issuing |\textnotesatfoot| (or the
+% command for whichever other kind of note you are wishing to change
+% the appearance of).
%
% When |\sources| is defined to send endnotes to the textual notes
% section, they usually appear immediately underneath the title of
@@ -1275,9 +1372,18 @@
% \DescribeMacro{\putexplanatory} |\puttextnotes| and
% |\putexplanatory| do the same thing for the textual
% notes and for the explanatory notes.
+%
+% All of these last three commands restore normal hyphenation. Since
+% all three are printed with the |\small| font size, the hyphen
+% character is defined only for that size. This should not create
+% other issues, however, because the commands that prohibit
+% hyphenation in the |poem| environment (and in the |contentsentry|
+% environment) are local to those environments, so the restoration of
+% the hyphen character may be redundant.
%
-% \DescribeMacro{\putpoemindex} Inputs the index at this point, and
-% adds an entry for the index to external file for the table of contents.
+% \DescribeMacro{\putpoemindex} |\putpoemindex| reads in the index at
+% this point, and adds an entry for the index to external file for the
+% table of contents.
%
% \DescribeMacro{\finish} The
% |\finish| macro is deprecated but still available. It is
@@ -1304,23 +1410,24 @@
% \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{}|.
+% \DescribeMacro{\attribution} \DescribeMacro{\dedication}
+% |\epigraph|, |\headnote|, |\attribution|, and |\dedication| set
+% their arguments as epigraphs, headnotes, attributions, or
+% dedications. If you have dedications, epigraphs, or attributions on
+% the divider pages of editions that combine several volumes of
+% poetry, use |\volumededication{}|, |\volumeepigraph{}|, and
+% |\volumeattribution{}|.
%
% \subsection{~Inset prose quotations}
% \DescribeMacro{\saveverselinenumber}
-% \DescribeMacro{\restoreverselinenumber} Sometime you will have inset prose
+% \DescribeMacro{\restoreverselinenumber} Sometimes 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
% |\saveverselinenumber|. Then issue |\end{poem}|. Insert the prose
% quotation (perhaps followed by |\attribution{}|). Then issue
% |\begin{poem}| followed by |\restoreverselinenumber| and |\begin{stanza}|.
-% Then begin entering the rest of the poem. Longer, independent prose
+% Then begin entering the rest of the poem as usual. Longer, independent prose
% sections (such as the author's preface or prose poems) require
% different handling. To provide line numbers and notes for such
% prose sections, see section \ref{prosesections}.
@@ -1358,20 +1465,23 @@
% care how long titles were broken up, this would probably be the
% best thing to do. Remember also that if \textsf{poemscol} breaks a
% title across two lines, you can always force it not break the line
-% by using enclosing the argument to |\poemtitle{}| in |\hbox{}|.
+% by using enclosing the argument to |\poemtitle{}| in |\hbox{}|. You
+% may get a complaint on your log file about an overfull |\hbox| if
+% you do this, however.
%
% \subsection{~Italicized poem titles and empty poem titles} Titles
% with italics or other special formatting posed special problems in
-% earlier versions since the typesetting commands gummed up how I
+% earlier versions (before version 1.7) since the typesetting commands gummed up how I
% passed parameters around that I was unable to solve using
% |\protect|. All of these commands are obsolete now, but are
% retained for backward compatibility.
+%
% \DescribeMacro{\poemtitleitalic{}{}} |\poemtitleitalic{}{}| takes
% two arguments. The first is the title of the poem with the italics
% (or small capitals or international characters or what have you),
% for typesetting, and the second is the title without the commands,
% for cross reference purposes. (Actually, now that \textsf{poemscol}
-% no long needs to treat italics in titles in a different way, it can
+% no longer needs to treat italics in titles in a different way, it can
% be anything you want, since the second argument is discarded.)
%
% \DescribeMacro{\poemtitlenotitle{}}
@@ -1390,16 +1500,26 @@
% first line without the italics (for crossreference purposes). This command
% is obsolete now that italics in titles no longer require special
% handing, but is retained for backwards compatibility.
+%
% \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 special cases I didn't anticipate by using |\poemsectiontitlebaretitle{}|
-% and |\literalcontents{}| and its siblings.
+% \begin{sloppypar}
+% \DescribeMacro{\poemsectiontitle}
+% |\poemsectiontitle{}| and (|\poemsubsectiontitle{}|, as their
+% names imply, are for the titles of sections or subsections of poems
+% that have them. |\poemfirstsectiontitle| is for the first section
+% of a poem with many sections. (It differs from |\poemsectiontitle|
+% in that it tries to make it harder for a page break to separate the
+% title of a poem from the title of its first section.)
+% |\poemsectiontitlefirstline{}|, |\poemsectiontitlemiddleline|, |\poemsectiontitlelastline{}|,
+% |\poemsectiontitlenocontents{}|, and
+% |\poemsectiontitlebaretitle{}|), as their titles imply, are used for
+% special cases such as long section titles, if you wish to specify
+% explicitly how the title is to be broken up in the text and in the
+% table of contents. You can construct variants of these macros for
+% dealing with special cases I didn't anticipate by using
+% |\poemsectiontitlebaretitle{}| and |\literalcontents{}| and its
+% siblings.\end{sloppypar}
%
% \subsection{~Poetic sequences}
%
@@ -1437,7 +1557,7 @@
% you may need.
%
% Here is a list of all of the defined title commands.
-% \newpage
+%
% \begin{itemize}
% \item Macros for Poem titles
% \begin{itemize}
@@ -1446,6 +1566,8 @@
% \item |\poemtitlemiddleline|
% \item |\poemtitlelastline|
% \item |\poemtitlenotitle|
+% \item |\poemtitlenocontents|
+% \item |\poemtitlebaretitle|
% \item |\poemsubtitle|
% \end{itemize}
% \item Poems in Sections
@@ -1455,8 +1577,9 @@
% \item |\poemsectiontitlemiddleline|
% \item |\poemsectiontitlelastline|
% \item |\poemsectiontitlenocontents|
-% \item |\poemfirstsectiontitlebaretitle|
% \item |\poemsectiontitlebaretitle|
+% \item |\poemfirstsectiontitle|
+% \item |\poemfirstsectiontitlebaretitle|
% \item |\poemsubsectiontitle|
% \end{itemize}
% \item Sequence Titles
@@ -1548,6 +1671,35 @@
% three macros. The lines will be broken in the
% table of contents and in the body of the text in the same way, but will be run in in
% the notes sections.
+%
+% \DescribeMacro{\JHpoemtitle}
+% In his edition of the poetry of Jos\'e Maria Heredia, Tilmann
+% Altenberg placed a marker in the margin next to poem titles with a reference to where
+% in the apparatus notes on that poem could be found. To do this, use
+% the |\JHpoemtitle| command. This command takes two arguments:
+% first, the title of the poem, second, the label used by the
+% |\label| command on the page of the notes section to which the
+% title refers. So, you would issue the poem title command this way:
+% |\poemtitle{Los desvelados}{EP_LosDesvelados_AC}|, following the
+% title with |\sources{\label{EP_LosDesvelados_AC}|. Instructions are
+% given in section \ref{JHpoemtitle}, p.~\pageref{JHpoemtitle} for how to
+% construct similar commands for sequences, sequence sections, and so
+% on.
+%
+% If you are using |\JHpoemtitle| and its siblings, you need to be
+% sure to add \textsf{mparhack} to your package list. You can prevent
+% the marginal reference from switching sides on alternate pages by issuing
+% |\@mparswitchfalse| (be sure to put |\makeatletter| and
+% |\makeatother| around this command). You can control the side on
+% which the marginal reference appears with |\normalmarginpar| (to
+% place them on the right) or |\reversemarginpar| (to place them on
+% the left). |\JHpoemtitle| and its siblings place the marginal
+% reference using |\marginpar|.
+%
+% \DescribeMacro{\setmpargpoemtitle}
+% |\setmargpoemtitle{}{}| is a more general version of
+% |\JHpoemtitle{}{}|, with the second argument being any commands you
+% want to be issued while the title is being processed.
%
% \subsection{~Visual formatting}
% \DescribeMacro{\longpage}
@@ -1646,12 +1798,14 @@
%
% \subsection{~Page geometry and type leading}
%
-% You have to give geometry the values that suit you. I include the
-% values I used in my own book, just to give you a starting place.
-% Using these numbers out of the box might make your page look strange,
-% since I also used the now obsolete \textsf{cropmarks} package, which
-% defined a few other lengths and moved the page box around on the
-% page. With that warning, here is a list of the values I used:
+% You have to give geometry the values that suit you. I include the
+% values I used in my own book, just to give you a starting place.
+% Using these numbers out of the box might make your page look
+% strange, since I also used the now obsolete \textsf{cropmarks}
+% package, which defined a few other lengths and moved the page box
+% around on the page. Also, the default values for marginparsep and
+% marginparwidth are different now (18pt and 10pt respectively). With
+% that warning, here is a list of the values I used:
%
% \bigskip
%
@@ -1782,7 +1936,6 @@
% have provided the new name to make it easy to distinguish from
% |\poemlinelabel|.
%
-% \newpage
%
%
% \DescribeMacro{\prosetextnote}
@@ -1863,6 +2016,9 @@
% combining verse and prose. (Hence the commands that follow often
% begin with |pm|.)
%
+% \DescribeMacro{pmsection}
+% You should put prose marked up for sentence and paragraph
+% annotation in a |pmsection| environment.
% You do not need to put prose marked up for sentence and paragraph
% annotation in a |prosesection| environment. That environment is
% only needed if you are line-numbering prose. You also do not need
@@ -1885,14 +2041,12 @@
% |\setlength{\marginparsep}{length}| or, better, by using
% |\renewcommand| to change the setting of |\marginparsep| in
% |\verselinenumberstoleft| or whatever else you intend to use.
-
+%
% \DescribeMacro{\pmsentence} Each sentence must begin with
% |\pmsentence|. |\pmsentence| increments the sentence counter,
% optionally puts the sentence number in the running text, and
% optionally puts the sentence number in the margin.
-
-% \DescribeMacro{\runningsentencenumberstrue}
-% \DescribeMacro{\marginsentencenumberstrue}
+%
% |\runningsentencenumberstrue|
% sets sentence
% numbers in the running text.
@@ -1905,11 +2059,11 @@
% the margin, you need not number every sentence. Indeed, if there is
% more than one sentence on a line, the numbers will overwrite each
% other (unless you use the marn.sty package, and substitute |\marn|
-% for |\rightsidepar|, |\leftsidepar| or |\sidepar| in the code for
+% for |\pmclrightsidepar|, |\pmclleftsidepar| or |\pmclsidepar| in the code for
% |\pmsentence|). You can also avoid overlapping sentence numbers by
% using |\pmsentencetwo| and its siblings, defined below. You can set
% the modulo for sentence marginal numbers by issuing
-% |\setpmmodulo{}|.
+% |\setpmmodulo{}|.
%
% \DescribeMacro{\pmsentencetwo}
% \DescribeMacro{\pmsentencethree}
@@ -1934,8 +2088,7 @@
% (|\versenumberstoright| or whatever) again when you move
% from a prose to a verse environment.
%
-% \DescribeMacro{\runningsentencenumberformat}
-% \DescribeMacro{\marginsentencenumberformat}
+%
% |\runningsentencenumberformat| sets the format of running sentence numbers. Currently it is
% |\textsuperscript| and |\tiny|.
% You can change this with |\renewcommand|. The format of marginal
@@ -1959,6 +2112,21 @@
% is controlled by the same commands that control placement of
% marginal sentence numbers.
%
+% If you begin a paragraph with |\pmpara| \textsf{poemscol} will
+% assume that you intend to include the paragraph number in your
+% notes (in the form \emph{paragraph: sentence:} for simple
+% references, or \emph{firstparagraph: firstsentence: --
+% ;astparagraph: lastentence:} for ranges of sentences) even if you do not reset
+% the sentence number at the beginning of each paragraph. Normally
+% you would not issue |\pmpara| if you are not resetting the sentence
+% number at the beginning of each paragraph, since under those
+% circumstances you don't really need to keep track of the paragraph
+% numbers, in which case each note would simply include the sentence
+% number (just as in verse it would include the line number). In the
+% unusual event in which you wish to put the paragraph number in the
+% margin but refer only to sentence numbers in the notes, simply
+% follow every use of |\pmpara| with |\pmparasfalse|.
+%
% \DescribeMacro{\pmpararunningformat}\DescribeMacro{\pmparmarformat}
% The format of running paragraph numbers is set
% by |\pmparrunningformat|. Currently it is
@@ -2882,28 +3050,28 @@
% \subsection{~Marginal line numbers, verse lines, line cross
% references, etc.}\label{marginalgeometry} The default is that the
% line numbers are on the right side, and that the |\marginparsep| is
-% -18pt. If you use |\leftsidepar| the placement of the number is
+% 18pt. If you use |\pmclleftsidepar| the placement of the number is
% controlled by |\marginparsep| and |\marginparwidth|. You should
% experiment with different values until you find a set that suits
% you. A rule of thumb for me is that the |\marginparsep| if the
% numbers is on the right should be the negative of the value if it is
% on the left. First, some lengths and ifs:
% \begin{macrocode}
- \setlength{\marginparsep}{-18pt}
+ \setlength{\marginparsep}{18pt}
\setlength{\marginparwidth}{10pt}
\newif\ifnumbersswitch \numbersswitchfalse
\newif\ifnumbersright \numbersrighttrue
% \end{macrocode}
-% Next, code for |\sidepar|, taken from the memoir class, by
-% Peter Wilson. Most of this uses |\providecommand|, to make it
-% easier to make \textsf{poemscol} and \textsf{memoir} compatible.
-% \begin{macro}{\sidepar}
+% Next, code for |\pmclsidepar|, taken from the memoir class, by
+% Peter Wilson. Modified by Dan Luecking.
+% \begin{macro}{\pmclsidepar}
% \begin{macrocode}
-\providecommand{\sidepar}{\@dblarg{\@sidepar}}
-\long\def\@sidepar[#1]#2{\@bsphack\leavevmode\vadjust{% %
- \checkoddpage
- \ifsideparswitch
- \ifreversesidepar
+\newcommand{\pmclsidepar}{\@dblarg{\@pmclsidepar}}
+%\long\def\@pmclsidepar[#1]#2{\@bsphack\leavevmode\vadjust{%
+\long\def\@pmclsidepar[#1]#2{\@bsphack\strut\vadjust{% added
+\checkoddpage
+ \ifpmclsideparswitch
+ \ifpmclreversesidepar
\ifoddpage
\oddpagefalse
\else
@@ -2912,7 +3080,7 @@
\fi
\else
\oddpagetrue
- \ifreversesidepar
+ \ifpmclreversesidepar
\oddpagefalse
\fi
\fi
@@ -2930,12 +3098,18 @@
\kern -\marginparsep \kern -\marginparwidth % at left
\fi
\fi
- \vbox to 0pt{%
- \kern \sideparvshift% % vertical shift to align top text lines
- \begin{minipage}{\marginparwidth}%
- \ifoddpage #2\else #1\fi%
+% \vbox to 0pt{%
+% \kern \pmclsideparvshift% % vertical shift to align top text lines
+% \begin{minipage}{\marginparwidth}%
+ \setbox0=\vtop to 0pt{% added
+ \begin{minipage}[t]{\marginparwidth}% added
+ \ifoddpage #2\else #1\fi%
\end{minipage}%
- \vss}}}\@esphack}
+% \vss}}}\@esphack}
+\vss}% added
+ \vtop to 0pt{\kern\pmclsideparvshift % default should be 0pt
+ \kern-\dp\strutbox \kern-\ht0 \box0 \vss}}}\@esphack}% added
+
% \end{macrocode}
% \end{macro}
@@ -3019,16 +3193,16 @@
% \end{macrocode}
% \end{macro}
-% \begin{macro}{\ifreversesidepar}
-% \begin{macro}{\ifsideparswitch}
+% \begin{macro}{\ifpmclreversesidepar}
+% \begin{macro}{\ifpmclsideparswitch}
% Analogues of |\marginpar| controls.
% \begin{macrocode}
-\newif\ifreversesidepar
-% \reversesideparfalse
- \reversesidepartrue
-\newif\ifsideparswitch
- \sideparswitchfalse
-\if@twoside \sideparswitchtrue \fi
+\newif\ifpmclreversesidepar
+% \pmclreversesideparfalse
+ \pmclreversesidepartrue
+\newif\ifpmclsideparswitch
+ \pmclsideparswitchfalse
+\if@twoside \pmclsideparswitchtrue \fi
% \end{macrocode}
% \end{macro}
@@ -3055,19 +3229,14 @@
% Two-column and one-column printing is again realized via a switch
% which is defined in the kernel. The default is single column printing.
%
-% % \begin{macro}{\if@twocolumn}
-% % \begin{macrocode}
-% \DeclareOption{onecolumn}{\@twocolumnfalse}
-% \DeclareOption{twocolumn}{\@twocolumntrue}
-% % \end{macrocode}
-% % \end{macro}
%
-% \begin{macro}{\sideparvshift}
+% \begin{macro}{\pmclsideparvshift}
% Vertical shift for sidepar to align with text line
% \begin{macrocode}
-\newlength{\sideparvshift}
-% \setlength{\sideparvshift}{-2.08ex}% seems to work for all font sizes
-\setlength{\sideparvshift}{-2.58ex}
+\newlength{\pmclsideparvshift}
+% \setlength{\pmclsideparvshift}{-2.08ex}% seems to work for all font sizes
+%\setlength{\pmclsideparvshift}{-2.58ex}
+\setlength{\pmclsideparvshift}{0ex}
% \end{macrocode}
% \end{macro}
% My code resumes here
@@ -3075,11 +3244,20 @@
% \begin{macro}{\verselinenumberstoright}
% \begin{macrocode}
\newcommand{\verselinenumberstoleft}{%
+% \catcode`\@=11%
+% \@mparswitchfalse%
+% \catcode`\@=12%
+% \reversemarginpar%
\setlength{\marginparsep}{18pt}%
\setlength{\marginparwidth}{10pt}%
\numbersswitchfalse\numbersrightfalse}
\newcommand{\verselinenumberstoright}{%
- \setlength{\marginparsep}{-18pt}%
+% \catcode`\@=11%
+% \@mparswitchfalse%
+% \catcode`\@=12%
+% \normalmarginpar%
+ % \setlength{\marginparsep}{-18pt}%
+ \setlength{\marginparsep}{18pt}%
\setlength{\marginparwidth}{10pt}%
\numbersswitchfalse\numbersrighttrue}
% \end{macrocode}
@@ -3090,15 +3268,23 @@
% \begin{macro}{\verselinenumbersouter}
% \begin{macrocode}
\newcommand{\verselinenumbersswitch}{%
+% \catcode`\@=11%
+% \@mparswitchtrue%
+% \catcode`\@=12% %
\strictpagechecktrue%
\setlength{\marginparsep}{18pt}%
\setlength{\marginparwidth}{10pt}%
- \numbersswitchtrue\numbersrightfalse}
-\newif\ifnumbersgutter \numbersgutterfalse
+ \numbersswitchtrue\numbersrightfalse\pmclsideparswitchtrue}
+\newif\ifnumbersgutter \numbersgutterfalse%
\newcommand{\verselinenumbersgutter}{\verselinenumbersswitch%
-\reversesideparfalse\numbersguttertrue}
+%\normalmarginpar
+\pmclreversesideparfalse%
+\numbersguttertrue%
+}
\newcommand{\verselinenumbersouter}{\verselinenumbersswitch%
-\reversesidepartrue\numbersgutterfalse}
+%\reversemarginpar%
+\pmclreversesidepartrue%
+\numbersgutterfalse}
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -3106,21 +3292,29 @@
% \begin{macro}{\putverselinenumber}
% \begin{macrocode}
\newcommand{\putverselinenumber}{\nolinebreak\begin{marginenvironment}%
- \nolinebreak
- \ifnumbersswitch\sidepar{\hfil\textrm{\scriptsize\theverselinenumber}}%
- \else
- \ifnumbersright\rightsidepar{\hfil\textrm{\scriptsize\theverselinenumber}}%
- \else
- \leftsidepar{\textrm{\scriptsize\theverselinenumber}\hfil}%
- \fi
- \fi
+ \nolinebreak%
+% \ifnumbersswitch\marginpar{\hfil\textrm{\scriptsize\theverselinenumber}}%
+% \else%
+% \ifnumbersright\marginpar{\hfil\textrm{\scriptsize\theverselinenumber}}%
+% \else%
+% \marginpar{\textrm{\scriptsize\theverselinenumber}\hfil}%
+% \fi%
+% \fi
+ \ifnumbersswitch\pmclsidepar{\hfil\textrm{\scriptsize\theverselinenumber}}%
+ \else%
+ \ifnumbersright\pmclrightsidepar{\hfil\textrm{\scriptsize\theverselinenumber}}%
+ \else%
+ \pmclleftsidepar
+{\textrm{\scriptsize\theverselinenumber}\hfil}%
+ \fi%
+ \fi%
% \marn{\hfil\textrm{\theverselinenumber}}
% \marginpar{\hfil\textrm{\scriptsize\theverselinenumber}}
% \linenumberside{\textrm{\scriptsize\theverselinenumber}\hfil}
-% \rightsidepar{\textrm{\scriptsize\theverselinenumber}}
- \nolinebreak
+% \pmclrightsidepar{\textrm{\scriptsize\theverselinenumber}}
+ \nolinebreak%
\end{marginenvironment}%
- \nolinebreak
+ \nolinebreak%
}
% \end{macrocode}
% \end{macro}
@@ -3564,7 +3758,7 @@ CONTENTS}\end{center}
\newcommand{\argpageref}[1]{\pageref{#1}}
% \end{macrocode}
% \subsubsection{Poem Titles}
-% \begin{macro}{\poemtitle}
+% \begin{macro}{\poemtitle}\label{poemtitlecode}
% All of the other commands in this section are variations on this
% one, changing the penalties, the skips, the indentations, and the
% fonts. The command breaks into three sections. First, the title
@@ -3813,6 +4007,14 @@ CONTENTS}\end{center}
% \begin{macrocode}
\newcommand{\poemsectiontitlenocontents}[1]{%
\sequencesubsectiontitlenocontents{#1}}%
+\newcommand{\poemfirstsectiontitle}[1]{%
+\set@p@emtitle{#1}{\par\nobreak}{\subsectiontitlefont}%
+{\titleindent}{\nobreak\par\nobreak\afterpoemtitleskip\nobreak}%
+{\titleindentamount}%
+\c@ntentsinfo{#1}{\contentsindenttwo}{\contentspoemtitlefont}%
+{\contentsindentthreeamount}%
+\t@xtnotesinfo{#1}%
+}
\newcommand{\poemfirstsectiontitlebaretitle}[1]{%
\set@p@emtitle{#1}{\par\nobreak}{\subsectiontitlefont}%
{\titleindent}{\nobreak\par\nobreak\afterpoemtitleskip\nobreak}%
@@ -4183,7 +4385,104 @@ CONTENTS}\end{center}
\sequencefirstsubsectionmiddleline{#1}
}
% \end{macrocode}
-
+% \begin{macro}{\setmargpoemtitle}
+% Titles with a marginal reference to the notes, as in Altenberg's
+% Heredia edition.\label{JHpoemtitle} |\setmargpoemtitle| takes as
+% its second argument anything you want to add to the line while the
+% title is being processed. |\JHpoemtitle| is just
+% |\setmargpoemtitle| with the second argument passed to |\JHlabel|,
+% which actually makes the label
+% \begin{macrocode}
+\newcommand{\setmargpoemtitle}[2]{%
+\set@margp@emtitle{#1}{\poemtitlepenalty}{\poemtitlefont}%
+{\relax}{\nobreak\par\nobreak\afterpoemtitleskip\nobreak}{\z@}{#2}%
+\c@ntentsinfo{#1}{\contentsindentone}{\contentspoemtitlefont}%
+{\contentsindenttwoamount}%
+\t@xtnotesinfo{#1}%
+}
+\newcommand{\set@margp@emtitle}[7]{\setlength{\titleentryoverrun}{#6}%
+{#2}%
+{#3 \begin{titleentryenvironment}%
+{#4 #1 #7}\end{titleentryenvironment}}%
+{#5}%
+\m@kep@emlabel%
+\m@ken@teholder{#1}%
+\setlength{\titleentryoverrun}{\z@}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\JHpoemtitle} Macros to set marginal line
+% references.
+% \begin{macrocode}
+\newcommand{\JHpoemtitle}[2]{%
+\setmargpoemtitle{#1}{\JHlabel{#2}}%
+}
+\newcommand{\JHlabel}[1]{%
+\marginpar{{\scriptsize{\dag~p.~\pageref{#1}}}}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\JHsequencetitle} Macros to set marginal line
+% references for sequences and sequence sections.
+% \begin{macrocode}
+\newcommand{\JHsequencetitle}[2]{%
+\set@margp@emtitle{#1}{\sequencetitlepenalty}{\sequencetitlefont}%
+{\relax}{\nobreak\par\nobreak\aftersequencetitleskip\nobreak}{\z@}%
+{\JHlabel{#2}}%
+\putpagenumberincontentsfalse%
+\c@ntentsinfo{#1}{\contentsindentone}{\contentssequencetitlefont}%
+{\contentsindenttwoamount}%
+\putpagenumberincontentstrue%
+\t@xtnotesinfo{#1}%
+}
+\newcommand{\JHsequencesectiontitle}[2]{%
+\set@margp@emtitle{#1}{\poemtitlepenalty}{\poemtitlefont}%
+{\titleindent}{\nobreak\par\nobreak\afterpoemtitleskip\nobreak}%
+{\titleindentamount}{\JHlabel{#2}}%
+\c@ntentsinfo{#1}{\contentsindenttwo}{\contentspoemtitlefont}%
+{\contentsindentthreeamount}%
+\t@xtnotesinfo{#1}%
+}
+\newcommand{\JHsequencefirstsectiontitle}[2]{%
+\set@margp@emtitle{#1}{\par\nobreak\afterpoemtitleskip}{\poemtitlefont}%
+{\titleindent}{\nobreak\par\nobreak\afterpoemtitleskip\nobreak}%
+{\titleindentamount}{\JHlabel{#2}}%
+\c@ntentsinfo{#1}{\contentsindenttwo}{\contentspoemtitlefont}%
+{\contentsindentthreeamount}%
+\t@xtnotesinfo{#1}%
+}
+% \end{macrocode}
+% \end{macro}
+% To change other title making commands to produce titles which add
+% something while processing the title, you should: 1. add one to
+% the number of arguments it uses 2. replace the use of
+% |\set@p@emtitle| with |\set@margp@emtitle| 3. add |{#2}| or
+% |\JHlabel{#2}| or whatever as the
+% last (seventh) argument to |\set@margp@emtitle|. So, to change
+% |\sequencetitle{}| to |\JHsequencetitle{}{}| start with:
+% \begin{verbatim}
+% \newcommand{\sequencetitle}[1]{
+% \set@p@emtitle{#1}{\sequencetitlepenalty}{\sequencetitlefont}
+% {\relax}{\nobreak\par\nobreak\aftersequencetitleskip\nobreak}{\z@}
+% \putpagenumberincontentsfalse
+% \c@ntentsinfo{#1}{\contentsindentone}{\contentssequencetitlefont}
+% {\contentsindenttwoamount}
+% \putpagenumberincontentstrue
+% \t@xtnotesinfo{#1}
+% }
+% \end{verbatim}
+% and change it to
+% \begin{verbatim}
+% \catcode`\@=11
+% \newcommand{\JHsequencetitle}[2]{
+% \set@margp@emtitle{#1}{\sequencetitlepenalty}{\sequencetitlefont}
+% {\relax}{\nobreak\par\nobreak\aftersequencetitleskip\nobreak}{\z@}
+% {\JHlabel{#2}}\putpagenumberincontentsfalse
+% \c@ntentsinfo{#1}{\contentsindentone}{\contentssequencetitlefont}
+% {\contentsindenttwoamount}
+% \putpagenumberincontentstrue
+% \t@xtnotesinfo{#1}
+% }
+% \catcode`\@=12
+% \end{verbatim}
% \subsection{~Epigraphs, headnotes, attributions, dedications}
% Notice that epigraphs to volumes are handled differently from
% epigraphs to poems.
@@ -4302,7 +4601,7 @@ CONTENTS}\end{center}
% \end{macrocode}
% \end{macro}
% \subsection{~Commands to make notes and send info to contents}
-% % \begin{macro}{\setlemmarange}
+% \begin{macro}{\setlemmarange}
% |\setlemmarange| calculates the range of line numbers for multi-line
% lemmas.
% \begin{macrocode}
@@ -4325,7 +4624,7 @@ CONTENTS}\end{center}
\makeatother}
% \end{macrocode}
% \end{macro}
-% % \begin{macro}{\citerange}
+% \begin{macro}{\citerange}
% |\citerange| sets the range of line numbers for multi-line lemmas
% \begin{macrocode}
\newcommand{\citerange}{%
@@ -4336,7 +4635,7 @@ CONTENTS}\end{center}
\fi}
% \end{macrocode}
% \end{macro}
-% % \begin{macro}{\resetlemmacounters}
+% \begin{macro}{\resetlemmacounters}
% |\resetlemmacounters| resets the counts for multiline lemmas.
% \begin{macrocode}
\newcommand{\resetlemmacounters}{\rangelemmafalse
@@ -4345,7 +4644,7 @@ CONTENTS}\end{center}
}
% \end{macrocode}
% \end{macro}
-% % \begin{macro}{\checknoteheaders}
+% \begin{macro}{\checknoteheaders}
% |\checknoteheaders| Checks and corrects the values in the running
% headers of notes sections. The running headers are of the form
% ``Notes to pages xx--yy.'' Every title and every note checks
@@ -4367,7 +4666,7 @@ CONTENTS}\end{center}
% \end{macrocode}
% \end{macro}
-% % \begin{macro}{\textnote}
+% \begin{macro}{\textnote}
% The
% basic |\textnote{}| command, on which everything else is based, has
% several parts. First, it writes out a little program
@@ -4474,7 +4773,7 @@ CONTENTS}\end{center}
% 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}{\titletoothernotes}
+% \begin{macro}{\titletoothernotes}
% |\titletoothernotes| sends the page and title information to the
% Emendations or Explanatory Notes sections. It is called only for
% the first emendation or explanatory note for a poem. It is designed
@@ -4619,15 +4918,40 @@ CONTENTS}\end{center}
\expandafter\newcommand\csname first#1\endcsname{
\immediate\write\expandafter\csname#1s\endcsname{\titletoothernotes}}
% 7. set up a command to write a note, complete with line numbers
-\expandafter\newcommand\csname #1\endcsname[2][0]{
- \setlemmarange{##1}
- \csname ifno#1yet\endcsname
- \csname first#1\endcsname
- \fi
-\global\csname no#1yetfalse\endcsname
-\immediate\write\expandafter\csname #1s\endcsname{\checknoteheaders}
-\csname literal#1\endcsname{##2}
-\resetlemmacounters}
+\expandafter\newcommand\csname #1\endcsname[2][0]{%
+ \setlemmarange{##1}%
+ \csname ifno#1yet\endcsname%
+ \csname first#1\endcsname%
+ \fi%
+\global\csname no#1yetfalse\endcsname%
+\immediate\write\expandafter\csname #1s\endcsname{\checknoteheaders}%
+\csname literal#1\endcsname{##2}%
+\resetlemmacounters%
+}
+% prose version
+\expandafter\newcommand\csname prose#1\endcsname[3][0]{% %
+\unskip\proselinelabel{##2}%
+\setproselemmarange{##2}{##1}%
+\csname ifno#1yet\endcsname%
+\csname first#1\endcsname%
+\fi%
+\global\csname no#1yetfalse\endcsname%
+\immediate\write\expandafter\csname #1s\endcsname{\checkprosenoteheaders}%
+\csname literal#1\endcsname{##3}%
+\resetlemmacounters\unskip%
+}
+% pm version
+\expandafter\newcommand\csname pm#1\endcsname[2][0]{%
+ \setpmlemmarange{##1}%
+ \csname ifno#1yet\endcsname%
+ \csname first#1\endcsname%
+ \fi%
+\global\csname no#1yetfalse\endcsname%
+\immediate\write\expandafter\csname #1s\endcsname{\pmchecknoteheaders\string~}%
+\immediate\write\expandafter\csname #1s\endcsname{\pmciterange}%
+\csname literal#1\endcsname{##2}%
+\pmresetlemmacounters\unskip%
+}
% 8. modify the end of the poem environment to reset the first
% command per poem boolean (so that the page and title will be set in
% the notes section when the first note is called for a poem)
@@ -4635,6 +4959,13 @@ CONTENTS}\end{center}
\makeatletter
\appendtomacro{\poem}{\global\expandafter\csname no#1yettrue\endcsname}
\makeatother
+\makeatletter
+\appendtomacro{\prosesection}{\global\expandafter\csname no#1yettrue\endcsname}
+\makeatother
+\makeatletter
+\appendtomacro{\pmsection}{\global\expandafter\csname no#1yettrue\endcsname}
+\makeatother
+
% 9. command for closing the output file
% command for reading in and printing the output file
\expandafter\newcommand\csname put#1s\endcsname{
@@ -4687,7 +5018,10 @@ CONTENTS}\end{center}
\else\ifnumbersswitch\rightlinenumbers*\setlength{\linenumbersep}{-\marginparsep}%
\else\leftlinenumbers*\setlength{\linenumbersep}{\marginparsep}%
\addtolength{\linenumbersep}{5pt}% seems about right
-\fi\fi}
+\fi\fi
+\noemendyettrue%
+\noexplainyettrue%
+}
{\end{linenumbers}}
\newenvironment{prosesectionnoreset}
{\begin{linenumbers}%
@@ -4903,6 +5237,10 @@ r@#2\endcsname{}{}\@nil
% \begin{macrocode}
\newcommand{\setprosebysentence}{\prosebysentencetrue%
}
+\newenvironment{pmsection}{
+\noemendyettrue%
+\noexplainyettrue%
+}{}
% \end{macrocode}
% Formatting for sentence numbers in the running text and in the
% margin.
@@ -4913,21 +5251,38 @@ r@#2\endcsname{}{}\@nil
\newcommand{\setpmmodulo}[1]{\setcounter{pmmodulo}{#1}%
\addtocounter{pmmodulo}{-1}%
}
-\newcommand{\pmnumberstoleft}{\numbersswitchfalse\numbersrightfalse%
+\newcommand{\pmnumberstoleft}{%\catcode`\@=11%
+% \@mparswitchfalse%
+% \catcode`\@=12%
+% \reversemarginpar%
+\numbersswitchfalse\numbersrightfalse%
\setlength{\marginparsep}{18pt}%
}
-\newcommand{\pmnumberstoright}{\numbersswitchfalse\numbersrighttrue%
+\newcommand{\pmnumberstoright}{%\catcode`\@=11%
+% \@mparswitchfalse%
+% \catcode`\@=12%
+% \normalmarginpar%
+\numbersswitchfalse\numbersrighttrue%
\setlength{\marginparsep}{-18pt}
+% \setlength{\marginparsep}{18pt}
}
\newcommand{\pmnumbersswitch}{\strictpagechecktrue\numbersswitchtrue\numbersrightfalse%
\setlength{\marginparsep}{18pt}%
}
-\newcommand{\pmnumbersgutter}{\pmnumbersswitch%
-\reversesideparfalse\numbersguttertrue%
+\newcommand{\pmnumbersgutter}{%\catcode`\@=11%
+% \@mparswitchtrue%
+% \catcode`\@=12%
+% \normalmarginpar%
+\pmnumbersswitch%
+\pmclreversesideparfalse\numbersguttertrue%
\setlength{\marginparsep}{18pt}%
}
-\newcommand{\pmnumbersouter}{\pmnumbersswitch%
-\reversesidepartrue\numbersgutterfalse%
+\newcommand{\pmnumbersouter}{%\catcode`\@=11%
+% \@mparswitchtrue%
+% \catcode`\@=12%
+% \reversemarginpar%
+\pmnumbersswitch%
+\pmclreversesidepartrue\numbersgutterfalse%
\setlength{\marginparsep}{18pt}%
}
% \end{macrocode}
@@ -4938,15 +5293,19 @@ r@#2\endcsname{}{}\@nil
{\marginsentencenumberformat}}
\newcommand{\putpmmarginnumber}[2]{%
\nolinebreak\begin{marginenvironment}%
- \nolinebreak
- \ifnumbersswitch\sidepar{\hfil #2{#1}}%
- \else
- \ifnumbersright\rightsidepar{\hfil #2{#1}}%
- \else \leftsidepar{#2{#1}\hfil}%
- \fi
- \fi
- \nolinebreak
- \end{marginenvironment}\nolinebreak
+ \nolinebreak%
+ \ifnumbersswitch%\marginpar{\hfil #2{#1}}
+ \pmclsidepar{\hfil #2{#1}}%
+ \else%
+ \ifnumbersright%\marginpar{\hfil #2{#1}}
+ \pmclrightsidepar{\hfil #2{#1}}%
+ \else% \marginpar{#2{#1}\hfil}
+ \pmclleftsidepar
+{#2{#1}\hfil}%
+ \fi%
+ \fi%
+ \nolinebreak%
+ \end{marginenvironment}\nolinebreak%
}
% \end{macrocode}
% \begin{macro}{\pmsentence}
@@ -4957,23 +5316,28 @@ r@#2\endcsname{}{}\@nil
\newcommand{\pmsentence}{%
% increment sentence number at beginning of sentence
\addtocounter{pmsentencenumber}{1}%
-\ifrunningsentencenumbers % add running number
+\ifrunningsentencenumbers% add running number
\runningsentencenumberformat{\thepmsentencenumber}%
\fi%
-\ifmarginsentencenumbers % add marginal number
+\ifmarginsentencenumbers% add marginal number
\addtocounter{pmindexcount}{1}%
\leavevmode%
- \ifnum\thepmindexcount>\thepmmodulo%
- \putpmsentencenumber\nobreak%
+\ifthenelse{\value{pmindexcount}>\value{pmmodulo}}%
+{ \putpmsentencenumber\nobreak%
\setcounter{pmindexcount}{0}%
- \fi%
+}{\relax}%
+% \ifnum\thepmindexcount>\thepmmodulo%
+% \putpmsentencenumber\nobreak%
+% \setcounter{pmindexcount}{0}%
+% \fi%
\fi%
% create header for notes if any are to occur
\ifpmparas%
\global\edef\noteheaderconcat{\thepmparagraph:\thepmsentencenumber}%
\pmnoteheader=\expandafter{\noteheaderconcat}%
\else%
-\global\edef\noteheaderconcat{\thepmsentencenumber:}%
+%\global\edef\noteheaderconcat{\thepmsentencenumber:}%
+\global\edef\noteheaderconcat{\thepmsentencenumber}
\pmnoteheader=\expandafter{\noteheaderconcat}%
\fi%
}
@@ -4985,23 +5349,27 @@ r@#2\endcsname{}{}\@nil
\newcommand{\pmsentencetwo}{%
% increment sentence number at beginning of sentence
\addtocounter{pmsentencenumber}{1}%
-\ifrunningsentencenumbers % add running number
+\ifrunningsentencenumbers% add running number
\runningsentencenumberformat{\thepmsentencenumber}%
\fi%
-\ifmarginsentencenumbers % add marginal number
+\ifmarginsentencenumbers% add marginal number
\addtocounter{pmindexcount}{1}%
\leavevmode%
- \ifnum\thepmindexcount>\thepmmodulo%
- \putpmsentencenumbertwo\nobreak%
+\ifthenelse{\value{pmindexcount}>\value{pmmodulo}}%
+{ \putpmsentencenumbertwo\nobreak%
\setcounter{pmindexcount}{0}%
- \fi%
+}{\relax}%
+% \ifnum\thepmindexcount>\thepmmodulo%
+% \putpmsentencenumbertwo\nobreak%
+% \setcounter{pmindexcount}{0}%
+% \fi%
\fi%
% create header for notes if any are to occur
\ifpmparas%
\global\edef\noteheaderconcat{\thepmparagraph:\thepmsentencenumber}%
\pmnoteheader=\expandafter{\noteheaderconcat}%
\else%
-\global\edef\noteheaderconcat{\thepmsentencenumber:}%
+\global\edef\noteheaderconcat{\thepmsentencenumber}%
\pmnoteheader=\expandafter{\noteheaderconcat}%
\fi%
}
@@ -5014,26 +5382,30 @@ r@#2\endcsname{}{}\@nil
% \begin{macro}{\pmsentencethree}
% Kludge for the third sentence in a line.
% \begin{macrocode}
-\newcommand{\pmsentencethree}{
+\newcommand{\pmsentencethree}{%
% increment sentence number at beginning of sentence
\addtocounter{pmsentencenumber}{1}%
-\ifrunningsentencenumbers % add running number
+\ifrunningsentencenumbers% add running number
\runningsentencenumberformat{\thepmsentencenumber}%
\fi%
-\ifmarginsentencenumbers % add marginal number
+\ifmarginsentencenumbers% add marginal number
\addtocounter{pmindexcount}{1}%
\leavevmode%
- \ifnum\thepmindexcount>\thepmmodulo%
- \putpmsentencenumberthree\nobreak%
+\ifthenelse{\value{pmindexcount}>\value{pmmodulo}}%
+{ \putpmsentencenumberthree\nobreak%
\setcounter{pmindexcount}{0}%
- \fi%
+}{\relax}%
+% \ifnum\thepmindexcount>\thepmmodulo%
+% \putpmsentencenumberthree\nobreak%
+% \setcounter{pmindexcount}{0}%
+% \fi%
\fi%
% create header for notes if any are to occur
\ifpmparas%
\global\edef\noteheaderconcat{\thepmparagraph:\thepmsentencenumber}%
\pmnoteheader=\expandafter{\noteheaderconcat}%
\else%
-\global\edef\noteheaderconcat{\thepmsentencenumber:}%
+\global\edef\noteheaderconcat{\thepmsentencenumber}%
\pmnoteheader=\expandafter{\noteheaderconcat}%
\fi%
}
@@ -5045,26 +5417,30 @@ r@#2\endcsname{}{}\@nil
% \end{macro}
% \begin{macro}{\pmsentencefour}
% \begin{macrocode}
-\newcommand{\pmsentencefour}{
+\newcommand{\pmsentencefour}{%
% increment sentence number at beginning of sentence
\addtocounter{pmsentencenumber}{1}%
-\ifrunningsentencenumbers % add running number
+\ifrunningsentencenumbers% add running number
\runningsentencenumberformat{\thepmsentencenumber}%
\fi%
-\ifmarginsentencenumbers % add marginal number
+\ifmarginsentencenumbers% add marginal number
\addtocounter{pmindexcount}{1}%
\leavevmode%
- \ifnum\thepmindexcount>\thepmmodulo%
- \putpmsentencenumberfour\nobreak%
+\ifthenelse{\value{pmindexcount}>\value{pmmodulo}}%
+{ \putpmsentencenumberfour\nobreak%
\setcounter{pmindexcount}{0}%
- \fi%
+}{\relax}%
+% \ifnum\thepmindexcount>\thepmmodulo%
+% \putpmsentencenumberfour\nobreak%
+% \setcounter{pmindexcount}{0}%
+% \fi%
\fi%
% create header for notes if any are to occur
\ifpmparas%
\global\edef\noteheaderconcat{\thepmparagraph:\thepmsentencenumber}%
\pmnoteheader=\expandafter{\noteheaderconcat}%
\else%
-\global\edef\noteheaderconcat{\thepmsentencenumber:}%
+\global\edef\noteheaderconcat{\thepmsentencenumber}%
\pmnoteheader=\expandafter{\noteheaderconcat}%
\fi%
}
@@ -5380,7 +5756,7 @@ r@#2\endcsname{}{}\@nil
% |\marginpar|, do not float. This code is modelled after code from
% the memoir class, by Peter Wilson.
%
-% \begin{macro}{\leftsidepar}
+% \begin{macro}{\pmclleftsidepar}
% As in the memoir class, these sidepars do not float.
% \begin{macrocode}
\newdimen\pmclsavsk
@@ -5399,31 +5775,51 @@ r@#2\endcsname{}{}\@nil
\ignorespaces
\fi
\fi}
-\newlength{\pmclsideparvshift}
-% \setlength{\pmclsideparvshift}{-2.08ex}% seems to work for all font sizes
-\setlength{\pmclsideparvshift}{-2.58ex}%
-\newcommand{\leftsidepar}[1]{%
-\pmclbsphack\leavevmode\vadjust{% %
- \rlap{\kern-\parindent%
- \kern -\marginparsep \kern -\marginparwidth % at left
- \vbox to 0pt{%
- \kern \pmclsideparvshift% % vertical shift to align top text lines
- \begin{minipage}{\marginparwidth}%
- #1%
- \end{minipage}%
- \vss}}}\pmclesphack%
-}
-\newcommand{\rightsidepar}[1]{%
-\pmclbsphack\leavevmode\vadjust{% %
- \rlap{\kern-\parindent%
- \kern \textwidth \kern -\marginparsep % at right
- \vbox to 0pt{%
- \kern \pmclsideparvshift% % vertical shift to align top text lines
- \begin{minipage}{\marginparwidth}%
- #1%
- \end{minipage}%
- \vss}}}\pmclesphack%
-}
+% \newcommand{\pmclleftsidepar}[1]{%
+% \pmclbsphack\leavevmode\vadjust{%
+% \rlap{\kern-\parindent%
+% \kern -\marginparsep \kern -\marginparwidth % at left
+% \vbox to 0pt{%
+% \kern \pmclsideparvshift% % vertical shift to align top text lines
+% \begin{minipage}{\marginparwidth}%
+% #1%
+% \end{minipage}%
+% \vss}}}\pmclesphack%
+% } % version 2.44
+\newcommand{\pmclleftsidepar}[1]{%
+\pmclbsphack\strut\vadjust{% changed
+\rlap{\kern-\parindent%
+\kern -\marginparsep \kern -\marginparwidth% at left
+% \vbox to 0pt{%
+% \kern \pmclsideparvshift% % vertical shift to align top text lines
+% \begin{minipage}{\marginparwidth}%
+\setbox0=\vtop to 0pt{% added
+\begin{minipage}[t]{\marginparwidth}% added
+#1%
+\end{minipage}%
+% \vss}}}\pmclesphack%
+\vss}% changed
+\vtop to 0pt{\kern\pmclsideparvshift % default should be 0pt
+\kern-\dp\strutbox \kern-\ht0 \box0 \vss}}}\pmclesphack}% changed
+
+\newcommand{\pmclrightsidepar}[1]{%
+% \pmclbsphack\leavevmode\vadjust{%
+\pmclbsphack\strut\vadjust{%
+\rlap{\kern-\parindent%
+% \kern \textwidth \kern -\marginparsep % at right
+\kern\textwidth\kern\marginparsep% at right
+% \vbox to 0pt{%
+% \kern \pmclsideparvshift% % vertical shift to align top text lines
+% \begin{minipage}{\marginparwidth}%
+\setbox0=\vtop to 0pt{% added
+\begin{minipage}[t]{\marginparwidth}% added
+#1%
+\end{minipage}%
+% \vss}}}\pmclesphack%
+\vss}% changed
+\vtop to 0pt{\kern\pmclsideparvshift% default should be 0pt
+\kern-\dp\strutbox \kern-\ht0 \box0 \vss}}}\pmclesphack}% changed
+
% \end{macrocode}
% \end{macro}
@@ -5569,7 +5965,7 @@ r@#2\endcsname{}{}\@nil
\nolinebreak
% \marn{\hfil\textrm{\theverselinenumber}}
% \marginpar{\hfil\textrm{\scriptsize\theverselinenumber}}
- \leftsidepar{\textrm{\scriptsize\theverselinenumber}}%
+ \pmclleftsidepar{\textrm{\scriptsize\theverselinenumber}}%
\nolinebreak
\end{marginenvironment}%
\nolinebreak
@@ -5634,7 +6030,7 @@ r@#2\endcsname{}{}\@nil
\newcommand{\synchrolabel}[1]{\poemlinelabel{#1}}
\newcommand{\hfilll}{\hskip 0pt plus 1 filll}
\newcommand{\synchroref}[1]{%
-\rightsidepar{{\textrm{\scriptsize[\the\synchroflag\ref{#1}]}}}%
+\pmclrightsidepar{{\textrm{\scriptsize[\the\synchroflag\ref{#1}]}}}%
% \hfill\rlap{{\textrm{\scriptsize[\the\synchroflag\ref{#1}]}}}
% \ifnum\theprintlineindex=\thelineindexrepeat
% \hspace{-7pt}