5

I'm trying to typeset a poem to look like this:

The first line of first stanza
The second line of first stanza
The third line of first stanza
    The first line of second stanza
    The second line of second stanza
    The third line of second stanza
    The fourth line of second stanza
The first line of third stanza
The second line of third stanza
    The first line of fourth stanza
    The second line of fourth stanza

For this I'm using verse package which allows such indentation by using \indentpattern and specifying the number of lines in each stanza to be indented. The problem in my case however is that many stanzas have different number of lines so I would end up with ridiculous patterns like \indentpattern{00011110011...}. What I'm looking for is something like altverse environment, only for stanzas. If someone could suggest how to make one I would be very grateful.

Minimal working example:

\documentclass{scrartcl}
\usepackage{fontspec}
\setmainfont{CMU Serif}
\usepackage{verse}

\begin{document}
\settowidth{\versewidth}{The first line of first stanza}
\poemtitle{Some Glorious Poem}
\begin{verse}[\versewidth]
The first line of first stanza\\
The second line of first stanza\\
The third line of first stanza

    The first line of second stanza\\
    The second line of second stanza\\
    The third line of second stanza\\
    The fourth line of second stanza

The first line of third stanza\\
The second line of third stanza

    The first line of fourth stanza\\
    The second line of fourth stanza
\end{verse}
\end{document}

The output it produces:

Compiled document

  • All questions should include a Minimal Working Example i.e. a complete, small document people can compile to reproduce the issue. This makes it a lot easier and less frustrating for people to help. You describe what you are doing so far but you leave it to any potential helpers to redo that work from scratch rather than sharing what you've got so far so that they only need to work on the extra step you are stuck on. Of course, you may get lucky if a procrastinator likes your question - but, then again, you may not... – cfr Apr 3 '14 at 21:55
  • Thanks for the advice, I updated the question with a minimal working example. – Kona-chan Apr 3 '14 at 23:24
5

Possibly something like this?

For Anne Gregory

\documentclass{article}
\usepackage{verse,attrib}
\usepackage{enumitem}
\newenvironment{altstanza}[1][\vindent]{%
  \begin{itemize}[label={},leftmargin=#1]
    \item}{%
  \end{itemize}}

\title{For Anne Gregory}
\author{WB Yeats}
\date{}


\begin{document}

\settowidth{\versewidth}{That he had found a text to prove}
\addtolength{\versewidth}{\vindent}
\begin{verse}[\versewidth]
  \poemtitle{For Anne Gregory}

  Never shall a young man,\\
  Thrown into despair\\
  By those great honey-coloured\\
  Ramparts at your ear,\\
  Love you for yourself alone\\
  And not your yellow hair.

  \begin{altstanza}
  But I can get a hair-dye\\
  And set such colour there,\\
  Brown, or black, or carrot,\\
  That young men in despair\\
  May love me for myself alone\\
  And not my yellow hair.
  \end{altstanza}

  I heard an old religious man\\
  But yesternight declare\\
  That he had found a text to prove\\
  That only God, my dear,\\
  Could love you for yourself alone\\
  And not your yellow hair.\\

\end{verse}

  \attrib{WB Yeats}


\end{document}
  • Thanks for your reply. It works, but it's still only slightly better: I would still need to enclose stanzas in the environment manually/semi-automatically. – Kona-chan Apr 3 '14 at 23:26
  • @Kona-chan Well you said you wanted something like altverse but for stanzas so I figured you wanted an alternative environment for, you know, stanzas...;) – cfr Apr 3 '14 at 23:44
  • Oh, I must have poorly explained what I meant. When I enclose a poem in altverse environment I get every second line indented, so I thought about enclosing the whole poem in altstanza environment which would produce every second stanza indented. – Kona-chan Apr 4 '14 at 10:25
0

I don't use the verse environments, but I'm familiar with (e)ledmac, which I think uses a similar idea.

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{eledmac}

\setlength{\stanzaindentbase}{10pt}% default: 20pt
\setstanzaindents{5,0,0,0,0}
%\setcounter{stanzaindentsrepetition}{3}% with long stanzas, this comes in handy

\newcommand{\stanzai}{%
  \setstanzaindents{5,0,0,0,0,0,0}%
  \stanza}

\newcommand{\stanzaii}{%
  \setstanzaindents{5,1,1,1,1,1,1}%
  \stanza}

\begin{document}
\beginnumbering
\stanza % normal
The first line of first stanza&
The second line of first stanza&
The third line of first stanza\&

\stanzaii % stanza ii
    The first line of second stanza&
    The second line of second stanza&
    The third line of second stanza&
    The fourth line of second stanza\&

\stanzai % stanza i
The first line of third stanza&
The second line of third stanza\&

\stanzaii % stanza ii
    The first line of fourth stanza&
    The second line of fourth stanza \&

\end{document}

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.