У меня нет опыта работы с memoir
классом или наборными стихами, поэтому я не знаю, есть ли какой-то другой способ, которым вы намеревались это сделать, но вот решение, которое, кажется, делает то, что вы хотите (при условии, что вы всегда используете звездную форму \PoemTitle
).
\newcommand{\leftPoemTitle}[1]{{\PoemTitlefont{#1}}\\[\afterPoemTitleskip]}
\settowidth{\versewidth}{longest poem line here}
\begin{verse}
\leftPoemTitle{Poem Title}
...Poem body...
\end{verse}
Это приводит к тому, что заголовок стихотворения выровнен по левому краю, как тело стихотворения, правильно отделено от тела стихотворения, в правильной гарнитуре и без нежелательных отступов. Более того, он хорошо работает с другими: если какая-либо команда (или опция пакета) изменяет шрифт заголовка или интервал, этот макрос \leftPoemTitle
продолжает работать правильно.
Если я правильно понимаю ваше редактирование, вы хотите, чтобы заголовок стихотворения был вне verse
окружения, которое содержит тело стихотворения, но все еще с отступом таким образом, что заголовок выравнивался слева с помощью тело. Если у вас нет особых причин для этого, я думаю, что вышеупомянутое решение лучше, но не обращайте на это внимания.
Глава 19 руководства класса memoir
гласит, что среда verse
имеет отступ с длиной \vleftmargin
, поэтому вы можете просто сделать отступ для вашего заголовка по этой длине. Я предполагаю, что вы по-прежнему хотите, чтобы заголовок был слегка увеличенным шрифтом, поэтому следующее решение должно помочь:
\newcommand{\myPoemTitle}[1]{\noindent\hspace{\vleftmargin}{\PoemTitlefont #1}}
\myPoemTitle{Poem Title}
\settowidth{\versewidth}{longest poem line here}
\begin{verse}
...Poem body...
\end{verse}
Обратите внимание, что заголовок несколько ближе к телу, чем первое решение. Такое поведение можно получить в первом решении, переопределив \afterPoemTitleskip
.