What is the recommended way to have two characters speak simultaneously?
The use of \speaker
is definitely the way to go since you need to refer to some entity that shouldn't appear in the Dramatis Personae, yet you're right that you shouldn't have to hardcode the names of the characters into the argument of \speaker
in case you change the names to which alice
and bob
refer.
I see that the dramatist
documentation says that \Character
defines a new macro for use in stage directions named after the name of the character, e.g. \alice
in the case of \Character[ALICE]{ALICE}{alice}
and \bob
in the case of \Character[BOB]{BOB}{bob}
. Perhaps you can use these macros within the argument to \speaker
?
\documentclass[12pt]{memoir}
\usepackage{dramatist}
\Character[ALICE]{ALICE}{alice}
\Character[BOB]{BOB}{bob}
\begin{document}
\begin{drama}
\alicespeaks Are you ready?
\bobspeaks Yes. On three. One…two…
\speaker{\alice and \bob} Three!
\end{drama}
\end{document}
Just for fun.
\documentclass[12pt]{memoir}
\usepackage{dramatist}
\usepackage{paracol}
\columnseprule=0.4pt
\Character[ALICE]{ALICE}{alice}
\Character[BOB]{BOB}{bob}
\begin{document}
\begin{drama}
\alicespeaks Are you ready?
\bobspeaks Yes. On three. One…two…\strut% add space when missing descenders
\begin{paracol}{2}
\alicespeaks Wait!
\switchcolumn
\bobspeaks Three!\strut
\switchcolumn*% to align remarks
\end{paracol}
\end{drama}
\end{document}