texlive[55528] Master/texmf-dist: poemscol (12jun20)

commits+karl at tug.org commits+karl at tug.org
Fri Jun 12 23:02:51 CEST 2020


Revision: 55528
          http://tug.org/svn/texlive?view=revision&revision=55528
Author:   karl
Date:     2020-06-12 23:02:51 +0200 (Fri, 12 Jun 2020)
Log Message:
-----------
poemscol (12jun20)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/poemscol/poemscol.pdf
    trunk/Master/texmf-dist/source/latex/poemscol/poemscol.dtx
    trunk/Master/texmf-dist/tex/latex/poemscol/poemscol.sty

Modified: trunk/Master/texmf-dist/doc/latex/poemscol/poemscol.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/source/latex/poemscol/poemscol.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/poemscol/poemscol.dtx	2020-06-12 21:02:37 UTC (rev 55527)
+++ trunk/Master/texmf-dist/source/latex/poemscol/poemscol.dtx	2020-06-12 21:02:51 UTC (rev 55528)
@@ -1,7 +1,7 @@
 % \iffalse meta-comment
 % !TEX TS-program = dtxmk 
 %
-% Copyright (C) 2002-2019 by John Burt <burt at brandeis.edu>
+% Copyright (C) 2002-2020 by John Burt <burt at brandeis.edu>
 % --------------------------------------------------
 % 
 % This file may be distributed and/or modified under the
@@ -23,7 +23,7 @@
 % \iffalse
 %<package>\NeedsTeXFormat{LaTeX2e}[1997/12/01]
 %<package>\ProvidesPackage{poemscol}
-%<package>   [2020/06/02 v3.14159 poemscol file] 
+%<package>   [2020/06/12 v3.141592 poemscol file] 
 %
 %<*driver>
 \documentclass{ltxdoc}
@@ -38,7 +38,7 @@
 %</driver>
 % \fi
 %
-% \CheckSum{10550}
+% \CheckSum{10704}
 %
 % \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
@@ -268,6 +268,11 @@
 % and its siblings. Marginal marks are now set using their own inserts, rather than using marginpar.}
 % \changes{v3.14159}{2020/06/02}{Marginal marks set by JHpoemtitle now work with the different 
 % title placement schemes.}
+% \changes{v3.141592}{2020/06/12}{Special commands for titles with footnotes (where the footnotes 
+% are authorial and part of the title). Title footnotes can be set  at the bottom of the page, like 
+% traditional footnotes, at the bottom of the page like ``Layered'' footnotes, or at the 
+% end of the poem. Marginal marks set by JHpoemtitle can be placed 
+% independently of the marginal marks produced by margreftextnote..}
 % \DoNotIndex{\newcommand,\newenvironment,\def,\edef,\else,\renewcommand,\makeatletter,\makeatother}
 % \DoNotIndex{\abovedisplayskip,\belowdisplayskip,\abovedisplayshortskip,\belowdisplayshortskip}
 % \DoNotIndex{\newcommand, \section, \subsection, \subsubsection,
@@ -300,15 +305,15 @@
 % \textsc, \unskip} 
 % \setcounter{IndexColumns}{2} 
 % \MakeShortVerb{|}
-% \def\fileversion{3.14159} 
-% \def\filedate{2 June 2020} 
-% \def\docdate{2 June 2020}
+% \def\fileversion{3.141592} 
+% \def\filedate{12 June 2020} 
+% \def\docdate{12 June 2020}
 %  \title{Typesetting Poetry Collections with
 % \textsf{poemscol}\thanks{This document corresponds to
 % \textsf{poemscol}~\fileversion, dated \filedate.}} 
 % \author{John Burt
 % \\ \texttt{burt at brandeis.edu}} 
-% \date{2 June 2020} 
+% \date{12 June 2020} 
 % \maketitle
 % \begin{abstract} \textsf{poemscol} provides commands for \LaTeX\ for
 % setting collections of poetry.  It is especially suited for setting
