From 84e76f635fbeb4bac73aa771673c0e25402611b1 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 10 Feb 2013 23:12:13 +0000 Subject: poemscol (10feb13) git-svn-id: svn://tug.org/texlive/trunk@29072 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/poemscol/poemscol.pdf | Bin 548645 -> 553949 bytes .../doc/latex/poemscol/poemscolcheatsheet.pdf | Bin 36301 -> 0 bytes .../texmf-dist/source/latex/poemscol/poemscol.dtx | 1178 +++++++++++--------- Master/texmf-dist/tex/latex/poemscol/poemscol.sty | 149 ++- 4 files changed, 775 insertions(+), 552 deletions(-) delete mode 100644 Master/texmf-dist/doc/latex/poemscol/poemscolcheatsheet.pdf (limited to 'Master') diff --git a/Master/texmf-dist/doc/latex/poemscol/poemscol.pdf b/Master/texmf-dist/doc/latex/poemscol/poemscol.pdf index 093cd2842af..c64a916ba90 100644 Binary files a/Master/texmf-dist/doc/latex/poemscol/poemscol.pdf and b/Master/texmf-dist/doc/latex/poemscol/poemscol.pdf differ diff --git a/Master/texmf-dist/doc/latex/poemscol/poemscolcheatsheet.pdf b/Master/texmf-dist/doc/latex/poemscol/poemscolcheatsheet.pdf deleted file mode 100644 index 8bbcedbc157..00000000000 Binary files a/Master/texmf-dist/doc/latex/poemscol/poemscolcheatsheet.pdf and /dev/null differ diff --git a/Master/texmf-dist/source/latex/poemscol/poemscol.dtx b/Master/texmf-dist/source/latex/poemscol/poemscol.dtx index ca5a2ce3a55..23de514959b 100644 --- a/Master/texmf-dist/source/latex/poemscol/poemscol.dtx +++ b/Master/texmf-dist/source/latex/poemscol/poemscol.dtx @@ -19,7 +19,7 @@ % \iffalse %\NeedsTeXFormat{LaTeX2e}[1997/12/01] %\ProvidesPackage{poemscol} -% [2012/08/30 v2.6 poemscol file] +% [2013/02/06 v2.61 poemscol file] % %<*driver> \documentclass{ltxdoc} @@ -33,7 +33,7 @@ % % \fi % -% \CheckSum{6058} +% \CheckSum{6235} % % \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 @@ -53,154 +53,145 @@ % % % \changes{v1.0}{2002/06/05}{Initial version} -% \changes{v1.01}{2002/06/25}{Added macros for titles of poems -% without formal titles. Corrected typographical errors in manual.} -% \changes{v1.1}{2003/04/18}{Added commands to change mark in cases -% where page break fall (or does not fall) on stanza break. Added -% command to change the amount of indentation in runover lines in verse. -% Removed special geometry to -% make the program more generic.} -% \changes{v1.11}{2005/02/12}{Corrected bugs in headers for explanatory notes and -% emendations.} -% \changes{v1.2}{2005/2/19}{Accidentals and typescript variants test to see whether -% textual notes are being made. Corrected a bug when quoting verse in note -% sections. Added a command to change the page number of the table of contents. -% Added a command to input the table of contents file. Added commands -% to input the external files for emendations, explanatory notes, textual -% notes, and the index of titles and first lines. Added a command to test -% whether there is an .aux file from a previous run and to prevent typesetting -% of the external files for emendations, explanatory notes, textual -% notes if there is not. Added a command to restore the main page style after -% the table of contents.} -% \changes{v1.7}{2005/2/22}{Changed how labels are made for use in -% contents and notes sections. Control sequences in titles (such as for -% italics and so on) no longer require special commands, although those -% commands are retained for backward compatibility.} -% \changes{v2.01}{2005/2/22}{Rewrote all of the title macros in order to make -% them easier to maintain. Added environment for flushing runover lines in verse to the -% right margin. Added information on how to customize titles.} -% \changes{v2.02}{2005/2/28}{Corrected an error in setting poems without -% formal titles} -% \changes{v2.12}{2005/3/19}{Notes sections can take ranges of lines.} -% \changes{v2.13}{2005/3/20}{tsentry no longer needs an unskip -% if the entry starts with a comma.} +% \changes{v1.01}{2002/06/25}{Added macros for titles of poems without +% formal titles. Corrected typographical errors in manual.} +% \changes{v1.1}{2003/04/18}{Added commands to change mark in cases +% where page break fall (or does not fall) on stanza break. Added +% command to change the amount of indentation in runover lines in +% verse. Removed special geometry to make the program more generic.} +% \changes{v1.11}{2005/02/12}{Corrected bugs in headers for +% explanatory notes and emendations.} +% \changes{v1.2}{2005/2/19}{Accidentals and typescript variants test +% to see whether textual notes are being made. Corrected a bug when +% quoting verse in note sections. Added a command to change the page +% number of the table of contents. Added a command to input the table +% of contents file. Added commands to input the external files for +% emendations, explanatory notes, textual notes, and the index of +% titles and first lines. Added a command to test whether there is an +% .aux file from a previous run and to prevent typesetting of the +% external files for emendations, explanatory notes, textual notes if +% there is not. Added a command to restore the main page style after +% the table of contents.} \changes{v1.7}{2005/2/22}{Changed how labels +% are made for use in contents and notes sections. Control sequences +% in titles (such as for italics and so on) no longer require special +% commands, although those commands are retained for backward +% compatibility.} \changes{v2.01}{2005/2/22}{Rewrote all of the title +% macros in order to make them easier to maintain. Added environment +% for flushing runover lines in verse to the right margin. Added +% information on how to customize titles.} +% \changes{v2.02}{2005/2/28}{Corrected an error in setting poems +% without formal titles} \changes{v2.12}{2005/3/19}{Notes sections can +% take ranges of lines.} \changes{v2.13}{2005/3/20}{tsentry no longer +% needs an unskip if the entry starts with a comma.} % \changes{v2.2}{2005/3/23}{The user can create new kinds of endnote.} -% \changes{v2.21}{2005/3/24}{Cross references can refer to line numbers} -% \changes{v2.22}{2005/3/25}{Removed dependence upon marn.sty. Enabled -% multiple levels of block-formatted footnotes} -% \changes{v2.24}{2005/4/02}{Macros to aid typesetting parallel texts.} -% \changes{v2.25}{2005/5/06}{Bug fix in running headers to notes sections} -% \changes{v2.26}{2005/5/09}{Fix no unskip in vertical mode error} -% \changes{v2.27}{2005/5/09}{Changed name of linelabel command, to -% prepare for making poemscol and lineno compatible} -% \changes{v2.30}{2005/5/16}{Prose sections such as Authors' -% Introductions are line numbered by lineno.sty. Textnotes, -% emendations, and explanatory notes for prose sections may be either -% footnotes or endnotes, and the latter are sent to the same place as -% their verse equivalents. Good solution to ``missing number'' problem -% on first runs.} -% \changes{v2.301}{2005/5/31}{Corrected small bug in table of contents -% macros, rewrote manual for clarity} -% \changes{v2.31}{2005/6/3}{Ranges of line for notes sections (in -% verse or prose sections) need no longer involve counting of lines. +% \changes{v2.21}{2005/3/24}{Cross references can refer to line +% numbers} \changes{v2.22}{2005/3/25}{Removed dependence upon +% marn.sty. Enabled multiple levels of block-formatted footnotes} +% \changes{v2.24}{2005/4/02}{Macros to aid typesetting parallel +% texts.} \changes{v2.25}{2005/5/06}{Bug fix in running headers to +% notes sections} \changes{v2.26}{2005/5/09}{Fix no unskip in vertical +% mode error} \changes{v2.27}{2005/5/09}{Changed name of linelabel +% command, to prepare for making poemscol and lineno compatible} +% \changes{v2.30}{2005/5/16}{Prose sections such as Authors' +% Introductions are line numbered by lineno.sty. Textnotes, +% emendations, and explanatory notes for prose sections may be either +% footnotes or endnotes, and the latter are sent to the same place as +% their verse equivalents. Good solution to ``missing number'' +% problem on first runs.} \changes{v2.301}{2005/5/31}{Corrected small +% bug in table of contents macros, rewrote manual for clarity} +% \changes{v2.31}{2005/6/3}{Ranges of line for notes sections (in +% verse or prose sections) need no longer involve counting of lines. % Lemmas may be nested, may overlap, and may cross stanza boundaries.} -% \changes{v2.32}{2005/6/29}{Simpler configuration of marginal line -% numbers, revision of manual} -% \changes{v2.33}{2005/7/03}{Fixed a bug in index generation, -% compensated for odd interaction between fancyhdr and reversemarginpar} -% \changes{v2.34}{2005/7/17}{Easier modification of format of tables -% of contents} -% \changes{v2.35}{2005/7/18}{poemscol can break the lines for long -% titles in the table of contents on its own without making a mess of -% it. poemscol can break the lines for long titles on its own without -% making a mess of it. Modified macros for volume titles to use the -% facilities for poem titles.} -% \changes{v2.36}{2005/8/16}{Versions of note macros for typescript -% variants and accidentals for annotated prose. Macros for marking -% up and annotating prose by paragraph and sentence number. Macros for -% cross references by sentence and paragraph number.} -% \changes{v2.37}{2005/8/30}{In cases of broken lines or runover -% lines you can choose whether to set the line number with the -% beginning of the line or with the end of the line. Also, you can -% choose to have it set the number always at the beginning if the line number is -% at the left, and always at the end if it is at the right.} -% \changes{v2.38}{2005/9/04}{Checked cases where macros might introduce -% extra white space. Made sure that line numbers for verse, prose, -% and paragraph-sentence prose line up. Fixed overlapping of paragraph -% and line numbers for paragraph-sentence mode. Up to four -% sentences can appear on a line in paragraph-line mode without -% having their marginal line numbers overlap. Fixed a bug that added -% an extra colon in footnotes in paragraph-sentence format. Changed -% ``gutter'' and ``outer'' line numbering in verse and -% paragraph-sentence prose to use Peter Wilson's sidepars rather -% than marginpars.} -% \changes{v2.39}{2005/9/07}{Left a DeclareOption hanging in version -% 2.38. Fixed that.} +% \changes{v2.32}{2005/6/29}{Simpler configuration of marginal line +% numbers, revision of manual} \changes{v2.33}{2005/7/03}{Fixed a bug +% in index generation, compensated for odd interaction between +% fancyhdr and reversemarginpar} \changes{v2.34}{2005/7/17}{Easier +% modification of format of tables of contents} +% \changes{v2.35}{2005/7/18}{poemscol can break the lines for long +% titles in the table of contents on its own without making a mess of +% it. poemscol can break the lines for long titles on its own without +% making a mess of it. Modified macros for volume titles to use the +% facilities for poem titles.} \changes{v2.36}{2005/8/16}{Versions of +% note macros for typescript variants and accidentals for annotated +% prose. Macros for marking up and annotating prose by paragraph and +% sentence number. Macros for cross references by sentence and +% paragraph number.} \changes{v2.37}{2005/8/30}{In cases of broken +% lines or runover lines you can choose whether to set the line number +% with the beginning of the line or with the end of the line. Also, +% you can choose to have it set the number always at the beginning if +% the line number is at the left, and always at the end if it is at +% the right.} \changes{v2.38}{2005/9/04}{Checked cases where macros +% might introduce extra white space. Made sure that line numbers for +% verse, prose, and paragraph-sentence prose line up. Fixed +% overlapping of paragraph and line numbers for paragraph-sentence +% mode. Up to four sentences can appear on a line in paragraph-line +% mode without having their marginal line numbers overlap. Fixed a +% bug that added an extra colon in footnotes in paragraph-sentence +% format. Changed ``gutter'' and ``outer'' line numbering in verse +% and paragraph-sentence prose to use Peter Wilson's sidepars rather +% than marginpars.} \changes{v2.39}{2005/9/07}{Left a DeclareOption +% hanging in version 2.38. Fixed that.} % \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 +% \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.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 +% 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. } -% \changes{v2.50}{2006/05/13}{Added marginal -% reference commands for poem sections, poem subtitles, epigraphs, -% and dedications. These commands no longer require an addition label -% command to set the label to which they refer. Added commands to -% make marginal references to the pages in notes sections where -% comments on individual lines may be found, for textual notes, -% explanatory notes, emendations, and user-defined notes. Added -% commands for changing the names of the Table of Contents, the -% various endnotes sections, and the running headers for the contents -% and endnotes sections, in order to facilitate editions of works in -% languages other than English.} -% \changes{v2.51}{2006/05/22}{Changed prose section environment so -% that it does not always assume that the modulo for line numbers in -% prose is the same as the number in verse. Corrected a problem with -% alignment of line numbers in the prosesectionnoreset environment. -% Added commands to support generation of multiple indices using the -% splitindex package. Fixed a variety of small bugs, including a -% newly introduced one in the correction to textual notes for quoted -% verse.} -% \changes{v2.52}{2007/07/10}{Changed dedication to poemdedication to -% avoid a conflict with a command in koma-script. dedication command -% is provided using providecommand for compatibility} -% \changes{v2.53}{2007/07/14}{Changed the name of an internal token -% register to avoid a conflict with babel} +% \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. } +% \changes{v2.50}{2006/05/13}{Added marginal reference commands for +% poem sections, poem subtitles, epigraphs, and dedications. These +% commands no longer require an addition label command to set the +% label to which they refer. Added commands to make marginal +% references to the pages in notes sections where comments on +% individual lines may be found, for textual notes, explanatory notes, +% emendations, and user-defined notes. Added commands for changing +% the names of the Table of Contents, the various endnotes sections, +% and the running headers for the contents and endnotes sections, in +% order to facilitate editions of works in languages other than +% English.} \changes{v2.51}{2006/05/22}{Changed prose section +% environment so that it does not always assume that the modulo for +% line numbers in prose is the same as the number in verse. Corrected +% a problem with alignment of line numbers in the prosesectionnoreset +% environment. Added commands to support generation of multiple +% indices using the splitindex package. Fixed a variety of small +% bugs, including a newly introduced one in the correction to textual +% notes for quoted verse.} \changes{v2.52}{2007/07/10}{Changed +% dedication to poemdedication to avoid a conflict with a command in +% koma-script. dedication command is provided using providecommand +% for compatibility} \changes{v2.53}{2007/07/14}{Changed the name of +% an internal token register to avoid a conflict with babel} % \changes{v2.531}{2011/08/16}{Fixed a typo in example code.} -% \GetFileInfo{poemscol.sty} -% \changes{v2.6}{2012/08/31}{Added an optional argument to the poem -% environment to center the text block of the poem on the longest -% line. Added a switch to enable titles to be centered on the page.} +% \GetFileInfo{poemscol.sty} \changes{v2.6}{2012/08/31}{Added an +% optional argument to the poem environment to center the text block +% of the poem on the longest line. Added a switch to enable titles to +% be centered on the page.} \changes{v2.61}{2013/02/06}{Added a +% boolean to switch notes to one note per paragraph form. Boolean to +% switch off poem titles in notes. Two column formatting for notes sections.} % % \DoNotIndex{\newcommand,\newenvironment,\def,\edef,\else,\renewcommand,\makeatletter,\makeatother} % \DoNotIndex{\abovedisplayskip,\belowdisplayskip,\abovedisplayshortskip,\belowdisplayshortskip} @@ -224,38 +215,28 @@ % \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} +% \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{2.6} -% \def\filedate{23 August 2012} -% \def\docdate{23 August 2012} -% \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{August 23, 2012} -% \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} +% \newwrite,\p@,\pageref,\renewenvironment,\rm,\scriptsize,\string, +% \textsc, \unskip} \setcounter{IndexColumns}{2} \MakeShortVerb{|} +% \def\fileversion{2.61} \def\filedate{6 February 2013} \def\docdate{6 +% February 2013} \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{February 6, 2013} \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 @@ -318,7 +299,7 @@ % most book designs.) % % Editions made in the formats of proprietary software such as -% Word\copyright\ or Quark\copyright\ will become not only obsolete +% QuarkXPress\copyright\ or InDesign\copyright\ will become not only obsolete % but unreadable if those programs pass from use. 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, @@ -340,17 +321,17 @@ % series of global search-and-replaces, and could conceivably be done % with a perl script. % -% \textsf{poemscol} is also suited for verse drama, and the -% package \textsf{dramatist} has been modified to work with -% \textsf{poemscol}. \textsf{poemscol} can provide line numbers and -% notes for prose sections such as the author's introduction or prose -% poetry, and it can also handle inset prose passages in the midst of -% verse. \textsf{poemscol} is not, however, designed for -% typesetting large scale prose works. For critical editions of prose -% works, several other packages are available, including the -% \texttt{EDMAC} format, a \TeX\ format analogous to but distinct from -% \LaTeX, by John Lavagnino and Dominik Wujastyk, or \textsf{ledmac}, -% a port of \texttt{EDMAC} into \LaTeX\ by Peter Wilson, or \textsf{ednotes}, a +% \textsf{poemscol} is also suited for verse drama, and the package +% \textsf{dramatist} has been modified to work with \textsf{poemscol}. +% \textsf{poemscol} can provide line numbers and notes for prose +% sections such as the author's introduction or prose poetry, and it +% can also handle inset prose passages in the midst of verse. +% \textsf{poemscol} is not, however, designed for typesetting large +% scale prose works. For critical editions of prose works, several +% other packages are available, including the \texttt{EDMAC} format, a +% \TeX\ format analogous to but distinct from \LaTeX, by John +% Lavagnino and Dominik Wujastyk, or \textsf{ledmac}, a port of +% \texttt{EDMAC} into \LaTeX\ by Peter Wilson, or \textsf{ednotes}, a % completely independent set of macros for critical editions which % builds on \textsf{manypar} and \textsf{lineno}, by Uwe L\"{u}ck. % @@ -565,28 +546,29 @@ % which you can do by issuing |\centertitles|. % % \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. Line-ending hyphens should not be a -% feature of verse anyway, I think. (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. You might wish, for instance, to turn automatic +% 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. Line-ending hyphens +% should not be a feature of verse anyway, I think. (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. You might wish, for instance, to turn automatic % hyphenation off in the |\prosesection| environment.) % % \DescribeEnv{stanza} Every stanza should be placed in its own stanza @@ -629,11 +611,10 @@ % section \ref{marginalgeometry} for these.) % % -% \DescribeMacro{\setverselinemodulo} |\setverselinemodulo| sets how often a -% marginal line -% number appears. To print a line -% number every five lines, issue |\setverselinemodulo{5}|. The -% default value is 10. +% \DescribeMacro{\setverselinemodulo} |\setverselinemodulo| sets how +% often a marginal line number appears. To print a line number every +% five lines, issue |\setverselinemodulo{5}|. The default value is +% 10. % % % \DescribeMacro{\makeverselinenumbers} @@ -684,9 +665,9 @@ % 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). +% 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). % % |\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 @@ -826,16 +807,17 @@ % examples of this kind of environment from Markus Kohm and Christian % 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}| -% right after the line to which you wish to refer, where -% ``text of label'' is some distinctive label you can use for a -% reference elsewhere. (You should issue the command \emph{after} the |\verseline| or -% |\end{stanza}| command, to make sure that the line number will be -% correct.) To produce the reference, just issue |\ref{text of label}| -% as usual. (|\poemlinelabel| is just a crudely hacked version of -% |\label| from \LaTeX.) |\pageref{text of label}| will set the page -% number of the page on which the label appears. +% \DescribeMacro{\poemlinelabel} \label{poemlinelabel} +% |\poemlinelabel{}| enables crossreferences by line number. To make +% a line label, issue |\poemlinelabel{text of label}| right after the +% line to which you wish to refer, where ``text of label'' is some +% distinctive label you can use for a reference elsewhere. (You +% should issue the command \emph{after} the |\verseline| or +% |\end{stanza}| command, to make sure that the line number will be +% correct.) To produce the reference, just issue |\ref{text of label}| as usual. +% (|\poemlinelabel| is just a crudely hacked +% version of |\label| from \LaTeX.) |\pageref{text of label}| will set +% the page number of the page on which the label appears. % % \section{Making a table of contents} % \DescribeMacro{\makepoemcontents} @@ -904,12 +886,12 @@ % Number'' error that puzzles so many users of \LaTeX. % % Because |\putpoemcontents| uses the table of contents file from a -% prior run, you should issue |\putpoemcontents| \emph{before} -% issuing |\makepoemcontents|. That sounds counterintuitive. -% But remember that |\putpoemcontents| will read in the contents file you made on a +% prior run, you should issue |\putpoemcontents| \emph{before} issuing +% |\makepoemcontents|. That sounds counterintuitive. But remember +% that |\putpoemcontents| will read in the contents file you made on a % previous run, and |\makepoemcontents| will over-write that file and % start a new one. You should issue |\makepoemcontents| just -% \emph{after} issuing |\putpoemcontents|. +% \emph{after} issuing |\putpoemcontents|. % % \subsection{~Entries for notes sections and the index} % \DescribeMacro{\putpoemindex} @@ -953,21 +935,21 @@ % % % -% \section{Making an index of titles and first lines} -% \DescribeMacro{\indexingontrue} 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 |\putpoemindex| command will insert the typeset index where -% you issue it, and put an entry for your index in your table of contents. You will -% have to run your file through \LaTeX\ again to make the page number for that -% entry correct. +% \section{Making an index of titles and first lines} +% \DescribeMacro{\indexingontrue} 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 +% |\putpoemindex| command will insert the typeset index where you +% issue it, and put an entry for your index in your table of contents. +% You will have to run your file through \LaTeX\ again to make the +% page number for that entry correct. % % \textsf{poemscol} sets up a two-column index with a simple running % header. (Setting up a two-column index, however, requires that you @@ -1027,7 +1009,7 @@ % section, and 4. The name of the section as you wish it to appear in % the Table of Contents. So, for instance % \begin{verbatim} -% \putmultiplepoemindex{fir}{INDEX OF FIRST LINES]{Index of First +% \putmultiplepoemindex{fir}{INDEX OF FIRST LINES}{Index of First % Lines}{First Line Index} \end{verbatim} % includes an index with shortcut ``fir,'' title ``INDEX OF FIRST % LINES,'' running header ``Index of First Lines,'' and contents @@ -1067,20 +1049,17 @@ % information about it) to the table of contents file and to the % textnotes file.\end{sloppypar} % -% \DescribeMacro{\volumeepigraph} -% \DescribeMacro{\volumeattribution} -% \DescribeMacro{\volumeheader} -% \DescribeMacro{\leftheader} -% \DescribeMacro{\rightheader} -% |\volumeepigraph{}| and +% \DescribeMacro{\volumeepigraph} \DescribeMacro{\volumeattribution} +% \DescribeMacro{\volumeheader} \DescribeMacro{\leftheader} +% \DescribeMacro{\rightheader} |\volumeepigraph{}| and % |\volumeattribution{}| are for epigraphs and attributions on the -% divider pages. |\volumeheader{}| or |\rightheader{}| 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. +% divider pages. |\volumeheader{}| or |\rightheader{}| 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.} @@ -1125,19 +1104,44 @@ % canto names or numbers, setting the poem title in some other way, % perhaps with |\volumetitle| described above.) % -% +% \DescribeMacro{\iftextnotessinglepar} +% \DescribeMacro{\ifemendationssingplepar} +% \DescribeMacro{\ifexplanationssinglepar} +% By default, notes are grouped in block paragraphs for each poem, which, for +% collections of relatively short poems makes sense. You may, +% however, particularly if you are annotating long poems, wish each +% note to appear in its own paragraph. To do this, you need to set +% the relevant boolean. Issue |\textnotessinglepartrue| +% |\emendationssingplepartrue| or |explanationssinglepartrue| to do +% this. +% +% \DescribeMacro{\iftextnotestwocol} +% \DescribeMacro{\ifemendationstwocol} +% \DescribeMacro{\ifexplanationstwocol} +% By default, notes set in single columns. To set them in two column mode, +%set these booleans to true, e.g. |\textnotessinglepartrue|. +% +%\DescribeMacro{\putpagenumberinnotesfalse} +%\DescribeMacro{\puttitleinnotesfalse} +%You may not wish to have the poem's page number and title appear in +%the notes. To turn off the appearance of the page number in the +%notes, issue |\putpagenumberinnotesfalse|. You may also not wish to +%put the poem's title in the notes. To turn off the appearance of the +%poem's title in the notes, issue |\puttitleinnotesfalse|. +% % \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{\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} @@ -1159,17 +1163,17 @@ % where a punctuation mark is missing in a variant), use % |\missingpunct|. % -% For notes that refer to ranges of lines, |\textnote|, |\emendation|, and |\explanatory| -% have an optional argument, which records how many lines the note -% refers to. There are two ways of using this argument. The grubby -% but simple way is simply to put into the argument the number of -% lines it refers to. If, for instance, you issue |\textnote[4]{lemma] rest of note}|, -% \textsf{poemscol}, rather than printing merely the number of -% the line which closed just before you issued |\textnote|, will -% print a line range, beginning at that line, and ending at the -% fourth line after it. If that |\textnote| were issued after line -% 214, this is to say, the output in the textual notes would be: -% 214--218: lemma] rest of note. +% For notes that refer to ranges of lines, |\textnote|, |\emendation|, +% and |\explanatory| have an optional argument, which records how many +% lines the note refers to. There are two ways of using this +% argument. The grubby but simple way is simply to put into the +% argument the number of lines it refers to. If, for instance, you +% issue |\textnote[4]{lemma] rest of note}|, \textsf{poemscol}, rather +% than printing merely the number of the line which closed just before +% you issued |\textnote|, will print a line range, beginning at that +% line, and ending at the fourth line after it. If that |\textnote| +% were issued after line 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 @@ -1181,11 +1185,11 @@ % 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} +%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 @@ -1197,37 +1201,35 @@ % concludes the line to which it is a comment. These commands also can % take optional arguments to specify line ranges. % -% 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 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|. -% 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 the note is not the -% last one -% on that poem.) The command should set it flush as it is, but I have -% found odd cases I can't understand in which that doesn't work, so -% the command has an optional argument, which should -% be the additional length you need to adjust the next line by to make it flush. -% The default is 0pt. -% |\quotedversecorrectionexplanatory| and +% |\quotedversecorrectiontextnote|. 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 the note is not the last one on that +% poem.) The command should set it flush as it is, but I have found +% odd cases I can't understand in which that doesn't work, so the +% command has an optional argument, which should be the additional +% length you need to adjust the next line by to make it flush. The +% default is 0pt. |\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. -% They simply send commands to the relevant -% note sections that prohibit opening a new paragraph. You should -% issue this command in the main text right after the close of the textnote (not in the -% text of the textnote itself). +% commands are an embarrassing kludge on my part. They simply send +% commands to the relevant note sections that prohibit opening a new +% paragraph. You should issue this command in the main text 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 @@ -1260,25 +1262,20 @@ % the string |\accidental|. % % -% \DescribeMacro{\tsvariant} -% \DescribeMacro{\tsentry} -% Some -% publishers may turn up their noses at typescript or manuscript variants in just -% the way they turn up their noses at accidentals. -% If you wish to distinguish between published variants and typescript, -% man\-u\-script, or galley variants, |\tsvariant| (for a whole note) -% and |\tsentry| (for a typescript entry in a list of variants in a -% textual note that includes other kinds of variant) provide ways of doing so. -% By default, typescript variants are included. -% To exclude typescript variants, issue -% |\global\includetypescriptsfalse| in your preamble. -% You can issue -% |\global||\includetypescriptstrue| in your preamble, to remind -% yourself that you are including typescript variants. In that -% (default) case -% |\tsvariant{}| will behave exactly like |\textnote{}|, and entries -% in other notes marked with |\tsentry| will be included in your -% output. +% \DescribeMacro{\tsvariant} \DescribeMacro{\tsentry} Some publishers +% may turn up their noses at typescript or manuscript variants in just +% the way they turn up their noses at accidentals. If you wish to +% distinguish between published variants and typescript, +% man\-u\-script, or galley variants, |\tsvariant| (for a whole note) +% and |\tsentry| (for a typescript entry in a list of variants in a +% textual note that includes other kinds of variant) provide ways of +% doing so. By default, typescript variants are included. To exclude +% typescript variants, issue |\global\includetypescriptsfalse| in your +% preamble. You can issue |\global||\includetypescriptstrue| in your +% preamble, to remind yourself that you are including typescript +% variants. In that (default) case |\tsvariant{}| will behave exactly +% like |\textnote{}|, and entries in other notes marked with +% |\tsentry| will be included in your output. % % Here is how to use |\tsentry|: % if you wish to include typescript entries in a single note including @@ -1318,74 +1315,71 @@ % |\definenewnotetype| see section \ref{definingnewnotes}. % % \section{Creating new kinds of endnote} \label{definingnewnotes} -% \DescribeMacro{\definenewnotetype} The |\definenewnotetype| macro -% can be used to create new kinds of endnote, in case the kinds -% \textsf{poemscol} defined are not enough. |\definenewnotetype| -% takes five arguments. They are -% \begin{enumerate} -% \item A base name used to construct -% \begin{itemize} -% \item some |\if| variables (e.g. |\ifmynoteson| to see whether you are -% collecting ``mynotes'', and |\ifnomynoteyet| to see whether you -% have written a ``mynote'' for a particular poem yet). \textsf{poemscol} -% will only open an entry for a poem in the ``mynotes'' section if -% there actually is a ``mynote'' on that poem. Note that the |\if| -% that refers to the section is plural (|\ifmynoteson|) and that the -% |\if| that refers to a singular note is singular (|\ifnomynoteyet|). -% \item The name for the output channel for writing the notes to the -% appropriate external file. This name will always be plural. -% \item The name for the ``literal'' command for -% 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{}|), 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 -% document, and adds an entry in the table of contents for that notes -% section. This command will always be plural. \item The name of the -% |\margref| command for putting a marginal mark next to a line -% giving the page number in the apparatus where a note is to be found -% (e.g. |\margrefmynote|) -% \end{itemize} -% \item The extension for the external file which will hold the notes -% as you generate them. ``Emendations'' for instance, are written to -% an external file called |\jobname.emd| The file name will always -% be |\jobname|, and the different species of endnotes will all have -% distinctive extensions. (|\jobname| is a macro that always expands -% to the name of your top level source file. If, for instance, I am -% setting running a file called ``myfile.tex'' through \LaTeX\, -% |\jobname.emd| translates to ``myfile.emd.'') -% \item The title of the notes section as you wish it to appear in -% the running header (e.g. -% ``Emendations''). -% \item The title of the notes section as you wish it to appear on -% the first page of the notes section (e.g. ``EMENDATIONS''). -% \item The title of the notes section as you wish it to appear in -% the table of contents. -% \end{enumerate} -% -% So, for instance,\begin{verbatim} +% \DescribeMacro{\definenewnotetype} The |\definenewnotetype| macro +% can be used to create new kinds of endnote, in case the kinds +% \textsf{poemscol} defined are not enough. |\definenewnotetype| +% takes five arguments. They are \begin{enumerate} \item A base name +% used to construct \begin{itemize} \item some |\if| variables (e.g. +% |\ifmynoteson| to see whether you are collecting ``mynotes'', +% |\ifnomynoteyet| to see whether you have written a ``mynote'' for a +% particular poem yet, |\ifmynotestwocol| to set the notes in two +% column mode, and |\ifmynotesinglepar| to set the notes in +% one paragraph per note form, rather than in block paragraphs). +% \textsf{poemscol} will only open an entry for a poem in the +% ``mynotes'' section if there actually is a ``mynote'' on that poem. +% Note that the |\if| sthat refer to the section are plural +% (|\ifmynoteson|, |\ifmynotestwocol|, |\ifmynotessinglepar|) and +% that the |\if| that refers to a singular note +% is singular (|\ifnomynoteyet|). \item The name for the output +% channel for writing the notes to the appropriate external file. +% This name will always be plural. \item The name for the ``literal'' +% command for 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{}|), 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 document, and adds an entry in the table of +% contents for that notes section. This command will always be +% plural. \item The name of the |\margref| command for putting a +% marginal mark next to a line giving the page number in the apparatus +% where a note is to be found (e.g. |\margrefmynote|) \end{itemize} +% \item The extension for the external file which will hold the notes +% as you generate them. ``Emendations'' for instance, are written to +% an external file called |\jobname.emd| The file name will always be +% |\jobname|, and the different species of endnotes will all have +% distinctive extensions. (|\jobname| is a macro that always expands +% to the name of your top level source file. If, for instance, I am +% setting running a file called ``myfile.tex'' through \LaTeX\, +% |\jobname.emd| translates to ``myfile.emd.'') \item The title of the +% notes section as you wish it to appear in the running header (e.g. +% ``Emendations''). \item The title of the notes section as you wish +% it to appear on the first page of the notes section (e.g. +% ``EMENDATIONS''). \item The title of the notes section as you wish +% it to appear in the table of contents. \end{enumerate} +% +% \sloppypar So, for instance,\begin{verbatim} % \definenewnotetype{xyznote}{xyz}{Xyznotes to}{XYZNOTES}{Xyznotes} % \end{verbatim} -% creates the -% 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. |\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 optional -% 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 +% creates the booleans |\ifxyznoteson|, |\ifnoxyznoteyet|, and +% |\ifxyznotessinglepar|, 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. |\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 optional +% 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} @@ -1470,14 +1464,13 @@ % the same kinds of optional argument that are used with |\textnote|. % % \section{Pulling it all together} -% \DescribeMacro{\testforauxonfirstrun} -% If you don't want to listen to \LaTeX\ complain about missing -% references during your first run, issue |\testforauxonfirstrun|, -% which won't let |\finish|, -% |\putexplanatory|, |\puttextnotes|, or |\putemendations| run unless there is an -% .aux file for a previous run. \emph{Be sure to issue this command before -% issuing} |\begin{document}|, \emph{since that reads in the existing .aux file, -% and overwrites it with a new one.} +% \DescribeMacro{\testforauxonfirstrun} If you don't want to listen to +% \LaTeX\ complain about missing references during your first run, +% issue |\testforauxonfirstrun|, which won't let |\finish|, +% |\putexplanatory|, |\puttextnotes|, or |\putemendations| run unless +% there is an .aux file for a previous run. \emph{Be sure to issue +% this command before issuing} |\begin{document}|, \emph{since that +% reads in the existing .aux file, and overwrites it with a new one.} % % \label{putexternalfiles} % \DescribeMacro{\putemendations} This macro closes the external file @@ -1510,25 +1503,25 @@ % command, see section \ref{multipleindex}, p.~\pageref{multipleindex}. % % \DescribeMacro{\finish} The -% |\finish| macro is deprecated but still available. 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 +% |\finish| macro is deprecated but still available. 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. +% 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 (by default *) 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. +% before). Then it adds a page explaining that the symbol (by default +% *) 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} @@ -1595,9 +1588,9 @@ % % \subsection{~Italicized poem titles and empty poem titles} Titles % with italics or other special formatting posed special problems in -% 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 +% 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 @@ -1630,13 +1623,13 @@ % \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 +% 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 @@ -1787,31 +1780,35 @@ % of these behaviors can be changed by changing the arguments to % |\set@p@emtitle| or |\c@ntentsinfo|. % -% If you wish to design a title which might have multiple lines, you will need to -% write three macros: one for the first line, one for middle lines, and one for -% the last lines. Before issuing |\set@p@emtitle| issue |\firstlinesettings|, -% |\middlelinesettings|, or |\lastlinesettings| (as the case may require). And -% issue |\restoresinglelinesettings| last of all in each of your -% 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. +% If you wish to design a title which might have multiple lines, +% and you wish to specify how those lines are broken up, you +% will need to write three macros: one for the first line, one for +% middle lines, and one for the last lines. +% (This only matters if you care how the title is broken up. You +% can choose to let \LaTeX\ do the breaking if you wish.) Before issuing +% |\set@p@emtitle| issue |\firstlinesettings|, |\middlelinesettings|, +% or |\lastlinesettings| (as the case may require). And issue +% |\restoresinglelinesettings| last of all in each of your 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}|. Up to version 2.49 -% of \textsf{poemscol} you had to be sure to define the label in the -% notes sections by issuing |\sources{\label{EP_LosDesvelados_AC}}|. -% This is no longer necessary, and |\JHpoemtitle| defines both the -% |\label| and the |\pageref|. Instructions are -% given in section \ref{JHpoemtitle}, p.~\pageref{JHpoemtitle} for how to -% construct similar commands for sequences, sequence sections, and so -% on. +% 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}|. Up to +% version 2.49 of \textsf{poemscol} you had to be sure to define the +% label in the notes sections by issuing +% |\sources{\label{EP_LosDesvelados_AC}}|. This is no longer +% necessary, and |\JHpoemtitle| defines both the |\label| and the +% |\pageref|. Instructions are given in section \ref{JHpoemtitle}, +% p.~\pageref{JHpoemtitle} for how to construct similar commands for +% sequences, sequence sections, and so on. % % \begin{sloppypar} % The following related commands are defined already @@ -1899,10 +1896,11 @@ % \subsection{~Font sizes, skips, sinks indents, and penalties} % % \label{changingfontsandleading} -% \textsf{poemscol} sets the font sizes, but not the font family, of fonts for many -% common tasks, in order to create a hierarchy of sizes. They can be changed -% with a |\renewcommand| of the following form, where the first number is -% the font size in points and the second is the leading:\\ +% \textsf{poemscol} sets the font sizes, but not the font family, of +% fonts for many common tasks, in order to create a hierarchy of +% sizes. They can be changed with a |\renewcommand| of the following +% form, where the first number is the font size in points and the +% second is the leading:\\ % |\renewcommand{\volumetitlefont}{\fontsize{18}{23}\selectfont}| % % @@ -2071,14 +2069,14 @@ % please. % %\DescribeMacro{prosesection} -% Prose sections should be enclosed in a |prosesection| environment -% (between |\begin{prosesection}| and -% |\end{prosesection}|). Entering this environment sets the modulo repeat for line -% numbering to the same value that prevails in verse contexts, and -% resets the prose line number to zero. If for some reason you do not -% wish to reset the line number but continue on from where it left off at the end of -% the last prose section, use the |prosesectionnoreset| environment -% instead. +% Prose sections should be enclosed in a |prosesection| environment +% (between |\begin{prosesection}| and |\end{prosesection}|). Entering +% this environment sets the modulo repeat for line numbering to the +% same value that prevails in verse contexts, and resets the prose +% line number to zero. If for some reason you do not wish to reset +% the line number but continue on from where it left off at the end of +% the last prose section, use the |prosesectionnoreset| environment +% instead. % % \DescribeMacro{\setprosemodulo} % If you wish to set the modulo repeat for line numbering in prose to @@ -2088,22 +2086,24 @@ % % It is possible, if a prose section is interpolated in the midst of % verse, to number the prose and verse continuously. To move from a -% verse passage to a prose passage, just before the |\end{poem}| at the -% end of the first verse passage issue |\saveverselinenumber| to save -% the number of the verse passage. After you issue +% verse passage to a prose passage, just before the |\end{poem}| at +% the end of the first verse passage issue |\saveverselinenumber| to +% save the number of the verse passage. After you issue % |\begin{prosesection}| issue -% |\resetlinenumber[\theverselineumberscratch]| to apply that number to -% the prose section. To number continuously while moving from prose to -% verse is more tricky. One way might be to mark a label at the end of -% the prose passage with |\proselinelabel{prose end label}| (or some other -% suitably unique label). This label will record the line number of -% the last prose line. Pass that value to |\restoreverselinenumber| -% by issuing |\setcounterfromref{verselinenumberscratch}{prose end label}|. -% Then issue |\restoreverselinenumber| just after issuing the |\begin{poem}| that restarts -% the verse again. I would recommend -% against numbering verse and prose continuously, however, since a verse -% line and a prose line are different categories of thing, the one being -% an element of prosody, the other being only an element of typography. +% |\resetlinenumber[\theverselineumberscratch]| to apply that number +% to the prose section. To number continuously while moving from +% prose to verse is more tricky. One way might be to mark a label at +% the end of the prose passage with |\proselinelabel{prose end label}| +% (or some other suitably unique label). This label will record the +% line number of the last prose line. Pass that value to +% |\restoreverselinenumber| by issuing +% |\setcounterfromref{verselinenumberscratch}{prose end label}|. Then +% issue |\restoreverselinenumber| just after issuing the +% |\begin{poem}| that restarts the verse again. I would recommend +% against numbering verse and prose continuously, however, since a +% verse line and a prose line are different categories of thing, the +% one being an element of prosody, the other being only an element of +% typography. % % % \DescribeMacro{\proselinelabel} @@ -2167,9 +2167,10 @@ % |\prosetextnote[]{}{}| is, with an optional argument (for use with % line ranges, as usual), and two mandatory arguments (the first a % label to capture the line number, the second the lemma and comment). - -% |\proseaccidental| and |\prosetsaccidental| take only the two mandatory arguments, since -% by definition an accidental variant is confined to one line. +% +% |\proseaccidental| and |\prosetsaccidental| take only the two +% mandatory arguments, since by definition an accidental variant is +% confined to one line. % % One caveat: because the line numbers for notes in prose contexts % are generated by a label/ref mechanism, each note will result in a @@ -2230,16 +2231,15 @@ % |\marginsentencenumberstrue|. You can issue both, either, or neither of % these commands. % -% \DescribeMacro{\setpmmodulo} -% If you are putting sentence numbers in +% \DescribeMacro{\setpmmodulo} If you are putting sentence numbers in % 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 |\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{}|. +% 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{}|. % % \DescribeMacro{\pmsentencetwo} % \DescribeMacro{\pmsentencethree} @@ -2255,22 +2255,21 @@ % \DescribeMacro{\pmnumbersgutter} % \DescribeMacro{\pmnumbersouter} % If you wish to control the -% margin in which sentence and paragraph numbers appear, issue |\pmnumbersright|, -% |\pmnumbersleft|, |\pmnumbersgutter|, or -% |\pmnumbersouter|. By default, these numbers will line up with -% the line numbers in verse sections. If you change the value of -% |\marginparsep| for prose sections from those used by their verse equivalents, it is a -% good idea to issue the verse equivalent command -% (|\versenumberstoright| or whatever) again when you move -% from a prose to a verse environment. +% margin in which sentence and paragraph numbers appear, issue +% |\pmnumbersright|, |\pmnumbersleft|, |\pmnumbersgutter|, or +% |\pmnumbersouter|. By default, these numbers will line up with the +% line numbers in verse sections. If you change the value of +% |\marginparsep| for prose sections from those used by their verse +% equivalents, it is a good idea to issue the verse equivalent command +% (|\versenumberstoright| or whatever) again when you move from a +% prose to a verse environment. % % -% |\runningsentencenumberformat| sets the format of running sentence numbers. Currently it is -% |\textsuperscript| and |\tiny|. -% You can change this with |\renewcommand|. The format of marginal -% sentence numers is set by |\marginsentencenumberformat|. Currently it -% is |\tiny|. You can -% change this with |\renewcommmand|. +% |\runningsentencenumberformat| sets the format of running sentence +% numbers. Currently it is |\textsuperscript| and |\tiny|. You can +% change this with |\renewcommand|. The format of marginal sentence +% numers is set by |\marginsentencenumberformat|. Currently it is +% |\tiny|. You can change this with |\renewcommmand|. % % \DescribeMacro{\pmpara} % \DescribeMacro{\pmsentencebypara} @@ -2499,13 +2498,14 @@ % %\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 +% 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} @@ -2866,6 +2866,10 @@ % \begin{macrocode} \newcommand{\verseindent}{\hspace{2em}} % \end{macrocode} +% For multicolumn notes: +% \begin{macrocode} +\setlength{\columnsep}{15pt} +% \end{macrocode} % A hierarchy of indentations for sequence section titles and % subsection titles. % \begin{macrocode} @@ -3822,6 +3826,8 @@ \newtoks{\textnotescontentsname} \textnotescontentsname={Textual Notes} \newcommand{\changetextnotescontentsname}[1]{\textnotescontentsname={#1}} +\newif\iftextnotestwocol +\textnotestwocolfalse \newcommand{\maketextnotes}{\global\textnotesontrue \global\verselinenumberstrue \newwrite\textnotes @@ -3840,7 +3846,12 @@ \begin{center}{\normalfont \backmatterheaderfont \the\pmclnotesname}\end{center} \label{textualnotes} \lefthyphenmin=2\backmatterafterheadersink\tolerance=500\language=0 -\normalfont \backmattertextfont} +\normalfont \backmattertextfont +\iftextnotestwocol +\begin{multicols}{2} +\fi +\setlength{\parindent}{-10pt} +} } % \end{macrocode} % \end{macro} @@ -3857,7 +3868,9 @@ \newtoks{\emendationscontentsname} \emendationscontentsname={Emendations} \newcommand{\changeemendationscontentsname}[1]{% -\emendationscontentsname={#1}} +\emendationscontentsname={#1}} +\newif\ifemendationstwocol +\emendationstwocolfalse \newcommand{\makeemendations}{\global\emendationsontrue \newwrite\emendations \global\verselinenumberstrue @@ -3876,7 +3889,12 @@ \the\emendationsname}\end{center} \label{emendationnotes} \lefthyphenmin=2\backmatterafterheadersink\tolerance=500\language=0 -\normalfont \backmattertextfont} +\normalfont \backmattertextfont +\ifemendationstwocol +\begin{multicols}{2} +\fi +\setlength{\parindent}{-10pt} +} } % \end{macrocode} % \end{macro} @@ -3894,6 +3912,8 @@ \explanationscontentsname={Explanatory Notes} \newcommand{\changeexplanationscontentsname}[1]{% \explanationscontentsname={#1}} +\newif\ifexplanationstwocol +\explanationstwocolfalse \newcommand{\makeexplanatorynotes}{\global\explanontrue \global\verselinenumberstrue \newwrite\explanations @@ -3911,7 +3931,12 @@ \the\explanationsname}\end{center} \label{explanatorynotes} \lefthyphenmin=2\backmatterafterheadersink\tolerance=500\language=0 -\normalfont \backmattertextfont } +\normalfont \backmattertextfont +\ifexplanationstwocol +\begin{multicols}{2} +\fi +\setlength{\parindent}{-10pt} +} } % \end{macrocode} % \end{macro} @@ -4154,14 +4179,17 @@ \string{\string\contentsindentoneamount\string}}% \fi } - +\newif\ifputtitleinnotes +\puttitleinnotestrue \newcommand{\t@xtnotesinfo}[1]{\iftextnoteson \iftextnotesatend \immediate\write\textnotes{\string\notespoemclubpenalty}% \ifputpagenumberinnotes \@poempagetotextnotes{poem\thepoemnumber}% \fi +\ifputtitleinnotes \@poemtitletotextnotes{#1}% +\fi % \else % \relax \fi\fi @@ -5095,11 +5123,15 @@ % % % \begin{macrocode} +\newif\iftextnotessinglepar \newcommand{\textnote}[2][0]{% \iftextnoteson \setlemmarange{#1}% \immediate\write\textnotes{\checknoteheaders}% \literaltextnote{#2}% + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% \fi \resetlemmacounters } @@ -5119,6 +5151,9 @@ \iftextnotesatend\immediate\write\textnotes{\string\nobreak}\fi% \textnote{#1}% \iftextnotesatend\immediate\write\textnotes{\string\nobreak}\fi% + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% \fi\fi } % \end{macrocode} @@ -5168,6 +5203,9 @@ \def\next{#1}% \immediate\write\textnotes{\expandafter\strip\meaning\next}% \endgroup + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% \fi } % \end{macrocode} @@ -5198,6 +5236,7 @@ % \end{macro} % \begin{macro}{\emendation} % \begin{macrocode} +\newif\ifemendationssinglepar \newcommand{\emendation}[2][0]{ \ifemendationson \setlemmarange{#1}% @@ -5208,6 +5247,9 @@ \else \textnote{#2}% \fi % ifrangelemma} + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% iftextnotesinglepar \fi %iftextnoteson \fi % ifredundantemendations \ifnoemendyet % firstemendation @@ -5216,6 +5258,9 @@ \global\noemendyetfalse \immediate\write\emendations{\checknoteheaders}% \literalemend{#2}% + \ifemendationssinglepar% + \literalemend{\par}% + \fi% ifemendationssinglepar \fi % ifemendationson \resetlemmacounters } @@ -5231,6 +5276,7 @@ % \begin{macro}{\explanatory} % Again, |\firstexplanatory| is internal, called by |\explanatory|. % \begin{macrocode} +\newif\ifexplanationssinglepar \newcommand{\explanatory}[2][0]{% \ifexplanon \setlemmarange{#1}% @@ -5240,7 +5286,10 @@ \global\noexplainyetfalse \immediate\write\explanations{\checknoteheaders}% \literalexplain{#2}% -\fi % ifexplanon + \ifexplanationssinglepar% + \literalexplain{\par}% + \fi% + \fi % ifexplanon \resetlemmacounters } @@ -5270,13 +5319,21 @@ \endgroup} \makeatother \newcommand{\definenewnotetype}[5]{% -% 1. make an if and set it to true by default. make an if for the first -% instance of the command per poem and set it to false +% 1. make an if for this kind of note and set it to true by default; +% make an if for the first instance of the command per poem and set it +% to false; make an if for setting the notes in single note +% paragraphs and set it to false; make an if for setting +% these notes in two column mode and set it to false +% % Thanks to Igor Pechtchanski and Ulrich Schwarz. \expandafter\newif\csname if#1son\endcsname \global\csname #1sontrue\endcsname \expandafter\newif\csname ifno#1yet\endcsname \csname no#1yettrue\endcsname +\expandafter\newif\csname if#1ssinglepar\endcsname +\csname #1singleparfalse\endcsname +\expandafter\newif\csname if#1stwocol\endcsname +\csname #1stwocolfalse\endcsname % 2. open a new output stream \expandafter\newwrite\csname #1s\endcsname % 3. open a file to associate with the stream @@ -5315,24 +5372,32 @@ % immediate write to set a label for the table of contents \immediate\write\csname #1s\endcsname{ \string\label\string{#1notes\string}} -% literal write to turn hyphenation on and set the font for the note -% section +% literal write to turn hyphenation on, set the font for the note +% section, and turn on two column mode (if the boolean is set) \csname literal#1\endcsname{\lefthyphenmin=2\backmatterafterheadersink \tolerance=500\language=0 \normalfont \backmattertextfont} +\immediate\write\csname #1s\endcsname{\string\if#1stwocol} +\csname +literal#1\endcsname{\begin{multicols}{2}\fi\setlength{\parindent}{-10pt}}% +% \csname literal#1\endcsname{\setlength}{\parindent}{2}}% problem here % 6. set up a command to write the page and title of the poem for the first % instance of this kind of note in a poem \expandafter\newcommand\csname first#1\endcsname{ -\immediate\write\expandafter\csname#1s\endcsname{\titletoothernotes}} +\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% +\setlemmarange{##1}% +\csname ifno#1yet\endcsname% + \csname first#1\endcsname% + \fi% \global\csname no#1yetfalse\endcsname% -\immediate\write\expandafter\csname #1s\endcsname{\checknoteheaders}% +\immediate\write\expandafter\csname +#1s\endcsname{\string\nobreak\string\nobreak\checknoteheaders}% \csname literal#1\endcsname{##2}% +\csname if#1ssinglepar\endcsname% +\csname literal#1\endcsname{\par}% +\fi% \resetlemmacounters% } % prose version @@ -5345,6 +5410,9 @@ \global\csname no#1yetfalse\endcsname% \immediate\write\expandafter\csname #1s\endcsname{\checkprosenoteheaders}% \csname literal#1\endcsname{##3}% +\csname if#1ssinglepar\endcsname% +\csname literal#1\endcsname{\par}% +\fi% \resetlemmacounters\unskip% } % pm version @@ -5357,6 +5425,9 @@ \immediate\write\expandafter\csname #1s\endcsname{\pmchecknoteheaders\string~}% \immediate\write\expandafter\csname #1s\endcsname{\pmciterange}% \csname literal#1\endcsname{##2}% +\csname if#1ssinglepar\endcsname% +\csname literal#1\endcsname{\par}% +\fi% \pmresetlemmacounters\unskip% } % 8. modify the end of the poem environment to reset the first @@ -5377,6 +5448,9 @@ % command for reading in and printing the output file \expandafter\newcommand\csname put#1s\endcsname{ \newpage\hyphenationforsmall +\csname if#1stwocol\endcsname% +\csname literal#1\endcsname{\end{multicols}}% +\fi %\iftwocol \immediate\expandafter\closeout\csname #1s\endcsname \expandafter\input \jobname.#2 \ifpoemcontentson @@ -5574,6 +5648,9 @@ r@#2\endcsname{}{}\@nil \setproselemmarange{#2}{#1}% \immediate\write\textnotes{\checkprosenoteheaders}% \literaltextnote{#3}% +\iftextnotessinglepar% +\literaltextnote{\par}% +\fi% \resetlemmacounters% \fi\unskip% } @@ -5594,6 +5671,9 @@ r@#2\endcsname{}{}\@nil \prosetextnote{#2}{#3}% \fi % ifrangelemma} \fi %iftextnoteson +\iftextnotessinglepar% +\literaltextnote{\par}% +\fi% iftextnotessinglepar \fi % ifredundantemendations \ifnoemendyet % firstemendation \firstemendation @@ -5601,7 +5681,10 @@ r@#2\endcsname{}{}\@nil \global\noemendyetfalse \immediate\write\emendations{\checkprosenoteheaders}% \literalemend{#3}% -\resetlemmacounters% +\ifemendationssinglepar% +\literalemend{\par}% +\fi% ifemendationssinglep + \resetlemmacounters% \fi\unskip% } % \end{macrocode} @@ -5618,7 +5701,10 @@ r@#2\endcsname{}{}\@nil \global\noexplainyetfalse% \immediate\write\explanations{\checkprosenoteheaders}% \literalexplain{#3}% -\resetlemmacounters% +\ifexplanationssinglepar% + \literalexplain{\par}% + \fi% ifexplanationssinglepar + \resetlemmacounters% \fi\unskip% } % \end{macrocode} @@ -5631,7 +5717,10 @@ r@#2\endcsname{}{}\@nil \immediate\write\textnotes{\string\nobreak}% \prosetextnote{#1}{#2}% \immediate\write\textnotes{\string\nobreak}% - \fi\fi + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% +\fi\fi } \newcommand{\prosetsvariant}[3][0]{\iftextnoteson \ifincludetypescripts @@ -5639,7 +5728,10 @@ r@#2\endcsname{}{}\@nil \textnotes{\string\nobreak}% \prosetextnote[#1]{#2}{#3}% \immediate\write\textnotes{\string\nobreak}% - \fi\fi + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% +\fi\fi } \newcommand{\prosetsaccidental}[2]{\iftextnoteson \ifincludetypescripts\proseaccidental{#1}{#2}\fi\fi} @@ -5953,6 +6045,9 @@ r@#2\endcsname{}{}\@nil \immediate\write\textnotes{\pmchecknoteheaders\string~}% \immediate\write\textnotes{\pmciterange}% \literaltextnote{#2}% + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% \fi% \pmresetlemmacounters% \unskip} @@ -5970,7 +6065,10 @@ r@#2\endcsname{}{}\@nil \immediate\write\explanations{\pmchecknoteheaders\string~}% \immediate\write\explanations{\pmciterange}% \literalexplain{#2}% -\fi % ifexplanon + \ifexplanationssinglepar% + \literalexplain{\par}% + \fi %ifexplanationssinglepar + \fi % ifexplanon \pmresetlemmacounters% \unskip% } @@ -5997,7 +6095,10 @@ r@#2\endcsname{}{}\@nil \immediate\write\emendations{\pmchecknoteheaders\string~}% \immediate\write\emendations{\pmciterange}% \literalemend{#2}% -\fi % ifemendationson +\ifemendationssinglepar% + \literalemend{\par}% + \fi% ifemendationssinglepar + \fi % ifemendationson \pmresetlemmacounters% } % \end{macrocode} @@ -6010,7 +6111,10 @@ r@#2\endcsname{}{}\@nil \immediate\write\textnotes{\string\nobreak}% \pmtextnote{#1}% \immediate\write\textnotes{\string\nobreak}% - \fi\fi% + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% +\fi\fi% } % \end{macrocode} % \end{macro} @@ -6021,7 +6125,10 @@ r@#2\endcsname{}{}\@nil \immediate\write\textnotes{\string\nobreak}% \pmtextnote[#1]{#2}% \immediate\write\textnotes{\string\nobreak}% - \fi\fi% + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% +\fi\fi% } \newcommand{\pmtsaccidental}[1]{\iftextnoteson\ifincludetypescripts\pmaccidental{#1}\fi\fi} % \end{macrocode} @@ -6711,6 +6818,9 @@ wherever such spaces are lost in pagination. % \begin{macrocode} \newcommand{\putemendations}{ \ifemendationson +\ifemendationstwocol +\literalemend{\end{multicols}} +\fi %\iftextnotetwocol \newpage \hyphenationforsmall \immediate\closeout\emendations @@ -6734,6 +6844,9 @@ wherever such spaces are lost in pagination. % \begin{macrocode} \newcommand{\putexplanatory}{ \ifexplanon +\ifexplanationstwocol +\literalexplain{\end{multicols}} +\fi %\iftextnotetwocol \newpage \hyphenationforsmall \immediate\closeout\explanations @@ -6757,6 +6870,9 @@ wherever such spaces are lost in pagination. % \begin{macrocode} \newcommand{\puttextnotes}{ \iftextnoteson +\iftextnotestwocol +\literaltextnote{\end{multicols}} +\fi %\iftextnotetwocol \newpage \hyphenationforsmall \immediate\closeout\textnotes diff --git a/Master/texmf-dist/tex/latex/poemscol/poemscol.sty b/Master/texmf-dist/tex/latex/poemscol/poemscol.sty index 8e14ff22cb5..d82159be6e7 100644 --- a/Master/texmf-dist/tex/latex/poemscol/poemscol.sty +++ b/Master/texmf-dist/tex/latex/poemscol/poemscol.sty @@ -22,8 +22,7 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e}[1997/12/01] \ProvidesPackage{poemscol} - [2012/08/30 v2.6 poemscol file] - + [2013/02/06 v2.61 poemscol file] @@ -89,6 +88,7 @@ \newcommand{\notesvolumetitlepenalty}{\penalty-1500} \hfuzz=2pt \newcommand{\verseindent}{\hspace{2em}} +\setlength{\columnsep}{15pt} \newdimen\titleindentamount \titleindentamount=1pc \newdimen\titleindenttwoamount \titleindenttwoamount=2pc \newdimen\titleindentthreeamount \titleindentthreeamount=3pc @@ -589,6 +589,8 @@ \newtoks{\textnotescontentsname} \textnotescontentsname={Textual Notes} \newcommand{\changetextnotescontentsname}[1]{\textnotescontentsname={#1}} +\newif\iftextnotestwocol +\textnotestwocolfalse \newcommand{\maketextnotes}{\global\textnotesontrue \global\verselinenumberstrue \newwrite\textnotes @@ -607,7 +609,12 @@ \begin{center}{\normalfont \backmatterheaderfont \the\pmclnotesname}\end{center} \label{textualnotes} \lefthyphenmin=2\backmatterafterheadersink\tolerance=500\language=0 -\normalfont \backmattertextfont} +\normalfont \backmattertextfont +\iftextnotestwocol +\begin{multicols}{2} +\fi +\setlength{\parindent}{-10pt} +} } \newtoks{\emendationsname} @@ -620,6 +627,8 @@ \emendationscontentsname={Emendations} \newcommand{\changeemendationscontentsname}[1]{% \emendationscontentsname={#1}} +\newif\ifemendationstwocol +\emendationstwocolfalse \newcommand{\makeemendations}{\global\emendationsontrue \newwrite\emendations \global\verselinenumberstrue @@ -638,7 +647,12 @@ \the\emendationsname}\end{center} \label{emendationnotes} \lefthyphenmin=2\backmatterafterheadersink\tolerance=500\language=0 -\normalfont \backmattertextfont} +\normalfont \backmattertextfont +\ifemendationstwocol +\begin{multicols}{2} +\fi +\setlength{\parindent}{-10pt} +} } \newtoks{\explanationsname} @@ -651,6 +665,8 @@ \explanationscontentsname={Explanatory Notes} \newcommand{\changeexplanationscontentsname}[1]{% \explanationscontentsname={#1}} +\newif\ifexplanationstwocol +\explanationstwocolfalse \newcommand{\makeexplanatorynotes}{\global\explanontrue \global\verselinenumberstrue \newwrite\explanations @@ -668,7 +684,12 @@ \the\explanationsname}\end{center} \label{explanatorynotes} \lefthyphenmin=2\backmatterafterheadersink\tolerance=500\language=0 -\normalfont \backmattertextfont } +\normalfont \backmattertextfont +\ifexplanationstwocol +\begin{multicols}{2} +\fi +\setlength{\parindent}{-10pt} +} } \newcommand{\@pagemarktotextnotes}[1]{% @@ -833,14 +854,17 @@ \string{\string\contentsindentoneamount\string}}% \fi } - +\newif\ifputtitleinnotes +\puttitleinnotestrue \newcommand{\t@xtnotesinfo}[1]{\iftextnoteson \iftextnotesatend \immediate\write\textnotes{\string\notespoemclubpenalty}% \ifputpagenumberinnotes \@poempagetotextnotes{poem\thepoemnumber}% \fi +\ifputtitleinnotes \@poemtitletotextnotes{#1}% +\fi \fi\fi } \newcommand{\poemtitle}[1]{% @@ -1459,11 +1483,15 @@ \string{\string\mark\string{\string\thenotepageholdertitle\string}\string}\string\unskip \string\unskip\string\relax\ \citerange :\string~\string\nolinebreak}% +\newif\iftextnotessinglepar \newcommand{\textnote}[2][0]{% \iftextnoteson \setlemmarange{#1}% \immediate\write\textnotes{\checknoteheaders}% \literaltextnote{#2}% + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% \fi \resetlemmacounters } @@ -1473,6 +1501,9 @@ \iftextnotesatend\immediate\write\textnotes{\string\nobreak}\fi% \textnote{#1}% \iftextnotesatend\immediate\write\textnotes{\string\nobreak}\fi% + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% \fi\fi } \newcommand{\tsvariant}[2][0]{% @@ -1494,6 +1525,9 @@ \def\next{#1}% \immediate\write\textnotes{\expandafter\strip\meaning\next}% \endgroup + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% \fi } \newcommand{\titletoothernotes}{\string\par @@ -1501,6 +1535,7 @@ \string\setcounterfrompageref\string{notepageholdertitle\string}% \string{\@compoundlabelscratch\string}% \string\textbf\string{\ \the\fulltitleholder\string}}% +\newif\ifemendationssinglepar \newcommand{\emendation}[2][0]{ \ifemendationson \setlemmarange{#1}% @@ -1511,6 +1546,9 @@ \else \textnote{#2}% \fi % ifrangelemma} + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% iftextnotesinglepar \fi %iftextnoteson \fi % ifredundantemendations \ifnoemendyet % firstemendation @@ -1519,12 +1557,16 @@ \global\noemendyetfalse \immediate\write\emendations{\checknoteheaders}% \literalemend{#2}% + \ifemendationssinglepar% + \literalemend{\par}% + \fi% ifemendationssinglepar \fi % ifemendationson \resetlemmacounters } \newcommand{\firstemendation}{\ifemendationsatend \immediate\write\emendations{\titletoothernotes}\fi } +\newif\ifexplanationssinglepar \newcommand{\explanatory}[2][0]{% \ifexplanon \setlemmarange{#1}% @@ -1534,7 +1576,10 @@ \global\noexplainyetfalse \immediate\write\explanations{\checknoteheaders}% \literalexplain{#2}% -\fi % ifexplanon + \ifexplanationssinglepar% + \literalexplain{\par}% + \fi% + \fi % ifexplanon \resetlemmacounters } @@ -1554,6 +1599,10 @@ \global\csname #1sontrue\endcsname \expandafter\newif\csname ifno#1yet\endcsname \csname no#1yettrue\endcsname +\expandafter\newif\csname if#1ssinglepar\endcsname +\csname #1singleparfalse\endcsname +\expandafter\newif\csname if#1stwocol\endcsname +\csname #1stwocolfalse\endcsname \expandafter\newwrite\csname #1s\endcsname \immediate\expandafter\openout\csname #1s\endcsname=\expandafter\jobname .#2 \expandafter\newcommand\csname literal#1\endcsname[1]{ @@ -1584,16 +1633,23 @@ \csname literal#1\endcsname{\lefthyphenmin=2\backmatterafterheadersink \tolerance=500\language=0 \normalfont \backmattertextfont} +\immediate\write\csname #1s\endcsname{\string\if#1stwocol} +\csname +literal#1\endcsname{\begin{multicols}{2}\fi\setlength{\parindent}{-10pt}}% \expandafter\newcommand\csname first#1\endcsname{ -\immediate\write\expandafter\csname#1s\endcsname{\titletoothernotes}} +\immediate\write\expandafter\csname #1s\endcsname{\titletoothernotes}} \expandafter\newcommand\csname #1\endcsname[2][0]{% - \setlemmarange{##1}% - \csname ifno#1yet\endcsname% - \csname first#1\endcsname% - \fi% +\setlemmarange{##1}% +\csname ifno#1yet\endcsname% + \csname first#1\endcsname% + \fi% \global\csname no#1yetfalse\endcsname% -\immediate\write\expandafter\csname #1s\endcsname{\checknoteheaders}% +\immediate\write\expandafter\csname +#1s\endcsname{\string\nobreak\string\nobreak\checknoteheaders}% \csname literal#1\endcsname{##2}% +\csname if#1ssinglepar\endcsname% +\csname literal#1\endcsname{\par}% +\fi% \resetlemmacounters% } \expandafter\newcommand\csname prose#1\endcsname[3][0]{% % @@ -1605,6 +1661,9 @@ \global\csname no#1yetfalse\endcsname% \immediate\write\expandafter\csname #1s\endcsname{\checkprosenoteheaders}% \csname literal#1\endcsname{##3}% +\csname if#1ssinglepar\endcsname% +\csname literal#1\endcsname{\par}% +\fi% \resetlemmacounters\unskip% } \expandafter\newcommand\csname pm#1\endcsname[2][0]{% @@ -1616,6 +1675,9 @@ \immediate\write\expandafter\csname #1s\endcsname{\pmchecknoteheaders\string~}% \immediate\write\expandafter\csname #1s\endcsname{\pmciterange}% \csname literal#1\endcsname{##2}% +\csname if#1ssinglepar\endcsname% +\csname literal#1\endcsname{\par}% +\fi% \pmresetlemmacounters\unskip% } \makeatletter @@ -1630,6 +1692,9 @@ \expandafter\newcommand\csname put#1s\endcsname{ \newpage\hyphenationforsmall +\csname if#1stwocol\endcsname% +\csname literal#1\endcsname{\end{multicols}}% +\fi %\iftwocol \immediate\expandafter\closeout\csname #1s\endcsname \expandafter\input \jobname.#2 \ifpoemcontentson @@ -1759,6 +1824,9 @@ r@#2\endcsname{}{}\@nil \setproselemmarange{#2}{#1}% \immediate\write\textnotes{\checkprosenoteheaders}% \literaltextnote{#3}% +\iftextnotessinglepar% +\literaltextnote{\par}% +\fi% \resetlemmacounters% \fi\unskip% } @@ -1774,6 +1842,9 @@ r@#2\endcsname{}{}\@nil \prosetextnote{#2}{#3}% \fi % ifrangelemma} \fi %iftextnoteson +\iftextnotessinglepar% +\literaltextnote{\par}% +\fi% iftextnotessinglepar \fi % ifredundantemendations \ifnoemendyet % firstemendation \firstemendation @@ -1781,7 +1852,10 @@ r@#2\endcsname{}{}\@nil \global\noemendyetfalse \immediate\write\emendations{\checkprosenoteheaders}% \literalemend{#3}% -\resetlemmacounters% +\ifemendationssinglepar% +\literalemend{\par}% +\fi% ifemendationssinglep + \resetlemmacounters% \fi\unskip% } \newcommand{\proseexplanatory}[3][0]{% @@ -1794,7 +1868,10 @@ r@#2\endcsname{}{}\@nil \global\noexplainyetfalse% \immediate\write\explanations{\checkprosenoteheaders}% \literalexplain{#3}% -\resetlemmacounters% +\ifexplanationssinglepar% + \literalexplain{\par}% + \fi% ifexplanationssinglepar + \resetlemmacounters% \fi\unskip% } \newcommand{\proseaccidental}[2]{ @@ -1803,7 +1880,10 @@ r@#2\endcsname{}{}\@nil \immediate\write\textnotes{\string\nobreak}% \prosetextnote{#1}{#2}% \immediate\write\textnotes{\string\nobreak}% - \fi\fi + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% +\fi\fi } \newcommand{\prosetsvariant}[3][0]{\iftextnoteson \ifincludetypescripts @@ -1811,7 +1891,10 @@ r@#2\endcsname{}{}\@nil \textnotes{\string\nobreak}% \prosetextnote[#1]{#2}{#3}% \immediate\write\textnotes{\string\nobreak}% - \fi\fi + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% +\fi\fi } \newcommand{\prosetsaccidental}[2]{\iftextnoteson \ifincludetypescripts\proseaccidental{#1}{#2}\fi\fi} @@ -2043,6 +2126,9 @@ r@#2\endcsname{}{}\@nil \immediate\write\textnotes{\pmchecknoteheaders\string~}% \immediate\write\textnotes{\pmciterange}% \literaltextnote{#2}% + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% \fi% \pmresetlemmacounters% \unskip} @@ -2056,7 +2142,10 @@ r@#2\endcsname{}{}\@nil \immediate\write\explanations{\pmchecknoteheaders\string~}% \immediate\write\explanations{\pmciterange}% \literalexplain{#2}% -\fi % ifexplanon + \ifexplanationssinglepar% + \literalexplain{\par}% + \fi %ifexplanationssinglepar + \fi % ifexplanon \pmresetlemmacounters% \unskip% } @@ -2079,7 +2168,10 @@ r@#2\endcsname{}{}\@nil \immediate\write\emendations{\pmchecknoteheaders\string~}% \immediate\write\emendations{\pmciterange}% \literalemend{#2}% -\fi % ifemendationson +\ifemendationssinglepar% + \literalemend{\par}% + \fi% ifemendationssinglepar + \fi % ifemendationson \pmresetlemmacounters% } \newcommand{\pmaccidental}[1]{% @@ -2088,14 +2180,20 @@ r@#2\endcsname{}{}\@nil \immediate\write\textnotes{\string\nobreak}% \pmtextnote{#1}% \immediate\write\textnotes{\string\nobreak}% - \fi\fi% + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% +\fi\fi% } \newcommand{\pmtsvariant}[2][0]{\iftextnoteson% \ifincludetypescripts% \immediate\write\textnotes{\string\nobreak}% \pmtextnote[#1]{#2}% \immediate\write\textnotes{\string\nobreak}% - \fi\fi% + \iftextnotessinglepar% + \literaltextnote{\par}% + \fi% +\fi\fi% } \newcommand{\pmtsaccidental}[1]{\iftextnoteson\ifincludetypescripts\pmaccidental{#1}\fi\fi} \newcommand{\textnotesatfoot}{% first redefine textnotes @@ -2528,6 +2626,9 @@ wherever such spaces are lost in pagination. } \newcommand{\putemendations}{ \ifemendationson +\ifemendationstwocol +\literalemend{\end{multicols}} +\fi %\iftextnotetwocol \newpage \hyphenationforsmall \immediate\closeout\emendations @@ -2546,6 +2647,9 @@ wherever such spaces are lost in pagination. \fi} \newcommand{\putexplanatory}{ \ifexplanon +\ifexplanationstwocol +\literalexplain{\end{multicols}} +\fi %\iftextnotetwocol \newpage \hyphenationforsmall \immediate\closeout\explanations @@ -2564,6 +2668,9 @@ wherever such spaces are lost in pagination. \fi} \newcommand{\puttextnotes}{ \iftextnoteson +\iftextnotestwocol +\literaltextnote{\end{multicols}} +\fi %\iftextnotetwocol \newpage \hyphenationforsmall \immediate\closeout\textnotes -- cgit v1.2.3