I am trying to typeset text by breaking it into smaller cameos, numbering each cameo, and putting a heading. See below for an example of how I want the typeset text to look.
The code with which I used to typeset the text is shown below.
\documentclass{article}
\usepackage{verse}
\newlength{\zlindenttext}
\newlength{\zlindentheading}
\newlength{\zlverticalspace}
\newlength{\saveleftmargini}
\setlength{\saveleftmargini}{\leftmargini}
\makeatletter
\newcommand*{\compress}{\@minipagetrue}
\makeatother
\newenvironment{tverse}[1][]{
\compress\ifx\\#1\\\begin{verse}\else\begin{verse}[#1]\fi
}
{
\end{verse}\vspace{-\lastskip}\vspace{-1\baselineskip}
% No left indentation for verses
\setlength{\leftmargini}{\saveleftmargini}
}
\begin{document}
\begin{figure}[h!]
\small
\setlength{\zlindenttext}{5mm}
\setlength{\zlindentheading}{8mm}
\setlength{\zlverticalspace}{4mm}
\begin{tabular}{p{6mm}@{\hspace{4mm}}p{100mm}@{\hspace{-5mm}}p{40mm}}
1.
&
\setlength{\leftmargini}{0\zlindenttext}
\begin{tverse}
And now the Lord says,\\
who formed me from the womb to be his servant,
\end{tverse}
&
\setlength{\leftmargini}{-2\zlindentheading}
\begin{tverse}
GOD SAYS:\\
His Servant
\end{tverse}
\\[\zlverticalspace]
2.
&
\setlength{\leftmargini}{1\zlindenttext}%
\begin{tverse}
to bring Jacob back to him,\\
and that Israel might be gathered to him,
\end{tverse}
&
\setlength{\leftmargini}{-1\zlindentheading}%
\begin{tverse}
JACOB---RETURN\\
Israel---Gathered
\end{tverse}
\\[\zlverticalspace]
3.
&
\setlength{\leftmargini}{2\zlindenttext}%
\begin{tverse}
for I am honored in the eyes of the Lord,\\
and my God has become my strength---
\end{tverse}
&
\setlength{\leftmargini}{0\zlindentheading}%
\begin{tverse}
SERVANT HONORED\\
Made Strong
\end{tverse}
\\[\zlverticalspace]
4.
&
\setlength{\leftmargini}{0\zlindenttext}%
\begin{tverse}
he says:``It is too light a thing,\\
that you should be my servant
\end{tverse}
&
\setlength{\leftmargini}{-2\zlindentheading}%
\begin{tverse}
HE SAYS: TOO LIGHT\\
My Servant
\end{tverse}
\\[\zlverticalspace]
5.
&
\setlength{\leftmargini}{1\zlindenttext}%
\begin{tverse}
to raise up the tribes of Jacob\\
and to restore the preserved of Israel;
\end{tverse}
&
\setlength{\leftmargini}{-1\zlindentheading}%
\begin{tverse}
JACOB---RAISED\\
Israel---Preserved
\end{tverse}
\\[\zlverticalspace]
6.
&
\setlength{\leftmargini}{2\zlindenttext}%
\begin{tverse}
I will give you as a light to the nations\\
that my salvation may reach to the end of the earth.''
\end{tverse}
&
\setlength{\leftmargini}{0\zlindentheading}%
\begin{tverse}
TO NATIONS\\
Salvation To All\end{tverse}
\end{tabular}
\end{figure}
\end{document}
It works, but I think that it could be better. What I would like is to be able to define a new environment with the following features:
- Options to change the text size, the vertical spacing between cameos, the indentation of the text and the indentation of the headings.
- Options to shift the text or headings to the left or right as more space may be needed.
- A new command to specify the level of the text and the level of the heading.
- Automatic numbering of the cameos.
What I want is for the following code below to work
\begin{rhetfigure}[text=small,vertical space=5mm,
text indent=5mm,heading indent=5mm]
\rhettext{0}{
And now the Lord says,\\
who formed me from the womb to be his servant,}
\rhetheading{0}{
GOD SAYS:\\
His Servant}
\\
\rhettext{1}{
to bring Jacob back to him,\\
and that Israel might be gathered to him,}
\rhetheading{1}{
JACOB---RETURN\\
Israel---Gathered}
...
\end{rhetfigure}
Unfortunately, I don't know enough LaTeX to make this work, and so I would appreciate any help! If you read so far, thank you for reading to the end.