@@ -2290,7 +2295,8 @@
 % range of line numbers of the lemma. To define a footnote called 
 % |\mynote|, first declare new footnote |\footnoteE| (A, B, C and D 
 % are reserved for sources, textual notes, emendations, and explanatory notes, 
-% respectively). Then issue: \begin{verbatim}
+% respectively, and H is reserved for use for titles with 
+% authorial footnotes). Then issue: \begin{verbatim}
 %  \newcommand{\mynote}[2][0]{\setlemmarange{#1}\\
 % \FootnotetextE{\citerange}{#2}
 %  \resetlemmacounters} \end{verbatim}
@@ -2811,14 +2817,19 @@
 % This is so  that you can control the placement of these marks 
 % independently of how you place the line numbers (which use 
 % |\pmclsidepar|) or other marginal marks you may define using 
-% |\marginpar|. Horizontal placement of the mark is controlled by the 
+% |\marginpar|. 
+%
+% Horizontal placement of the mark is controlled by the 
 % length |\JHmarginparsep|, which is set by default to 0 pt. Vertical 
-% placement of the marginal mark, relative to the baseline, is set by 
+% placement of the marginal mark for a textual note, relative to the baseline, is set by 
 % the length |\JHmarginparvshift|, which is set by default to 0 pt.
-%  |\JHpoemtitle|, however, uses the same commands to 
-% control the placement of the mark after the title, and the two
+% The horizontal placement of the 
+% marginal mark set by  |\JHpoemtitle|,  and its siblings, however, 
+% is controlled by the length |\JHtitlemarginparsep|. |\JHtitlemarginparsep|
+% is set by default to value of |\JHmarginparsep|, 
+% so that the two
 % kinds of mark
-% are designed so that they should always align vertically.
+% should  align with each other by default. 
 % \end{sloppy}
 %
 % By default these marginal references are placed in the right 
@@ -2828,7 +2839,9 @@
 % If you wish the 
 % marks to aways be in the outer margin, issue the command 
 % |\JHmarksouter|. If you wish the marks to always be in the inner 
-% margin, issue |\JHmarksgutter|.
+% margin, issue |\JHmarksgutter|. (The marks for titles and the marks for 
+%  notes always appear on the same side of the page, and the different |\JHmarks| commands
+% always move both kinds of mark.)
 %
 % If you are centering the verse block on the longest line, the verse 
 % line numbers normally move in towards the verse block. (To center 
@@ -2835,7 +2848,11 @@
 % the verse block on the longest line, see section 
 % \ref{centeringtextblock}.) The marginal 
 % marks for |\margeftextnote| do not do this, since they are designed to
-% line up with the marginal mark produced by |\JHpoemtitle|. 
+% line up with the marginal mark produced by |\JHpoemtitle|.  You can change
+% the alignment if you wish by changing the value of either the length |\JHmarginparsep|, 
+% which controls the placement of marginal marks for notes, or changing the value 
+% of the length |\JHtitlemarginparsep|, which controls the placement of the marginal
+% marks for titles. 
 % 
 % \begin{sloppypar}
 % If you define a new endnote type using |\definenewnotetype|,
@@ -2864,6 +2881,65 @@
 % \DescribeMacro{\margrefexplanatory}|\margrefexplanatory| is a 
 % version of |\margreftextnote| for explanatory notes.
 %
+% \subsection{~Titles with footnotes}
+% In James Benstead's edition of the collected poems of Hugh 
+% MacDiarmid, many of the titles of the poems have footnotes by the 
+% author. Under most circumstances, one can put a note about the title 
+% in the textual notes section simply by, after the |\begin{poem}| 
+% command, issuing something like this: |\literaltextnote{title] text of note}|. 
+% (One can make similar notes for the explanatory notes 
+% section or for the emendations section.) But MacDiarmid's notes are 
+% authorial, not editorial, and should be considered part of the 
+% title. At the same time, the notes should not be printed in the Table 
+% of Contents, nor for that matter in the endnotes sections. 
+% 
+% \DescribeMacro{\footnotepoemtitle} |\footnotepoemtitle| is for the default 
+% case. It takes two arguments. The first argument is the title of 
+% the poem. The second is the text of the footnote.
+%
+% \begin{sloppypar}
+% \DescribeMacro{\footnotepoemtitlefirstline} 
+% |\footnotepoemtitlefirstline| |\footnotepoemtitlemiddleline| and 
+% |\footnotepoemtitlelastline| are for long titles in which how the 
+% author broke up the title on the page matters, and one or more of 
+% the lines has a footnote. These commands also take two arguments, 
+% of which the first is the title line and the second is the text of 
+% the footnote.  You can intersperse these commands with 
+% |\poemtitlefirstline|
+% |\poemtitlemiddleline| or |\poemtitlelastline| (depending on which 
+% line has the footnote). The lines will be broken in the same way in 
+% the text and in the table of contents. \end{sloppypar}
+%
+% \DescribeMacro{\footnotesplitpoemtitle} |\footnotesplitpoemtitle| 
+% is for the most general case. Use it if there is a footnote in the middle 
+% of the title, or if you have a long title and don't need to ensure 
+% that it is broken in the text and in the table of contents in the 
+% same way. |\footnotesplitpoemtitle| takes three arguments. The first 
+% argument is the first part of the title, up to the footnote mark, 
+% the second is the text of the footnote, and the third is the rest 
+% of the title.
+%
+% I have not created footnoted titles for sequences, sequence 
+% sections, and so on. But if you compare how those titles are 
+% defined in the implementation section below and how footnoted 
+% titles are defined at \ref{footnotetitles} 
+% (page \pageref{footnotetitles}), how to write those commands should be clear.
+%
+% You can control where the footnotes for footnoted titles are placed.
+% By default, those footnotes are conventional footnotes (and all
+% their parameters are set in the way normal \LaTeX\ footnotes are
+% set).  You can force the default setting by issuing the command
+% |\maketitlefootnotesplain| in your preamble.  If you are setting
+% your textual notes or other notes at the foot of the page using
+% ``layers'' of footnotes, you can treat these footnotes as just
+% another layer by issuing the command |\maketitlefootnoteslayered| in
+% your preamble.  (``Layered'' footnotes are described at section \ref{makingfootnotes}, 
+% page \pageref{makingfootnotes}.) If you wish to place these footnotes at the end of 
+% the poem, you must issue |\maketitlefootnotesatpoemend| in the 
+% preamble. Just before you declare a title with a footnote, issue 
+% |\makepoemendnotes|,  and just after issuing |\end{poem}| for that 
+% poem, issue |\putpoemendnotes|. 
+%
 % \subsection{~Empty poem titles and italicized poem titles} 
 % 
 % \DescribeMacro{\poemtitlenotitle}
@@ -7140,6 +7216,8 @@
 \setlength{\JHmarginparwidth}{\marginparwidth}
 \newlength{\JHmarginparsepmin}
 \setlength{\JHmarginparsepmin}{\marginparsepmin}
+\newlength{\JHtitlemarginparsep}%
+\setlength{\JHtitlemarginparsep}{\JHmarginparsep}%
 \newif{\ifJHmarkstoleft}
 \JHmarkstolefttrue
 \newif{\ifJHmarkstoright}
@@ -7307,10 +7385,10 @@
 \newcommand{\JHrighttitlemarginpar}[1]{%
 \pmclbsphack\strut\vadjust{%
 \rlap{\kern-\parindent%
-\kern\textwidth\kern\JHmarginparsep% at right
-\ifcentertitleson
-\kern-.5\JHtextwidth\kern\marginparsepmin
-\fi
+\kern\textwidth\kern\JHtitlemarginparsep% at right
+\ifcentertitleson%
+\kern-.5\JHtextwidth\kern\marginparsepmin%
+\fi%
 \setbox0=\vtop to 0pt{% added
 \begin{minipage}[t]{\JHmarginparwidth}% added
 #1%
@@ -7318,7 +7396,6 @@
 \vss}% 
 \vtop to 0pt{\kern\JHmarginparvshift% default should be 0pt 
 \kern-\dp\strutbox \kern-\ht0 \box0 \vss}}}\pmclesphack}% 
-
 %
 % commands for placing the marginal marks for titles 
 % left side
@@ -7325,11 +7402,11 @@
 \newcommand{\JHlefttitlemarginpar}[1]{%
 \pmclbsphack\strut\vadjust{% changed
 \rlap{\kern-\parindent%
-\kern -\JHmarginparsep \kern -\JHmarginparwidth% at left
-\ifcentertitleson
-\kern-.5\JHtextwidth\kern\marginparsepmin
-\fi
-\setbox0=\vtop to 0pt{
+\kern -\JHtitlemarginparsep \kern -\JHmarginparwidth% at left
+\ifcentertitleson%
+\kern-.5\JHtextwidth\kern\marginparsepmin%
+\fi%
+\setbox0=\vtop to 0pt{%
 \begin{minipage}[t]{\JHmarginparwidth}% added
 #1%
 \end{minipage}%
@@ -7337,46 +7414,46 @@
 \vtop to 0pt{\kern\JHmarginparvshift % default should be 0pt 
 \kern-\dp\strutbox \kern-\ht0 \box0 \vss}}}\pmclesphack}% changed
 %
-% command for JHmarks in title in outer margin or in gutter
+% command for JHtitlemarks in title in outer margin or in gutter
 \newcommand{\JHswitchtitlemarginpar}{\@dblarg{\@JHswitchtitlemarginpar}}
 %\long\def\@pmclsidepar[#1]#2{\@bsphack\leavevmode\vadjust{%
 \long\def\@JHswitchtitlemarginpar[#1]#2{\@bsphack\strut\vadjust{% added
-\checkoddpage
-  \ifJHmarginparswitch
-    \ifJHreversemarginpar
-      \ifoddpage
-        \oddpagefalse
-      \else
-        \oddpagetrue
-      \fi
-    \fi
-  \else
-    \oddpagetrue
-    \ifJHreversemarginpar
-      \oddpagefalse
-    \fi
-  \fi
-  \rlap{\kern-\parindent
-    \if at twocolumn
+\checkoddpage%
+  \ifJHmarginparswitch%
+    \ifJHreversemarginpar%
+      \ifoddpage%
+        \oddpagefalse%
+      \else%
+        \oddpagetrue%
+      \fi%
+    \fi%
+  \else%
+    \oddpagetrue%
+    \ifJHreversemarginpar%
+      \oddpagefalse%
+    \fi%
+  \fi%
+  \rlap{\kern-\parindent%
+    \if at twocolumn%
       \if at firstcolumn     % put at left
-        \kern -\JHmarginparsep \kern -\marginparwidth % at left
-        \kern-.5\JHtextwidth\kern\marginparsepmin
+        \kern -\JHtitlemarginparsep \kern -\marginparwidth % at left
+        \kern-.5\JHtextwidth\kern\marginparsepmin%
       \else               % put at right
-        \kern \columnwidth \kern \JHmarginparsep % at right
-      \fi
-    \else
+        \kern \columnwidth \kern \JHtitlemarginparsep % at right
+      \fi%
+    \else%
       \ifoddpage            % put at right
-        \kern \textwidth \kern \JHmarginparsep        % at right
-        \ifcentertitleson
-        \kern-.5\JHtextwidth\kern\marginparsepmin
-        \fi
+        \kern \textwidth \kern \JHtitlemarginparsep        % at right
+        \ifcentertitleson%
+        \kern-.5\JHtextwidth\kern\marginparsepmin%
+        \fi%
       \else                 % put at left
-        \kern -\JHmarginparsep \kern -\marginparwidth % at left
-        \ifcentertitleson
-                \kern-.5\JHtextwidth\kern\marginparsepmin
-         \fi
-      \fi
-    \fi
+        \kern -\JHtitlemarginparsep \kern -\marginparwidth % at left
+        \ifcentertitleson%
+                \kern-.5\JHtextwidth\kern\marginparsepmin%
+         \fi%
+      \fi%
+    \fi%
 %     \vbox to 0pt{%
 %      \kern \pmclsideparvshift%           % vertical shift to align top text lines
 %      \begin{minipage}{\marginparwidth}%
@@ -7388,7 +7465,7 @@
 \vss}% added
  \vtop to 0pt{\kern\JHmarginparvshift % default should be 0pt 
   \kern-\dp\strutbox \kern-\ht0 \box0 \vss}}}\@esphack}% added 
-%
+ %
 \newcommand{\set at margp@emtitle}[7]{\setlength{\titleentryoverrun}{#6}%
 {#2}%
 {#3 \begin{titleentryenvironment}%
@@ -7653,6 +7730,105 @@
 % }
 % \catcode`\@=12
 % \end{verbatim}
+% \subsection{~Titles with footnotes}
+% \label{footnotetitles}
+%    \begin{macro}{\footnotepoemtitle}
+%    \begin{macrocode}
+\newif\iftitlefootnotesatpoemend%
+\titlefootnotesatpoemendfalse%
+\newif\iftitlefootnotesplain%
+\titlefootnotesplaintrue%
+\newif\iftitlefootnoteslayered%
+\titlefootnoteslayeredfalse%
+%
+\newcommand{\maketitlefootnoteslayered}{%
+\DeclareNewFootnote[plain]{H}%
+\titlefootnoteslayeredtrue%
+\titlefootnotesplainfalse%
+\titlefootnotesatpoemendfalse%
+}
+%
+\newcommand{\maketitlefootnotesatpoemend}{
+\titlefootnoteslayeredfalse%
+\titlefootnotesplainfalse%
+\titlefootnotesatpoemendtrue%
+}
+%
+\newcommand{\maketitlefootnotesplain}{
+\titlefootnoteslayeredfalse%
+\titlefootnotesplaintrue%
+\titlefootnotesatpoemendfalse%
+}
+%
+\newcommand{\placetitlefootnote}[1]{\iftitlefootnoteslayered%
+\footnoteH{#1}%
+\fi%
+\iftitlefootnotesatpoemend%
+\footnotemark%
+\immediate\write\poemendnotes{\string\makeatletter}%
+\immediate\write\poemendnotes{\string\footnotemark\string[\the\c at footnote \string]}%
+\immediate\write\poemendnotes{\string\makeatother}%
+\literalpoemendnote{#1}%
+\fi%
+\iftitlefootnotesplain%
+\footnote{#1}%
+\fi%
+}
+%
+\newcommand{\footnotepoemtitle}[2]{%
+\set at p@emtitle{#1\placetitlefootnote{#2}}{\poemtitlepenalty}{\poemtitlefont}%
+{\poemtitleindent}{\nobreak\par\nobreak\afterpoemtitleskip\nobreak}{\z@}%
+\c at ntentsinfo{#1}{\contentspoemtitleindent}{\contentspoemtitlefont}%
+{\contentspoemtitleindentamount}%
+\t at xtnotesinfo{#1}%
+}
+%
+%    \end{macrocode}
+%    \end{macro}
+%    \begin{macro}{\footnotepoemtitlefirstline}
+%    \begin{macrocode}
+\newcommand{\footnotepoemtitlefirstline}[2]{%
+\firstlinesettings%
+\set at p@emtitle{#1\placetitlefootnote{#2}}{\multilinetitlepenalty}{\poemtitlefont}%
+{\poemtitleindent}{\nobreak\par\nobreak}{\z@}%
+\c at ntentsinfo{#1}{\contentspoemtitleindent}{\contentspoemtitlefont}%
+{\contentspoemtitleindentamount}%
+\t at xtnotesinfo{#1}%
+\restoresinglelinesettings%
+}
+%
+\newcommand{\footnotepoemtitlemiddleline}[2]{%
+\middlelinesettings%
+\set at p@emtitle{#1\placetitlefootnote{#2}}{\par\nobreak}{\poemtitlefont}%
+{\poemtitlesecondlineindent}{\nobreak\par\nobreak}{\z@}%
+\c at ntentsinfo{#1}{\contentspoemtitlesecondlineindent}{\contentspoemtitlefont}%
+{\contentspoemtitlesecondlineindentamount}%
+\t at xtnotesinfo{#1}%
+\restoresinglelinesettings%
+}
+%
+\newcommand{\footnotepoemtitlelastline}[2]{%
+\lastlinesettings%
+\set at p@emtitle{#1\placetitlefootnote{#2}}{\par\nobreak}{\poemtitlefont}%
+{\poemtitlesecondlineindent}{\nobreak\par\afterpoemtitleskip\nobreak}{\z@}%
+\c at ntentsinfo{#1}{\contentspoemtitlesecondlineindent}{\contentspoemtitlefont}%
+{\contentspoemtitlesecondlineindentamount}%
+\t at xtnotesinfo{#1}%
+\restoresinglelinesettings%
+}
+%    \end{macrocode}
+%    \end{macro}
+%    \begin{macro}{\footnotesplitpoemtitle}
+%    \begin{macrocode}
+\newcommand{\footnotesplitpoemtitle}[3]{%
+\set at p@emtitle{#1\placetitlefootnote{#2} #3}{\poemtitlepenalty}{\poemtitlefont}%
+{\poemtitleindent}{\nobreak\par\nobreak\afterpoemtitleskip\nobreak}{\z@}%
+\c at ntentsinfo{#1 #3}{\contentspoemtitleindent}{\contentspoemtitlefont}%
+{\contentspoemtitleindentamount}%
+\t at xtnotesinfo{#1 #3}%
+}
+%    \end{macrocode}
+%    \end{macro}
 % \subsection{~Epigraphs, headnotes, attributions, dedications}
 % Notice that epigraphs to volumes are handled differently from 
 % epigraphs to poems. Notice also the ``short'' commands, which

Modified: trunk/Master/texmf-dist/tex/latex/poemscol/poemscol.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/poemscol/poemscol.sty	2020-06-12 21:02:37 UTC (rev 55527)
+++ trunk/Master/texmf-dist/tex/latex/poemscol/poemscol.sty	2020-06-12 21:02:51 UTC (rev 55528)
@@ -22,7 +22,7 @@
 %% in the same archive or directory.)
 \NeedsTeXFormat{LaTeX2e}[1997/12/01]
 \ProvidesPackage{poemscol}
-   [2020/06/02 v3.14159 poemscol file]
+   [2020/06/12 v3.141592 poemscol file]
  %|\prosexyznote|
 
 %%
@@ -1833,6 +1833,8 @@
 \setlength{\JHmarginparwidth}{\marginparwidth}
 \newlength{\JHmarginparsepmin}
 \setlength{\JHmarginparsepmin}{\marginparsepmin}
+\newlength{\JHtitlemarginparsep}%
+\setlength{\JHtitlemarginparsep}{\JHmarginparsep}%
 \newif{\ifJHmarkstoleft}
 \JHmarkstolefttrue
 \newif{\ifJHmarkstoright}
@@ -1966,10 +1968,10 @@
 \newcommand{\JHrighttitlemarginpar}[1]{%
 \pmclbsphack\strut\vadjust{%
 \rlap{\kern-\parindent%
-\kern\textwidth\kern\JHmarginparsep% at right
-\ifcentertitleson
-\kern-.5\JHtextwidth\kern\marginparsepmin
-\fi
+\kern\textwidth\kern\JHtitlemarginparsep% at right
+\ifcentertitleson%
+\kern-.5\JHtextwidth\kern\marginparsepmin%
+\fi%
 \setbox0=\vtop to 0pt{% added
 \begin{minipage}[t]{\JHmarginparwidth}% added
 #1%
@@ -1977,15 +1979,14 @@
 \vss}%
 \vtop to 0pt{\kern\JHmarginparvshift% default should be 0pt
 \kern-\dp\strutbox \kern-\ht0 \box0 \vss}}}\pmclesphack}%
-
 \newcommand{\JHlefttitlemarginpar}[1]{%
 \pmclbsphack\strut\vadjust{% changed
 \rlap{\kern-\parindent%
-\kern -\JHmarginparsep \kern -\JHmarginparwidth% at left
-\ifcentertitleson
-\kern-.5\JHtextwidth\kern\marginparsepmin
-\fi
-\setbox0=\vtop to 0pt{
+\kern -\JHtitlemarginparsep \kern -\JHmarginparwidth% at left
+\ifcentertitleson%
+\kern-.5\JHtextwidth\kern\marginparsepmin%
+\fi%
+\setbox0=\vtop to 0pt{%
 \begin{minipage}[t]{\JHmarginparwidth}% added
 #1%
 \end{minipage}%
@@ -1994,42 +1995,42 @@
 \kern-\dp\strutbox \kern-\ht0 \box0 \vss}}}\pmclesphack}% changed
 \newcommand{\JHswitchtitlemarginpar}{\@dblarg{\@JHswitchtitlemarginpar}}
 \long\def\@JHswitchtitlemarginpar[#1]#2{\@bsphack\strut\vadjust{% added
-\checkoddpage
-  \ifJHmarginparswitch
-    \ifJHreversemarginpar
-      \ifoddpage
-        \oddpagefalse
-      \else
-        \oddpagetrue
-      \fi
-    \fi
-  \else
-    \oddpagetrue
-    \ifJHreversemarginpar
-      \oddpagefalse
-    \fi
-  \fi
-  \rlap{\kern-\parindent
-    \if at twocolumn
+\checkoddpage%
+  \ifJHmarginparswitch%
+    \ifJHreversemarginpar%
+      \ifoddpage%
+        \oddpagefalse%
+      \else%
+        \oddpagetrue%
+      \fi%
+    \fi%
+  \else%
+    \oddpagetrue%
+    \ifJHreversemarginpar%
+      \oddpagefalse%
+    \fi%
+  \fi%
+  \rlap{\kern-\parindent%
+    \if at twocolumn%
       \if at firstcolumn     % put at left
-        \kern -\JHmarginparsep \kern -\marginparwidth % at left
-        \kern-.5\JHtextwidth\kern\marginparsepmin
+        \kern -\JHtitlemarginparsep \kern -\marginparwidth % at left
+        \kern-.5\JHtextwidth\kern\marginparsepmin%
       \else               % put at right
-        \kern \columnwidth \kern \JHmarginparsep % at right
-      \fi
-    \else
+        \kern \columnwidth \kern \JHtitlemarginparsep % at right
+      \fi%
+    \else%
       \ifoddpage            % put at right
-        \kern \textwidth \kern \JHmarginparsep        % at right
-        \ifcentertitleson
-        \kern-.5\JHtextwidth\kern\marginparsepmin
-        \fi
+        \kern \textwidth \kern \JHtitlemarginparsep        % at right
+        \ifcentertitleson%
+        \kern-.5\JHtextwidth\kern\marginparsepmin%
+        \fi%
       \else                 % put at left
-        \kern -\JHmarginparsep \kern -\marginparwidth % at left
-        \ifcentertitleson
-                \kern-.5\JHtextwidth\kern\marginparsepmin
-         \fi
-      \fi
-    \fi
+        \kern -\JHtitlemarginparsep \kern -\marginparwidth % at left
+        \ifcentertitleson%
+                \kern-.5\JHtextwidth\kern\marginparsepmin%
+         \fi%
+      \fi%
+    \fi%
     \setbox0=\vtop to 0pt{% added
      \begin{minipage}[t]{\marginparwidth}% added
      \ifoddpage #2\else #1\fi%
@@ -2037,6 +2038,7 @@
 \vss}% added
  \vtop to 0pt{\kern\JHmarginparvshift % default should be 0pt
   \kern-\dp\strutbox \kern-\ht0 \box0 \vss}}}\@esphack}% added
+ %
 \newcommand{\set at margp@emtitle}[7]{\setlength{\titleentryoverrun}{#6}%
 {#2}%
 {#3 \begin{titleentryenvironment}%
@@ -2213,6 +2215,83 @@
 \newcommand{\margrefspecial}[1]{%
 \marginpar{\scriptsize {\the\margrefmarker~p.~\pageref{#1}}}
 }
+\newif\iftitlefootnotesatpoemend%
+\titlefootnotesatpoemendfalse%
+\newif\iftitlefootnotesplain%
+\titlefootnotesplaintrue%
+\newif\iftitlefootnoteslayered%
+\titlefootnoteslayeredfalse%
+\newcommand{\maketitlefootnoteslayered}{%
+\DeclareNewFootnote[plain]{H}%
+\titlefootnoteslayeredtrue%
+\titlefootnotesplainfalse%
+\titlefootnotesatpoemendfalse%
+}
+\newcommand{\maketitlefootnotesatpoemend}{
+\titlefootnoteslayeredfalse%
+\titlefootnotesplainfalse%
+\titlefootnotesatpoemendtrue%
+}
+\newcommand{\maketitlefootnotesplain}{
+\titlefootnoteslayeredfalse%
+\titlefootnotesplaintrue%
+\titlefootnotesatpoemendfalse%
+}
+\newcommand{\placetitlefootnote}[1]{\iftitlefootnoteslayered%
+\footnoteH{#1}%
+\fi%
+\iftitlefootnotesatpoemend%
+\footnotemark%
+\immediate\write\poemendnotes{\string\makeatletter}%
+\immediate\write\poemendnotes{\string\footnotemark\string[\the\c at footnote \string]}%
+\immediate\write\poemendnotes{\string\makeatother}%
+\literalpoemendnote{#1}%
+\fi%
+\iftitlefootnotesplain%
+\footnote{#1}%
+\fi%
+}
+\newcommand{\footnotepoemtitle}[2]{%
+\set at p@emtitle{#1\placetitlefootnote{#2}}{\poemtitlepenalty}{\poemtitlefont}%
+{\poemtitleindent}{\nobreak\par\nobreak\afterpoemtitleskip\nobreak}{\z@}%
+\c at ntentsinfo{#1}{\contentspoemtitleindent}{\contentspoemtitlefont}%
+{\contentspoemtitleindentamount}%
+\t at xtnotesinfo{#1}%
+}
+\newcommand{\footnotepoemtitlefirstline}[2]{%
+\firstlinesettings%
+\set at p@emtitle{#1\placetitlefootnote{#2}}{\multilinetitlepenalty}{\poemtitlefont}%
+{\poemtitleindent}{\nobreak\par\nobreak}{\z@}%
+\c at ntentsinfo{#1}{\contentspoemtitleindent}{\contentspoemtitlefont}%
+{\contentspoemtitleindentamount}%
+\t at xtnotesinfo{#1}%
+\restoresinglelinesettings%
+}
+\newcommand{\footnotepoemtitlemiddleline}[2]{%
+\middlelinesettings%
+\set at p@emtitle{#1\placetitlefootnote{#2}}{\par\nobreak}{\poemtitlefont}%
+{\poemtitlesecondlineindent}{\nobreak\par\nobreak}{\z@}%
+\c at ntentsinfo{#1}{\contentspoemtitlesecondlineindent}{\contentspoemtitlefont}%
+{\contentspoemtitlesecondlineindentamount}%
+\t at xtnotesinfo{#1}%
+\restoresinglelinesettings%
+}
+\newcommand{\footnotepoemtitlelastline}[2]{%
+\lastlinesettings%
+\set at p@emtitle{#1\placetitlefootnote{#2}}{\par\nobreak}{\poemtitlefont}%
+{\poemtitlesecondlineindent}{\nobreak\par\afterpoemtitleskip\nobreak}{\z@}%
+\c at ntentsinfo{#1}{\contentspoemtitlesecondlineindent}{\contentspoemtitlefont}%
+{\contentspoemtitlesecondlineindentamount}%
+\t at xtnotesinfo{#1}%
+\restoresinglelinesettings%
+}
+\newcommand{\footnotesplitpoemtitle}[3]{%
+\set at p@emtitle{#1\placetitlefootnote{#2} #3}{\poemtitlepenalty}{\poemtitlefont}%
+{\poemtitleindent}{\nobreak\par\nobreak\afterpoemtitleskip\nobreak}{\z@}%
+\c at ntentsinfo{#1 #3}{\contentspoemtitleindent}{\contentspoemtitlefont}%
+{\contentspoemtitleindentamount}%
+\t at xtnotesinfo{#1 #3}%
+}
 \newif\ifcenterepigraphson
 \centerepigraphsonfalse
 \newlength{\centerepigraphindentation}



More information about the tex-live-commits mailing list.