From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- macros/latex/contrib/dramatist/README | 97 + macros/latex/contrib/dramatist/dramatist.dtx | 3101 ++++++++++++++++++++++++++ macros/latex/contrib/dramatist/dramatist.ins | 17 + macros/latex/contrib/dramatist/dramatist.pdf | Bin 0 -> 415250 bytes macros/latex/contrib/dramatist/dramatist.sty | 426 ++++ 5 files changed, 3641 insertions(+) create mode 100644 macros/latex/contrib/dramatist/README create mode 100644 macros/latex/contrib/dramatist/dramatist.dtx create mode 100644 macros/latex/contrib/dramatist/dramatist.ins create mode 100644 macros/latex/contrib/dramatist/dramatist.pdf create mode 100644 macros/latex/contrib/dramatist/dramatist.sty (limited to 'macros/latex/contrib/dramatist') diff --git a/macros/latex/contrib/dramatist/README b/macros/latex/contrib/dramatist/README new file mode 100644 index 0000000000..c758ab68e7 --- /dev/null +++ b/macros/latex/contrib/dramatist/README @@ -0,0 +1,97 @@ +This package contains the following files: + + - `Readme': this file. + - `dramatist.dtx': the package source file. + - `dramatist.ins': the installation driver file. + +In order to get file `dramatist.sty' you have to run tex on +`dramatist.ins' (you'll get also the example files). + +In order to get documentation you have to run latex on +`dramatist.dtx'. + +Then move `dramatist.sty' in a directory where TeX looks for style +files and move documentation files in the directory you like. +N.B.: if you have a file `docstrip.cfg' in your system you only +need to create directories /tex/latex/dramatist and +/doc/latex/dramatist - TeX will automatically move the +files in these directories. + +This package is released under the GNU General Public License. The +related documentation is released under the terms of the FDPL Free +Documentation Public Licence. For further details concerning these +licenses see the documentation. + + + +-------------+ + | DRAMATIST | + +-------------+ + + - Overview - + +The present package provides support for drama both in verse and +in prose. The following facilities are given: two environments for +typesetting dialogues in prose or in verse; new document divisions +corresponding to acts and scenes; macros that control the +appearance of characters and stage directions; and automatical +generation of a `Dramatis Personae' list. + + - Changelog - + +v1.0 First public release. + +v1.1 Added support for line numbering. + + Added a \speaker command for characters not included in + the `Dramatis Personae' list. + + Changes made to the `drama*' environment. + + \act \scene and \DramPer made more compliant to the standard + document division commands. + +v1.2 Added support for `poemscol' package. + + Introduced an `uppercase' series of sectioning commands. + + First argument in \Character made optional (this causes + incompatibility with previous versions). + + Added environment (`CharacterGroup') for characters groups in + the `Dramatis Personae' list. + + Added various hooks for user customization. + +v1.2a Fixed a bug in the vertical spacing of \DramPer. + + Changed name of counter 'linenumber' to 'verselinenumber' + in order to mantain compatibility with package 'poemscol'. + +v1.2c Fixed a conflict with the spanish extension of `babel'. + + Fixed a bug in macro \direct: issuing a \ command + at the end of this macro no more produces unwanted spaces. + + Fixed a typo in the author e-mail address. + +v1.2d Fixed a bug in the spacing of characters' groups inside a + dramatis personae list. + + Fixed a bug with \dirdelimiter. + + Fixed a bug with \speaksdel inside a verse drama environment. + +v1.2e Fixed a bug with \actcontentsline and \scenecontentsline not + actually used by \Act, \act, \Scene and \scene. + + Updated e-mail contact. + + - Bugs Report - + +Please report any bugs you find, sending an e-mail to this +address: mlgdominici@gmail.com. While I don't guarantee you an +immediate answer, I'll try to solve any problem and I'll be glad +to receive suggestions. I hope you'll enjoy this poor result of my +efforts. + +Massimiliano Dominici. diff --git a/macros/latex/contrib/dramatist/dramatist.dtx b/macros/latex/contrib/dramatist/dramatist.dtx new file mode 100644 index 0000000000..3643b74f1e --- /dev/null +++ b/macros/latex/contrib/dramatist/dramatist.dtx @@ -0,0 +1,3101 @@ +%\iffalse +%% dramatist.dtx +%% Copyright (C) 2003-2014 Massimiliano Dominici +% +% This program is free software; you can redistribute it and/or modify +% it under the terms of the GNU General Public License as published by +% the Free Software Foundation; either version 2 of the License, or +% (at your option) any later version. +% +% This program is distributed in the hope that it will be useful, +% but WITHOUT ANY WARRANTY; without even the implied warranty of +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +% GNU General Public License for more details. +% +% You should have received a copy of the GNU General Public License +% along with this program; if not, write to the Free Software +% Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +% +% Copyright (C) 2003-2004 Massimiliano Dominici. +% Permission is granted to copy, distribute and/or modify this document +% under the terms of the GNU Free Documentation License, Version 1.2 +% or any later version published by the Free Software Foundation; +% with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. +% A copy of the license is included in the section entitled ``GNU +% Free Documentation License''. +% +% This program consists of the files dramatist.dtx and dramatist.ins +% +%<*driver> +\documentclass[a4paper]{ltxdoc} +\usepackage[T1]{fontenc} +\usepackage[latin1]{inputenc} +\usepackage{ae} +\usepackage{dramatist} +\GetFileInfo{dramatist.sty} +\makeatletter +\c@IndexColumns=2 +\def\DescribeOpt{\leavevmode\@bsphack\begingroup\MakePrivateLetters + \Describe@Opt} +\def\Describe@Opt#1{\endgroup + \marginpar{\raggedleft\PrintDescribeOpt{#1}}% + \SpecialOptIndex{#1}\@esphack\ignorespaces} +\def\SpecialOptIndex#1{\@bsphack + \index{#1\actualchar{\protect\ttfamily#1} + (option)\encapchar usage}% + \index{options:\levelchar{\protect\ttfamily#1}\encapchar + usage}\@esphack} +\newcommand{\PrintDescribeOpt}{\PrintDescribeEnv} +\makeatother +\OnlyDescription +\EnableCrossrefs +\CodelineIndex +\RecordChanges +\providecommand\envname[1]{\textsf{#1}} +\providecommand\clsname[1]{\textsf{#1}} +\providecommand\pkgname[1]{\textsf{#1}} +\providecommand\Filename[1]{\textsf{#1}} +%\renewcommand{\theenumi}{\alph{enumi}} +\begin{document} + \DocInput{dramatist.dtx} +\end{document} +% +%\fi +% \CheckSum{523} +%% \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 +%% Lower-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 +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +%% +% +%\changes{v1.0}{2003/08/03}{First public release.} +%\changes{v1.1}{2004/01/19}{Added support for line numbering; added +%a \cs{speaker} command; changes made to the \envname{drama*} +%environment; made \cs{act}, \cs{scene} and \cs{DramPer} more compliant +%to the standard document division commands.} +%\changes{v1.2}{2004/05/10}{Added support for \pkgname{poemscol} +%package; introduced an \emph{uppercase} series of sectioning +%commands; first argument in \cs{Character} made optional; added +%environment (\envname{CharacterGroup}) for characters groups in +%the \emph{Dramatis Person\ae} list; added various hooks for user +%customization.} +%\changes{v1.2a}{2005/05/21}{Fixed a bug in the vertical spacing of +%\cs{DramPer}. Changed name of counter \textsf{linenumber} in +%\textsf{verselinenumber} in order to mantain compatibility with +%package \pkgname{poemscol}} +%\changes{v1.2c}{2005/07/26}{Fixed two bugs: now the package works +%correctly with the spanish extension of \pkgname{babel} and a +%\cs{\meta{name}} command at the end of a \cs{direct} macro no more gives +%an unwanted space. Fixed a typo in the author e-mail address.} +%\changes{v1.2d}{2005/12/01}{Fixed three bugs: restored a missing +%backslash in \cs{dirdelimiter}; customized lengths in character groups +%inside a Dramatis Personae list now work correctly; \cs{speaksdel} is +%now appended to characters' label in verse drama environment too.} +% +%\DoNotIndex{\@afterheading,\@afterindentfalse,\@break@tfor,\@empty} +%\DoNotIndex{\@ifstar,\@let@token,\@namedef,\@nameuse,\@nil} +%\DoNotIndex{\@tempswafalse,\@tempswatrue,\@tfor,\\} +%\DoNotIndex{\ae,\baselineskip,\begin,\bgroup,\centering} +%\DoNotIndex{\csname,\def,\do,\egroup,\else,\emph,\end} +%\DoNotIndex{\expandafter,\fi,\futurelet,\hspace,\if@tempswa} +%\DoNotIndex{\ifnum,\ifvmode,\ifx,\InputIfFileExists,\item} +%\DoNotIndex{\itemindent,\itemsep,\labelsep,\labelwidth} +%\DoNotIndex{\Large,\large,\leftmargin,\let,\makelabel} +%\DoNotIndex{\NeedsTeXFormat,\newcommand,\newcounter,\newenvironment} +%\DoNotIndex{\newif,\newlength,\newpage,\nobreak,\normalfont,\normallineskip} +%\DoNotIndex{\PackageError,\PackageWarningNoLine,\par,\parbox,\parindent} +%\DoNotIndex{\ProvidesPackage,\refstepcounter,\relax,\renewcommand} +%\DoNotIndex{\reserved@a,\reserved@b,\reserved@c,\roman,\scshape,\setlength} +%\DoNotIndex{\space,\stepcounter,\textwidth,\unskip,\value,\vskip,\vspace,\z@} +%\DoNotIndex{\@centercr,\@ifundefined,\addcontentsline,\addvspace,\DeclareOption} +%\DoNotIndex{\endcsname,\if@openright,\secdef,\setcounter,\providecommand,\ProcessOptions} +%\DoNotIndex{\parskip,\PackageWarning,\@ifpackageloaded,\clearpage,\cleardoublepage,\em} +%\DoNotIndex{\global,\ht,\left,\leftmargini,\newsavebox,\raggedright,\right,\Roman,\rule} +%\DoNotIndex{\tbox,\usebox,\xdef,\@undefined,\c@secnumdepth,\endlist,\list,\m@ne,\newdimen} +%\DoNotIndex{\parsep,\thispagestyle} +%\expandafter\DoNotIndex\expandafter{\string\}} +% \begingroup +% \makeatletter +% \lccode`9=32\relax +% \lowercase{%^^A +% \edef\x{\noexpand\DoNotIndex{\@backslashchar9}}%^^A +% }%^^A +% \expandafter\endgroup\x% +%\title{The \Filename{dramatist} package\thanks{This file has version +%number \fileversion{} dated \filedate{}.} \\User Guide} +%\author{Massimiliano Dominici\\\texttt{mlgdominici@gmail.com}} +%\date{\filedate} +%\maketitle +% +%\begin{abstract} +%The present package provides support for drama both in verse and +%in prose. The following facilities are given: two environments for +%typesetting dialogues in prose or in verse; new document divisions +%corresponding to acts and scenes; macros that control the +%appearance of characters and stage directions; and automatical +%generation of a \emph{dramatis person\ae} list. +%\end{abstract} +% +%\tableofcontents +% +%\section{Introduction} +% +%The edition of a drama requires special treatment for many +%typographical elements. The purpose of the present package is that +%of providing full support for these specialities. So, besides the +%standard document divisions, new ones are introduced reflecting +%the peculiar nature of the document itself; environments are +%provided for introducing dialogues, and a set of macros is placed +%at the user's disposal to handle characters, automatically +%generate a \emph{dramatis person\ae} list, and control the +%appearance of stage directions. All these features I have tried to +%make fully customizable, with the idea that typographical +%conventions are hints rather than laws, and the fully conscious +%user should be enabled to override them. +% +%The decision to write a package rather than a class is due to +%similar considerations about user's freedom. The package strictly +%provides what is meant in his name and doesn't involve itself in +%the layout design of the document. This task is left to the class +%chosen by the user. In particular, the package does not provide +%explicit support for text in verse, though it provides support for +%those features that are peculiar to a \emph{drama} in verse. +%However, \pkgname{dramatist} is integrated with the main packages +%dealing with verse (such as \pkgname{verse} or +%\pkgname{poemscol}), so that the user can, for instance, use line +%numbering defined by one of the aforesaid packages in a meaningful +%way inside a \envname{drama*} environment. +% +%\section{User interface} +% +%\subsection{Package Options} +%\DescribeOpt{lnpa}\DescribeOpt{lnps} The package provides two +%options, both concerning line numbering in verse drama. By default +%none of the options is used and the counter holding the line +%number is not reset throughout the document. If you like it better +%you can choose line numbering per act or per scene issuing one of +%the options, namely: |lnpa| or |lnps|. Issuing the options when +%typesetting a play in prose, has no effect on the document, but a +%package warning is typed in the |log| file every time a |drama| +%environment is called. +% +%\subsection{The \envname{drama} environment} +% +%The |drama| environment is the heart of the package. Two versions, +%of this environment, are provided: the normal version, used for +%typesetting dramas in prose, and the starred version +%(\envname{drama*}) for typesetting dramas in verse. +%\DescribeEnv{drama} The unstarred form arranges the items given by +%the macros for defining characters (see Section~\ref{sec:cdc}) in +%a sort of description-like environment -- but the parameters can +%be managed and adjusted to get every kind of list the user +%desires. These are the hooks provided for customizing the look of +%the environment\footnote{For this parametrization of the +%\envname{drama} environment I'm in debt with Christian Ebert.}: +%\begin{description} +% \item[\cs{speakswidth}] is the width of the label in which the +% name of the character is printed; +% \item[\cs{speaksindent}] is the indentation of that label; +% \item[\cs{Dlabelsep}] is the space between the label and the +% text; +% \item[\cs{Dparsep}] is the space between paragraphs inside the +% dialogue; +% \item[\cs{speechskip}] is the space between two subsequent +% speeches. +%\end{description} +%You can see default settings for these macros in +%Table~\ref{tab:drama}. A conditional expression checks the +%eventual presence of a line numbering option, in which case a +%warning is sent to the user in the |log| file about the +%meaninglessness of the option. +% +%\begin{table} +%\begin{center} +%\DeleteShortVerb{\|} +%\begin{tabular}{|c|c|} +%\hline +% \textbf{Commands} & \textbf{Default settings} \\ +%\hline +%\hline +% \verb+\speakswidth+ & \verb+\z@+ \\ +%\hline +% \verb+\speaksindent+ & \verb+-\leftmargin+ \\ +%\hline +% \verb+\speechskip+ & \verb+\itemsep+ \\ +%\hline +% \verb+\Dparsep+ & \verb+\z@+ \\ +%\hline +% \verb+\Dlabelsep+ & \verb+\labelsep+ \\ +%\hline +%\end{tabular} +%\caption{Sectioning commands}\label{tab:drama} +%\end{center} +%\end{table} +%\MakeShortVerb{\|} +% +%\DescribeEnv{drama*} The starred form switches to |\@drversetrue| +%(this is used by the commands that define characters -- see +%Section~\ref{sec:cdc}), calls the \envname{verse} environment -- +%or the \envname{poem} environment if \pkgname{poemscol} package +%has been loaded: this is automatically recognized by the package +%and needs no additional option --, and, if |\poemlines| is +%defined\footnote{This is provided by the \clsname{memoir} +%\cite{mem} class and the \pkgname{verse} \cite{ver} package for +%line numbering purpose.}, the value of the |poemline| counter is +%restored at the beginning and saved at the end of the environment +%(this is needed because, by default, the aforesaid counter is +%reset to 1 every time the \envname{verse} environment is called). +%In case \pkgname{poemscol} has been loaded, the same operations +%are performed for counters \textsf{linenumber} and +%\textsf{printlineindex}. +% +%\subsection{Sectioning Commands} +% +%The package provides two series of commands in order to get a +%proper sectioning of the text: a \emph{lowercase} series and an +%\emph{uppercase} series. The difference between them is that the +%\emph{lowercase} form takes no mandatory argument and can be used +%absolutely, while the \emph{uppercase} form take one mandatory +%argument and should be used only when a title is specified as a +%part of the act/scene heading. I chose to introduce this peculiar +%form of sectioning commands without argument (and as the default +%one) because I think that in most cases the user only wants to get +%something like \emph{Act I} and should not bore himself issuing a +%pair of curly braces. +% +%So \DescribeMacro{\act}|\act| and \DescribeMacro{\scene}|\scene| +%print by default only the act or scene name (e.g.: Act) and its +%ordinal number. They (and |\DramPer| also) may take an optional +%argument: this feature is useful for inserting footnotes or +%endnotes in the act/scene headings, but causes an undesirable +%consequence: the user should issue a blank line after each of +%these commands when used without argument (two blank lines for +%|\DramPer| followed by a void |\scene|). +% +%\DescribeMacro{\Act}|\Act| and \DescribeMacro{\Scene}|\Scene| take +%as mandatory argument the title of the act or of the scene. An +%optional argument has the same meaning as for standard sectioning +%commands (|\chapter|, |\section|, etc.). The title is printed by means +%of |\printacttitle| or |\printscenetitle|. +% +%Each command is fully customizable, in the style of Peter Wilson's +%|memoir| class (see for the documentation \cite{mem}), via +%commands like \DescribeMacro{\printactname}|\printactname| or +%\DescribeMacro{\printactnum}|\printactnum|. These commands can be +%redefined by the user according with his own desire. Table +%\ref{tab:com} shows the commands and their default settings. +% +%\begin{table} +%\begin{center} +%\DeleteShortVerb{\|} +%\begin{tabular}{|c|c|} +%\hline +% \textbf{Commands} & \textbf{Default settings} \\ +%\hline +%\hline +% \verb+\printactname+ & \verb+\centering\actnamefont \actname+ \\ +%\hline +% \verb+\printactnum+ & \verb+\actnumfont \theact+ \\ +%\hline +% \verb+\printacttitle+ & \verb+\acttitlefont #1+ \\ +%\hline +% \verb+\actname+ & Act \\ +%\hline +% \verb+\actnamefont+ & \verb+\scshape\Large+ \\ +%\hline +% \verb+\actnumfont+ & \verb+\actnamefont+ \\ +%\hline +% \verb+\acttitlefont+ & \verb+\actnamefont+ \\ +%\hline +% \verb+\theact+ & \verb+\roman{act}+ \\ +%\hline +% \verb+\actcontentsline+ & \verb+\actname\ \theact+ \\ +%\hline +% \verb+\printscenename+ & \verb+\centering\scenenamefont \scenename+ \\ +%\hline +% \verb+\printscenenum+ & \verb+\scenenumfont \theact\intersep\thescene+ \\ +%\hline +% \verb+\printscenetitle+ & \verb+\scenetitlefont #1+ \\ +%\hline +% \verb+\scenenamefont+ & \verb+\scshape\large+ \\ +%\hline +% \verb+\scenenumfont+ & \verb+\scenenamefont+ \\ +%\hline +% \verb+\scenetitlefont+ & \verb+\scenenamefont+ \\ +%\hline +% \verb+\scenename+ & Scene \\ +%\hline +% \verb+\thescene+ & \verb+\roman{scene}+ \\ +%\hline +%\verb+\scenecontentsline+ & \verb+\scenename\ \thescene+ \\ +%\hline +% \verb+\printsep+ & \verb*+\ + \\ +%\hline +% \verb+\intersep+ & \verb*+\ --\ + \\ +%\hline +%\end{tabular} +%\caption{Sectioning commands}\label{tab:com} +%\end{center} +%\end{table} +%\MakeShortVerb{\|} +% +%\DescribeMacro{\actmark}|\actmark| and \DescribeMacro{\scenemark} +%|\scenemark|, defined by default to do nothing, can be useful for +%printing marks in the headers, and have the same meaning of +%|\chaptermark| and |\sectionmark| in the standard classes. +% +%A starred version also is provided for |\Act|, |\act|, |\Scene| +%and |\scene|. As in standard classes the starred form does not +%make an entry for the table of contents, and does not print the +%section mark in the headers. +% +%\subsection{Defining characters\label{sec:cdc}} +% +%The introduction of a new character is made by the command +%\DescribeMacro{\Character} |\Character|. It takes three arguments: +%the first, optional\footnote{The argument, mandatory until version +%1.1, has been made optional by suggestion of Christian Ebert in +%version 1.2. This avoids issuing a \cs{Character} command with a +%dummy first argument \emph{after} \cs{DramPer} when you need a +%character not appearing in the \emph{Dramatis Person\ae} list.}, +%is the entry for the list of \emph{Dramatis Person\ae}, the second +%is the name appearing in the text and the third is the base for +%the construction of the commands typesetting the occurrence of +%that name in the stage direction and as a speaker. Shortly, if +%\meta{name} is given as third argument, the macro will return the +%following commands: \verb|\|\meta{name} is used in stage +%direction, \verb|\|\meta{name}|speaks| is used as speaker. +% +%The first argument, when present, is passed to the macro +%\DescribeMacro{\DramPer}|\DramPer|, printing the list of +%\emph{Dramatis Person\ae}. The parameters of this macro are also +%customizable; the list of default settings can be seen in +%Table~\ref{tab:char}. Other parameters related to the +%customization of \verb|\|\meta{name} and +%\verb|\|\meta{name}|speaks| commands are added. +% +%You can also use a \DescribeMacro{\speaker} +%|\speaker{|\meta{name}|}| command in the place you want the +%character with name \meta{name} to appear (in this case no command +%is defined to print the name of the character inside a stage +%direction). +% +%\subsubsection{Grouped characters} +% +%Characters, in the \emph{Dramatis Person\ae} list, may need to be +%grouped under a common denomination\footnote{Thanks to Christian +%Ebert for having submitted the problem to my attention.}. For this +%occurrence the package provides an environment, +%\DescribeMacro{CharacterGroup} \envname{CharacterGroup}, taking, +%as mandatory argument the denomination common to each character +%belonging to the current group. Inside this environment the +%characters have to be defined by \DescribeMacro{\GCharacter} +%|\GCharacter| whose syntax is the same of |\Character|, except +%that the first argument is here, obviously, mandatory. The result +%will be that the characters will be grouped by a big parentheses +%on whose right will be printed, centered, the common denomination. +%The user can define the amount of space reserved to the characters +%names, the parentheses and the common denomination by means of +%\DescribeMacro{\CharWidth} |\CharWidth|, +%\DescribeMacro{\ParenWidth} |\ParenWidth| and +%\DescribeMacro{\GroupWidth} |\GroupWidth|. +% +%\bigskip +% +%The commands appearing in this section (especially |\DramPer| and +%|\Character|, i.e. the most crucial part of the whole work) have +%been inspired by Matt Swift's package |drama|. +% +%\begin{table} +%\begin{center} +%\DeleteShortVerb{\|} +%\begin{tabular}{|c|c|} +%\hline +% \textbf{Commands} & \textbf{Default settings} \\ +%\hline +%\hline +% \verb+\printcasttitle+ & \verb+\centering\casttitlefont \casttitlename+ \\ +%\hline +% \verb+\casttitlefont+ & \verb+\Large\scshape+ \\ +%\hline +% \verb+\casttitlename+ & Dramatis Person\ae \\ +%\hline +% \verb+\castfont+ & \verb+\normalfont+ \\ +%\hline +% \verb+\namefont+ & \verb+\scshape+ \\ +%\hline +% \verb+\speaksfont+ & \verb+\scshape+ \\ +%\hline +% \verb+\speaksdel+ & \\ +%\hline +%\end{tabular} +%\caption{Parameters for characters commands}\label{tab:char} +%\end{center} +%\end{table} +%\MakeShortVerb{\|} +% +%\subsection{Stage direction} +% +%Two commands are provided for printing stage directions: the +%first, \DescribeMacro{\StageDir}|\StageDir| is used for the very +%setting of the stage and calls a |quote| environment. The second, +%\DescribeMacro{\direct} is used for specifications in the middle +%of the speaker's text. In connection with the |verse| environment +%a starred version exists also to be used at the end of a +%stanza\DescribeMacro{\direct*}\footnote{This works only with the +%|verse| environment provided by the |verse| package and by the +%|memoir| class. You can use the normal, not starred version of the +%command with the standard |verse| environment}. A +%\DescribeEnv{stagedir} |stagedir| environment is finally provided +%for extremely long stage directions: it differs in nothing from +%his command version. +% +%|\StageDir| and the |stagedir| environment can be customized by +%means of \DescribeMacro{\StageDirConf} |\StageDirConf|. The +%command takes two arguments related to the code to be executed at +%the beginning and at the end of |\StageDir| or |stagedir|. +% +%\subsection{Local configuration file} +% +%As my chief aim has been the one of giving the user the support +%for a complete customization of the provided commands, I have +%taken under consideration the case of a stable local configuration +%set up by the user. So I introduced the possibility of reading a +%set of user definitions from a local configuration file called +%\marginpar{\raggedleft\small |dramatist.cfg|}|dramatist.cfg|. You +%must create this file, if you need it, and place it in a suitable +%directory (either the working directory or the package directory); +%if you don't need it, no problem: the package will merely print in +%your log file a message claiming the absence of such a file, but +%nor interruptions neither error will take place. +% +%\subsection{Acknowledgements} +% +%I must acknowledge a debt of inspiration toward both Peter +%Wilson's all purpose class package |memoir| and Matt Swift's +%|drama|. While the former inspired me with a peculiar care toward +%complete customization, the latter was the formal model and the +%source of solution for many among the problems which arose in the +%proceeding of the code writing. I highly recommend the use of the +%class |memoir| and the study of Matt Swift's ambitious bundle +%|Frankenstein| (but I hope you want use |dramatist| package instead!). +% +%I also wish to thank Christian Ebert, whose suggestions have been +%so useful to me in solving -- and often in merely recognizing -- +%many problems, and whose help and stimulating conversation is at +%the basis of the present (v1.2) revision of the package. +% +%\subsection{Known bugs} +% +%The user should issue an empty line after |\act| or |\scene| and +%\emph{two} empty lines after |\DramPer| (especially when it's +%followed by |\scene| used without argument). +% +%Using option |lnpa| or |lnps| together whith package +%\pkgname{hyperref} causes a long series of warning to be typed in +%the |log| file. This is due, I think, because \pkgname{hyperref} +%finds duplicates of the same entry every time the \envname{drama*} +%environment resets the |poemline| counter. However, there are no +%effects on the document, because the counter itself is by no way +%used by \pkgname{hyperref}. +% +%If you encounter new bugs, or have suggestions about the solution +%of the known ones, please send me a mail to this address: +%\texttt{mlgdominici@gmail.com.} +% +%\section{Code} +% +%\subsection{Package identification} +% +% \begin{macrocode} +%<*dramatist> +\ProvidesPackage{dramatist}[2014/12/18 v1.2e Package for typesetting drama -- Author: Massimiliano Dominici] +\NeedsTeXFormat{LaTeX2e} +\RequirePackage{xspace} +% \end{macrocode} +%\subsection{Conditionals, options and counters} +%The following line checks wether a class defining |\if@openright| +%has been loaded; if not, it defines that conditional expression. +% \begin{macrocode} +\@ifundefined{if@openright}{\newif\if@openright}{} +\newif\if@drverse +% \end{macrocode} +%The following lines provide support for the \pkgname{poemscol} +%package. +% \begin{macrocode} +\newif\if@poemscol +\@ifpackageloaded{poemscol}{\@poemscoltrue}{\@poemscolfalse} +% \end{macrocode} +%The conditional |\if@stagedir| is switched to true at the end of a +%stage direction. +% \begin{macrocode} +\newif\if@stagedir +% \end{macrocode} +%The two options for line numbering are defined to switch to true a +%conditional expression. +% \begin{macrocode} +\newif\if@lnpa +\newif\if@lnps +\newif\if@lnpd +\DeclareOption{lnpa}{\@lnpatrue} +\DeclareOption{lnps}{\@lnpstrue} +\ProcessOptions +% \end{macrocode} +%This is needed for saving and restoring the value of the +%|poemline| counter in the case it is defined and used. +% \begin{macrocode} +\newcounter{storelineno} +\setcounter{storelineno}{0} +\if@poemscol\else +\refstepcounter{storelineno}\fi +\newcounter{storeprintlineindex} +% \end{macrocode} +% \begin{macrocode} +\newcounter{character} +\newcounter{temp} +\newcounter{gtemp} +\newcounter{act} +\newcounter{scene}[act] +\renewcommand{\theact}{\roman{act}} +\renewcommand{\thescene}{\roman{scene}} +% \end{macrocode} +%\subsection{Environments} +%\begin{macro}{drama} +%\changes{v1.2}{2004/05/10}{Added hooks for customization.} +%The unstarred version of the |drama| environment defines a list +%with negative item indentation and whose label is the speaker's +%name. A previous check is made for an option and, in the case it +%has been issued, a warning is typed out to the |log| file. Hooks +%for user customization are provided: \DescribeMacro{\speakswidth} +%|\speakswidth| is the width of a label in which the name of the +%character is printed; \DescribeMacro{\speaksindent}|\speaksindent| +%is the indentation of the same label; +%\DescribeMacro{\Dlabelsep}|\Dlabelsep| is the space between this +%label and the text of the dialogue; +%\DescribeMacro{\Dparsep}|\Dparsep| controls the space between +%paragraphs inside the +%dialogue;\DescribeMacro{\speechskip}|\speechskip| controls the +%space between two subsequent +%speeches.\DescribeMacro{\speakslabel}|\speakslabel| formats the +%appearance of the name of the character. +% \begin{macrocode} +\newenvironment{drama}{% + \if@lnpa + \PackageWarning{dramatist}{\lnpwarning{a}} + \fi + \if@lnps + \PackageWarning{dramatist}{\lnpwarning{s}} + \fi + \list{}{% + \labelwidth\speakswidth + \itemindent\speaksindent + \itemsep\speechskip + \parsep\Dparsep + \labelsep\Dlabelsep + \let\makelabel\speakslabel} + } {\endlist} +% \end{macrocode} +%\end{macro} +%\begin{macro}{drama*} +%\changes{v1.1}{2004/01/19}{Environment \envname{drama*} has been +%completely restyled. Now, it automatically calls environment +%\envname{verse}.} +%\changes{v1.2}{2004/05/10}{Added support for \pkgname{poemscol}.} +%The starred version calls the \envname{verse} environment (or the +%\envname{poem} environment if \pkgname{poemscol} is loaded), after +%switching to |\@drversetrue|, controls line numbering, if any, +%and, after closing \envname{verse}, restores |\@drversefalse|. +% \begin{macrocode} +\@namedef{drama*}{% + \@drversetrue + \if@poemscol + \begin{poem} + \setcounter{verselinenumber}{\value{storelineno}} + \setcounter{printlineindex}{\value{storeprintlineindex}} + \else + \begin{verse} + \fi + \ifx\poemlines\@undefined\else + \setcounter{poemline}{\value{storelineno}} + \fi} +\@namedef{enddrama*}{% + \ifx\poemlines\@undefined\else + \setcounter{storelineno}{\value{poemline}} + \fi + \if@poemscol + \end{poem} + \setcounter{storelineno}{\value{verselinenumber}} + \setcounter{storeprintlineindex}{\value{printlineindex}} + \else + \end{verse} + \fi + \@drversefalse} +% \end{macrocode} +%\end{macro} +%\subsection{Sectioning commands} +% +%The sectioning commands |\act| and |\scene| have been made wholly +%customizable via |\m@ke@cthead| and |\m@kescenehead| just like the +%sectioning commands of |memoir| class (see \cite{mem} for further +%details). +% +%|\phantomsection| is needed for compatibility with the +%\envname{hyperref} package. It is defined to do nothing when +%\envname{hyperref} is not loaded. +% \begin{macrocode} +\providecommand\phantomsection{} +\newcommand\actmark[1]{} +\newcommand\scenemark[1]{} +\newcommand\drampermark[1]{} +% \end{macrocode} +%\begin{macro}{\@openact} +%|\@openact| must check if a class defining |\if@openright| has +%been loaded. In this case it provides an if statement to control +%switching between \textsf{openany} and \textsf{openright} +%behaviour. By default, the option loaded with the class is +%inherited. If the class loaded behaves like \clsname{article} only +%the \textsf{openany} option is allowed. According to the option +%loaded for line numbering, |\@openact| performs the needed +%operations. +% \begin{macrocode} +\newcommand\@openact{% + \@ifundefined{if@openright}{\clearpage}{% + \if@openright + \clearpage{\thispagestyle{empty}\cleardoublepage} + \else + \clearpage + \fi} + \thispagestyle{plain} + \refstepcounter{act} + \if@lnpa + \setcounter{storelineno}{0} + \if@poemscol + \setcounter{storeprintlineindex}{0} + \else + \refstepcounter{storelineno} + \fi + \fi +} +% \end{macrocode} +%\end{macro} +%\begin{macro}{\act} +%\changes{v1.1}{2004/01/19}{\cs{act} is now defined in a standard way +%and has an optional argument (to use for footnotes and the like).} +%\changes{v1.2}{2004/05/10}{Shared code moved to \cs{@openact}.} +%\changes{v1.2e}{2014/12/18}{Now \cs{act} actually uses \cs{actcontentsline}.} +%|\act| switches between |\@act| and |\@sact|; in the first case a +%line is added to the table of contents and an argument is assigned +%to |\actmark|. The actual task of printing the heading is left to +%|\m@ke@cthead|. +% \begin{macrocode} +\newcommand\act{% + \@openact + \secdef\@act\@sact} +\newcommand\@act[1][]{% + \phantomsection + \addcontentsline{toc}{chapter}{\actcontentsline} + \actmark{\actname\ \theact} + \m@ke@cthead{#1} + \@afterindentfalse + \@afterheading} +\newcommand\@sact[1][]{% + \m@ke@cthead{#1} + \@afterindentfalse + \@afterheading} +% \end{macrocode} +%\end{macro} +%\begin{macro}{\Act} +%\changes{v1.2}{2004/05/10}{Introduced macro \cs{Act} for sections +%with a title.} +%\changes{v1.2e}{2014/12/18}{Now \cs{Act} actually uses \cs{actcontentsline}.} +%|\Act| is defined in the standard way for sectioning commands. For +%its starred version relies upon |\@sact| +% \begin{macrocode} +\newcommand\Act{% + \@openact + \secdef\@Act\@sact} +\def\@Act[#1]#2{% + \phantomsection + \ifnum\c@secnumdepth>\m@ne + \addcontentsline{toc}{chapter}{\actcontentsline~#1} + \else + \addcontentsline{toc}{chapter}{#1} + \fi + \actmark{\actname\ \theact\ #1} + \m@ke@cthead{#2} + \@afterindentfalse + \@afterheading} +% \end{macrocode} +%\end{macro} +%\begin{macro}{\m@ke@cthead} +%|\m@ke@cthead| actually prints the headings. +% \begin{macrocode} +\newcommand\m@ke@cthead[1]{% + \actheadstart + {\parindent \z@ + \ifnum\c@secnumdepth>\m@ne + \printactname \printsep \printactnum + \fi + \printacttitle{#1} + \afteract} +} +% \end{macrocode} +%\end{macro} +%\begin{macro}{\@openscene} +%According to the option loaded for line numbering, |\@openscene| +%performs the needed operations. +% \begin{macrocode} +\newcommand\@openscene{% + \stepcounter{scene} + \if@lnps + \setcounter{storelineno}{0} + \if@poemscol + \setcounter{storeprintlineindex}{0} + \else + \refstepcounter{storelineno} + \fi + \fi +} +% \end{macrocode} +%\end{macro} +%\begin{macro}{\scene} +%\changes{v1.1}{2004/01/19}{\cs{scene} is now defined in a standard +%way and has an optional argument (to use for footnotes and the +%like).} +%\changes{v1.2}{2004/05/10}{Shared code moved to \cs{@penscene}.} +%\changes{v1.2e}{2014/12/18}{Now \cs{scene} actually uses \cs{scenecontentsline}.} +%|\scene| switches between |\@scene| and |\@sscene|; in the first case a +%line is added to the table of contents and an argument is assigned +%to |\scenemark|. The actual task of printing the heading is left to +%|\m@kescenehead|. +% \begin{macrocode} +\newcommand\scene{% + \@openscene + \secdef\@scene\@sscene} +\newcommand\@scene[1][]{% + \phantomsection + \addcontentsline{toc}{section}{\scenecontentsline} + \scenemark{\scenename\ \thescene} + \m@kescenehead{#1} + \@afterindentfalse + \@afterheading} +\newcommand\@sscene[1][]{% + \m@kescenehead{#1} + \@afterindentfalse + \@afterheading} +% \end{macrocode} +%\end{macro} +%\begin{macro}{\Scene} +%\changes{v1.2}{2004/05/10}{Introduced macro \cs{Scene} for sections +%with a title.} +%\changes{v1.2e}{2014/12/18}{Now \cs{Scene} actually uses \cs{scenecontentsline}.} +%|\Scene| is defined in the standard way for sectioning commands. For +%its starred version relies upon |\@sscene| +% \begin{macrocode} +\newcommand\Scene{% + \@openscene + \secdef\@Scene\@sscene} +\def\@Scene[#1]#2{% + \phantomsection + \ifnum\c@secnumdepth>\z@ + \addcontentsline{toc}{section}{\scenecontentsline~#1} + \else + \addcontentsline{toc}{section}{#1} + \fi + \scenemark{\scenename\ \thescene\ #1} + \m@kescenehead{#2} + \@afterindentfalse + \@afterheading} +% \end{macrocode} +%\end{macro} +%\begin{macro}{\m@kescenehead} +%|\m@kescenehead| actually prints the headings. +% \begin{macrocode} +\newcommand\m@kescenehead[1]{% + \sceneheadstart + {\parindent \z@ + \ifnum\c@secnumdepth>\z@ + \printscenename \printsep \printscenenum + \fi + \printscenetitle{#1} + \afterscene} +} +% \end{macrocode} +%\end{macro} +%\subsection{Defining characters} +% +%\begin{macro}{\Character} +%The macro |\Character| performs three different tasks. First, +%it creates, being \meta{name} the third argument, the command +%|\|\meta{name}, for use in stage directions; in order to achieve +%this task it uses |\@namedef| (see the latex source). +% +%In second place it creates a |\|\meta{name}|speaks| command, used +%for printing the speaker's name. It uses, for this purpose a +%|\n@me@ppend@nddef| macro which is similar to |\@namedef|. A +%conditional |\if@drverse| produces different formatting for the verse +%and the prose environment. +% +%Finally, in third place, if the first optional argument is given +%and |\@xcharacter| is called, it creates an internal command, +%still using |\n@me@ppend@nddef|, in the form +%|\persona|\meta{count}, where \meta{count} is a counter expressed +%in roman lowercase numerals increasing by one every time +%|\Character| is called. This family of commands is used by +%|\DramPer| when it prints the list of the characters. +%\changes{v1.2}{2004/05/10}{The first argument of \cs{Character} has +%been made optional so that documents printed with previous +%versions are not compatible with the present and the future +%versions.} +%\changes{v1.2}{2004/05/10}{Added hook for inserting a delimiter +%after the character's name: \cs{speakdel}.} +% \begin{macrocode} +\newcommand\Character{% + \@ifnextchar[{\@xcharacter}{\@character}} +\def\@xcharacter[#1]#2#3{% + \stepcounter{character} + \@character{#2}{#3} + \n@me@ppend@nddef{persona}{@\Roman{character}}{\castfont #1} +} +\def\@character#1#2{% + \@namedef{#2}{{\namefont #1}\xspace} + \n@me@ppend@nddef{#2}{\@ppendname}{% + \if@drverse + {\speakstab\speaksfont{#1}\speaksdel\par\nobreak\addvspace{-\parskip}} + \else + \item[#1\speaksdel] + \fi} +} +% \end{macrocode} +% \begin{macrocode} +\newcommand{\n@me@ppend@nddef}[2]{% + \expandafter\def\csname#1#2\endcsname} +\newcommand{\@ppendname}{speaks} +% \end{macrocode} +%\end{macro} +%\begin{macro}{CharacterGroup} +%\changes{v1.2}{2004/05/10}{Added environment for characters groups +%in the \emph{dramatis person\ae} list.} +%This environment is used for groups of characters in the +%\emph{Dramatis Person\ae} list. The main idea is that each group +%of characters should be treated as a single |\persona|\meta{count} +%when called by |\DramPer|, while inside it should behave like +%|\DramPer| itself -- in this case |\dogrouplist|, which is +%identical in structure. The main feature is that every instance of +%\envname{CharacterGroup} defines an internal counter whose name +%depends by another counter -- namely: \textsf{character} -- and +%this is used by the correspondent `call' to |\dogrouplist|. +% \begin{macrocode} +\newenvironment{CharacterGroup}[1]{% + \stepcounter{character} + \newcounter{g\Roman{character}} + \grouplist{#1} +}{} +% \end{macrocode} +%The name and the first specification of the characters, the big +%parentheses, and the common denomination are arranged in boxes +%whose length can be specified by the user by means of \emph{ad +%hoc} commands. +% \begin{macrocode} +\newsavebox{\tbox} +\newcommand\grouplist[1]{% + \global\n@me@ppend@nddef{persona}{@\Roman{character}}{% + \begin{lrbox}{\tbox} + \begin{minipage}[c]{\CharWidth}\raggedright + \leftmargini=0pt + \begin{list}{}{\itemsep=0pt} + \dogrouplist + \end{list} + \end{minipage} + \end{lrbox} + \parbox{\CharWidth}{\usebox{\tbox}}% + \parbox{\ParenWidth}{$\left.\rule{0pt}{\ht\tbox}\right\}$} + \parbox{\CastWidth}{\castfont #1\strut}} +} +% \end{macrocode} +% \begin{macrocode} +\newcommand{\dogrouplist}{% + \ifnum\value{g\Roman{temp}}>\value{gtemp} + \stepcounter{gtemp} + \item\@nameuse{gpersona@\Roman{temp}@\Roman{gtemp}}\strut + \dogrouplist + \fi + \setcounter{gtemp}{0} +} +% \end{macrocode} +%\end{macro} +%\begin{macro}{\GCharacter} +%\changes{v1.2}{2004/05/10}{Added macro for introducing a single +%character inside a group in the \emph{dramatist person\ae} list.} +%This is the version of |\Character| to be used inside a +%\envname{CharacterGroup} environment. In this case the first +%argument is, obviously, mandatory. +% \begin{macrocode} +\newcommand\GCharacter[3]{ + \stepcounter{g\Roman{character}} + \global\@namedef{#3}{{\namefont #2}\xspace} + \global\n@me@ppend@nddef{#3}{\@ppendname}{% + \if@drverse + {\speakstab\speaksfont #2\speaksdel\par\nobreak\addvspace{-\parskip}} + \else + \item[#2\speaksdel] + \fi} + \global\n@me@ppend@nddef{gpersona@\Roman{character}}{% + @\Roman{g\Roman{character}}}{\castfont #1} +} +% \end{macrocode} +%\end{macro} +%\begin{macro}{\speaker} +%\changes{v1.1}{2004/01/19}{Command \cs{speaker} added.} +%This command is provided for defining characters which must not +%appear in the `Dramatis Person\ae' list and are not mentioned in +%stage directions. +% \begin{macrocode} +\newcommand\speaker[1]{% + \if@drverse + {\speakstab\speaksfont #1\speaksdel\par\nobreak\addvspace{-\parskip}} + \else + \item[#1\speaksdel] + \fi} +% \end{macrocode} +%\end{macro} +%\begin{macro}{\DramPer} +%\changes{v1.1}{2004/01/19}{\cs{DramPer} is now defined in a standard +%way and has an optional argument (to use for footnotes and the +%like).} +%The macro |\DramPer| prints in the list of \emph{Dramatis +%Person\ae} the characters previously defined by the first argument +%of |\Character|. This is done via the |\dodramperlist| macro, +%which recursively calls the |\persona|\meta{count} commands and +%put them in the list defined by |\DramPer|. +% \begin{macrocode} +\newcommand{\DramPer}{% + \@ifundefined{if@openright}{\clearpage}{% + \if@openright\cleardoublepage\else\clearpage\fi} + \secdef\@dramper\@sdramper} +% \end{macrocode} +% \begin{macrocode} +\newcommand\@dramper[1][]{% + \phantomsection + \addcontentsline{toc}{chapter}{\casttitlename} + \drampermark{\casttitlename} + \m@kedramperhead{#1}} +% \end{macrocode} +% \begin{macrocode} +\newcommand\@sdramper[1][]{% + \m@kedramperhead{#1}} +% \end{macrocode} +% \begin{macrocode} +\newcommand\m@kedramperhead[1]{ + \castheadstart + {\printcasttitle #1 + \aftercasttitle} + \begin{list}{}{\leftmargin=0pt \itemsep=0pt} + \dodramperlist + \end{list} +} +% \end{macrocode} +% \begin{macrocode} +\newcommand{\dodramperlist}{% + \ifnum\value{character}>\value{temp} + \stepcounter{temp} + \item\@nameuse{persona@\Roman{temp}}\strut + \dodramperlist + \fi +} +% \end{macrocode} +%\end{macro} +%\subsection{Stage direction} +%\begin{macro}{\direct} +%In the prose environment |\direct| merely encloses its argument in +%plain braces and emphasizes it; and has no starred version. In the +%verse environment things are a little more complicated, a +%|\parbox| is involved and I have to admit the result is not really +%perfect -- yet I found no better solution. The starred version +%must be used at the end of a stanza. +%\changes{v1.2}{2004/05/10}{Parbox length made customizable.} +% \begin{macrocode} +\newcommand{\direct}{% + \@ifstar\@sdirect\@direct} +% \end{macrocode} +% \begin{macrocode} +\newcommand{\@direct}[1]{% + \if@drverse + \vskip2\normallineskip + \parbox[b]{\dirwidth}{\dirdelimiter{{\itshape #1}}}\@centercr + \else + \dirdelimiter{{\itshape #1}}\unskip + \fi +} +% \end{macrocode} +% \begin{macrocode} +\newcommand{\@sdirect}[1]{% + \if@drverse + \vskip2\normallineskip + \parbox[b]{\dirwidth}{\dirdelimiter{\itshape #1}}\\! + \else + \starrederror + \fi +} +% \end{macrocode} +% \begin{macrocode} +\newcommand{\dirdelimiter}[1]{(#1)} +% \end{macrocode} +%\end{macro} +%\begin{macro}{\StageDir} +%It's a very simple command |\StageDir|: it merely calls the +%\envname{stagedir} environment. No more talking of it. +% \begin{macrocode} +\newcommand{\StageDir}[1]{% + \begin{stagedir} + #1 + \end{stagedir} +} +% \end{macrocode} +%\end{macro} +%\begin{macro}{stagedir} +%The \envname{stagedir} environment calls by default the +%\envname{quote} environment, but can be redefined by the user to +%do everything by means of |\StageDirConf|. I use here |\em| +%instead of |\emph| in order to avoid strange indentations -- +%thanks to Christian Ebert for having recognized and solved the +%problem. +% \begin{macrocode} +\newenvironment{stagedir}{% + \StageDirOpenSettings}{% + \StageDirCloseSettings\global\@stagedirtrue} +\newcommand\StageDirOpenSettings{\begin{quote}\em} +\newcommand\StageDirCloseSettings{\end{quote}} +% \end{macrocode} +% \begin{macrocode} +\newcommand\StageDirConf[2]{% + \renewcommand\StageDirOpenSettings{#1} + \renewcommand\StageDirCloseSettings{#2} +} +% \end{macrocode} +%\end{macro} +%\subsection{Configuration settings} +% \begin{macrocode} +\newcommand\actcontentsline{\actname\ \theact} +\newcommand{\actnamefont}{\scshape\Large} +\newcommand{\actnumfont}{\actnamefont} +\newcommand{\acttitlefont}{\actnamefont} +\newcommand{\actname}{Act} +\newcommand{\printactname}{\centering\actnamefont \actname} +\newcommand{\printactnum}{\actnumfont \theact} +\newcommand{\printacttitle}[1]{\acttitlefont\ #1} +\newcommand\scenecontentsline{\scenename\ \thescene} +\newcommand{\scenenamefont}{\scshape\large} +\newcommand{\scenenumfont}{\scenenamefont} +\newcommand{\scenetitlefont}{\scenenamefont} +\newcommand{\scenename}{Scene} +\newcommand{\printscenename}{\centering\scenenamefont \scenename} +\newcommand{\printscenenum}{\scenenumfont \theact\intersep\thescene} +\newcommand{\printscenetitle}[1]{\scenetitlefont\ #1} +\newcommand{\intersep}{\ --\ } +\newcommand{\printsep}{\ } +\newcommand{\printcasttitle}{\centering\casttitlefont \casttitlename} +\newcommand{\casttitlefont}{\Large\scshape} +\newcommand{\casttitlename}{Dramatis Person\ae} +\newcommand{\castfont}{\normalfont} +\newcommand{\namefont}{\scshape} +\newcommand{\speaksfont}{\scshape} +\newcommand{\speaksdel}{} +\newlength{\CharWidth} +\setlength{\CharWidth}{.3\textwidth} +\newlength{\ParenWidth} +\setlength{\ParenWidth}{.05\textwidth} +\newlength{\CastWidth} +\setlength{\CastWidth}{.6\textwidth} +% \end{macrocode} +% \begin{macrocode} +\def\actheadstart{\vspace*{\beforeactskip}} +\def\afteract{\par\nobreak\vskip\afteractskip} +\def\sceneheadstart{\vspace*{\beforesceneskip}} +\def\afterscene{\par\nobreak\vskip\aftersceneskip} +\def\castheadstart{\vspace*{\beforecastskip}} +\def\aftercasttitle{\par\nobreak\vskip\aftercasttitleskip} +\newcommand{\speakstab}{\hspace{\speaksskip}} +\newlength{\beforeactskip} +\setlength{\beforeactskip}{\baselineskip} +\newlength{\afteractskip} +\setlength{\afteractskip}{\baselineskip} +\newlength{\beforesceneskip} +\setlength{\beforesceneskip}{0pt} +\newlength{\aftersceneskip} +\setlength{\aftersceneskip}{\baselineskip} +\newlength{\beforecastskip} +\setlength{\beforecastskip}{0pt} +\newlength{\aftercasttitleskip} +\setlength{\aftercasttitleskip}{0pt} +\newlength{\speaksskip} +\setlength{\speaksskip}{1em} +\newlength{\dirwidth} +\setlength{\dirwidth}{.6\textwidth} +% \end{macrocode} +%Default settings for the \envname{drama} environment. +% \begin{macrocode} +\newdimen\speakswidth +\speakswidth\z@ +\newdimen\speaksindent +\speaksindent=-\leftmargin +\newdimen\speechskip +\speechskip\itemsep +\newdimen\Dparsep +\Dparsep\z@ +\newdimen\Dlabelsep +\Dlabelsep\labelsep +\newcommand{\speakslabel}[1]{% + \hspace\labelsep \speaksfont{#1}} +% \end{macrocode} +%\subsection{Error messages handling} +% \begin{macrocode} +\newcommand{\starrederror}{\PackageError{dramatist}{% + The starred version of this command is not available under the + option you have chosen} + {You probably misspelled the command.^^J% + Only the `verse' option supports a starred version of this + command.} +} +\newcommand{\lnpwarning}[1]{The option `lnp#1' is meaningless outside the% + `drama*' environment} +\newcommand{\inputfilewarning}{\PackageWarningNoLine{dramatist}{^^J^^J% +********************************************************^^J% +* No Configuration file found, using default settings. *^^J% +********************************************************^^J% +}} +\newcommand{\foundfile}{\PackageWarningNoLine{dramatist}{^^J^^J% +*******************************************^^J% +* Using Configuration file dramatist.cfg. *^^J% +*******************************************^^J% +}} +% \end{macrocode} +%\subsection{Local configuration file} +%The following code inputs the local configuration file +%|dramatist.cfg|. +% \begin{macrocode} +\InputIfFileExists{dramatist.cfg}{\foundfile}{\inputfilewarning} +% +% \end{macrocode} +% +%\appendix +%In Appendix are given the terms under which the package and his documentation are released. +%%\section{The GNU General Public License} +% +%\begin{center} +%{\parindent 0in +% +%{\scshape The GNU General Public License} +% +%Version 2, June 1991 +% +%Copyright \copyright\ 1989, 1991 Free Software Foundation, Inc. +% +%\bigskip +% +%59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +% +%\bigskip +% +%Everyone is permitted to copy and distribute verbatim copies of +%this license document, but changing it is not allowed. } +%\end{center} +% +%\begin{center} +%{\bf\large Preamble} +%\end{center} +% +% +%The licenses for most software are designed to take away your +%freedom to share and change it. By contrast, the GNU General +%Public License is intended to guarantee your freedom to share and +%change free software---to make sure the software is free for all +%its users. This General Public License applies to most of the +%Free Software Foundation's software and to any other program whose +%authors commit to using it. (Some other Free Software Foundation +%software is covered by the GNU Library General Public License +%instead.) You can apply it to your programs, too. +% +%When we speak of free software, we are referring to freedom, not +%price. Our General Public Licenses are designed to make sure that +%you have the freedom to distribute copies of free software (and +%charge for this service if you wish), that you receive source code +%or can get it if you want it, that you can change the software or +%use pieces of it in new free programs; and that you know you can +%do these things. +% +%To protect your rights, we need to make restrictions that forbid +%anyone to deny you these rights or to ask you to surrender the +%rights. These restrictions translate to certain responsibilities +%for you if you distribute copies of the software, or if you modify +%it. +% +%For example, if you distribute copies of such a program, whether +%gratis or for a fee, you must give the recipients all the rights +%that you have. You must make sure that they, too, receive or can +%get the source code. And you must show them these terms so they +%know their rights. +% +%We protect your rights with two steps: (1) copyright the software, +%and (2) offer you this license which gives you legal permission to +%copy, distribute and/or modify the software. +% +%Also, for each author's protection and ours, we want to make +%certain that everyone understands that there is no warranty for +%this free software. If the software is modified by someone else +%and passed on, we want its recipients to know that what they have +%is not the original, so that any problems introduced by others +%will not reflect on the original authors' reputations. +% +%Finally, any free program is threatened constantly by software +%patents. We wish to avoid the danger that redistributors of a free +%program will individually obtain patent licenses, in effect making +%the program proprietary. To prevent this, we have made it clear +%that any patent must be licensed for everyone's free use or not +%licensed at all. +% +%The precise terms and conditions for copying, distribution and +%modification follow. +% +%\begin{center} +%{\Large \sc Terms and Conditions For Copying, Distribution and +% Modification} +%\end{center} +% +% +%\begin{enumerate} +% +%\addtocounter{enumi}{-1} +% +%\item +%This License applies to any program or other work which contains a +%notice placed by the copyright holder saying it may be distributed +%under the terms of this General Public License. The ``Program'', +%below, refers to any such program or work, and a ``work based on +%the Program'' means either the Program or any derivative work +%under copyright law: that is to say, a work containing the Program +%or a portion of it, either verbatim or with modifications and/or +%translated into another language. (Hereinafter, translation is +%included without limitation in the term ``modification''.) Each +%licensee is addressed as ``you''. +% +%Activities other than copying, distribution and modification are +%not covered by this License; they are outside its scope. The act +%of running the Program is not restricted, and the output from the +%Program is covered only if its contents constitute a work based on +%the Program (independent of having been made by running the +%Program). Whether that is true depends on what the Program does. +% +%\item You may copy and distribute verbatim copies of the Program's source +% code as you receive it, in any medium, provided that you conspicuously +% and appropriately publish on each copy an appropriate copyright notice +% and disclaimer of warranty; keep intact all the notices that refer to +% this License and to the absence of any warranty; and give any other +% recipients of the Program a copy of this License along with the Program. +% +%You may charge a fee for the physical act of transferring a copy, +%and you may at your option offer warranty protection in exchange +%for a fee. +% +%\item +% +%You may modify your copy or copies of the Program or any portion +%of it, thus forming a work based on the Program, and copy and +%distribute such modifications or work under the terms of Section 1 +%above, provided that you also meet all of these conditions: +% +%\begin{enumerate} +% +%\item +% +%You must cause the modified files to carry prominent notices +%stating that you changed the files and the date of any change. +% +%\item +% +%You must cause any work that you distribute or publish, that in +%whole or in part contains or is derived from the Program or any +%part thereof, to be licensed as a whole at no charge to all third +%parties under the terms of this License. +% +%\item +%If the modified program normally reads commands interactively when +%run, you must cause it, when started running for such interactive +%use in the most ordinary way, to print or display an announcement +%including an appropriate copyright notice and a notice that there +%is no warranty (or else, saying that you provide a warranty) and +%that users may redistribute the program under these conditions, +%and telling the user how to view a copy of this License. +%(Exception: if the Program itself is interactive but does not +%normally print such an announcement, your work based on the +%Program is not required to print an announcement.) +% +%\end{enumerate} +% +% +%These requirements apply to the modified work as a whole. If +%identifiable sections of that work are not derived from the +%Program, and can be reasonably considered independent and separate +%works in themselves, then this License, and its terms, do not +%apply to those sections when you distribute them as separate +%works. But when you distribute the same sections as part of a +%whole which is a work based on the Program, the distribution of +%the whole must be on the terms of this License, whose permissions +%for other licensees extend to the entire whole, and thus to each +%and every part regardless of who wrote it. +% +%Thus, it is not the intent of this section to claim rights or +%contest your rights to work written entirely by you; rather, the +%intent is to exercise the right to control the distribution of +%derivative or collective works based on the Program. +% +%In addition, mere aggregation of another work not based on the +%Program with the Program (or with a work based on the Program) on +%a volume of a storage or distribution medium does not bring the +%other work under the scope of this License. +% +%\item +%You may copy and distribute the Program (or a work based on it, +%under Section 2) in object code or executable form under the terms +%of Sections 1 and 2 above provided that you also do one of the +%following: +% +%\begin{enumerate} +% +%\item +% +%Accompany it with the complete corresponding machine-readable +%source code, which must be distributed under the terms of Sections +%1 and 2 above on a medium customarily used for software +%interchange; or, +% +%\item +% +%Accompany it with a written offer, valid for at least three years, +%to give any third party, for a charge no more than your cost of +%physically performing source distribution, a complete +%machine-readable copy of the corresponding source code, to be +%distributed under the terms of Sections 1 and 2 above on a medium +%customarily used for software interchange; or, +% +%\item +% +%Accompany it with the information you received as to the offer to +%distribute corresponding source code. (This alternative is +%allowed only for noncommercial distribution and only if you +%received the program in object code or executable form with such +%an offer, in accord with Subsection b above.) +% +%\end{enumerate} +% +% +%The source code for a work means the preferred form of the work +%for making modifications to it. For an executable work, complete +%source code means all the source code for all modules it contains, +%plus any associated interface definition files, plus the scripts +%used to control compilation and installation of the executable. +%However, as a special exception, the source code distributed need +%not include anything that is normally distributed (in either +%source or binary form) with the major components (compiler, +%kernel, and so on) of the operating system on which the executable +%runs, unless that component itself accompanies the executable. +% +%If distribution of executable or object code is made by offering +%access to copy from a designated place, then offering equivalent +%access to copy the source code from the same place counts as +%distribution of the source code, even though third parties are not +%compelled to copy the source along with the object code. +% +%\item +%You may not copy, modify, sublicense, or distribute the Program +%except as expressly provided under this License. Any attempt +%otherwise to copy, modify, sublicense or distribute the Program is +%void, and will automatically terminate your rights under this +%License. However, parties who have received copies, or rights, +%from you under this License will not have their licenses +%terminated so long as such parties remain in full compliance. +% +%\item +%You are not required to accept this License, since you have not +%signed it. However, nothing else grants you permission to modify +%or distribute the Program or its derivative works. These actions +%are prohibited by law if you do not accept this License. +%Therefore, by modifying or distributing the Program (or any work +%based on the Program), you indicate your acceptance of this +%License to do so, and all its terms and conditions for copying, +%distributing or modifying the Program or works based on it. +% +%\item +%Each time you redistribute the Program (or any work based on the +%Program), the recipient automatically receives a license from the +%original licensor to copy, distribute or modify the Program +%subject to these terms and conditions. You may not impose any +%further restrictions on the recipients' exercise of the rights +%granted herein. You are not responsible for enforcing compliance +%by third parties to this License. +% +%\item +%If, as a consequence of a court judgment or allegation of patent +%infringement or for any other reason (not limited to patent +%issues), conditions are imposed on you (whether by court order, +%agreement or otherwise) that contradict the conditions of this +%License, they do not excuse you from the conditions of this +%License. If you cannot distribute so as to satisfy simultaneously +%your obligations under this License and any other pertinent +%obligations, then as a consequence you may not distribute the +%Program at all. For example, if a patent license would not permit +%royalty-free redistribution of the Program by all those who +%receive copies directly or indirectly through you, then the only +%way you could satisfy both it and this License would be to refrain +%entirely from distribution of the Program. +% +%If any portion of this section is held invalid or unenforceable +%under any particular circumstance, the balance of the section is +%intended to apply and the section as a whole is intended to apply +%in other circumstances. +% +%It is not the purpose of this section to induce you to infringe +%any patents or other property right claims or to contest validity +%of any such claims; this section has the sole purpose of +%protecting the integrity of the free software distribution system, +%which is implemented by public license practices. Many people +%have made generous contributions to the wide range of software +%distributed through that system in reliance on consistent +%application of that system; it is up to the author/donor to decide +%if he or she is willing to distribute software through any other +%system and a licensee cannot impose that choice. +% +%This section is intended to make thoroughly clear what is believed +%to be a consequence of the rest of this License. +% +%\item +%If the distribution and/or use of the Program is restricted in +%certain countries either by patents or by copyrighted interfaces, +%the original copyright holder who places the Program under this +%License may add an explicit geographical distribution limitation +%excluding those countries, so that distribution is permitted only +%in or among countries not thus excluded. In such case, this +%License incorporates the limitation as if written in the body of +%this License. +% +%\item +%The Free Software Foundation may publish revised and/or new +%versions of the General Public License from time to time. Such +%new versions will be similar in spirit to the present version, but +%may differ in detail to address new problems or concerns. +% +%Each version is given a distinguishing version number. If the +%Program specifies a version number of this License which applies +%to it and ``any later version'', you have the option of following +%the terms and conditions either of that version or of any later +%version published by the Free Software Foundation. If the Program +%does not specify a version number of this License, you may choose +%any version ever published by the Free Software Foundation. +% +%\item +%If you wish to incorporate parts of the Program into other free +%programs whose distribution conditions are different, write to the +%author to ask for permission. For software which is copyrighted +%by the Free Software Foundation, write to the Free Software +%Foundation; we sometimes make exceptions for this. Our decision +%will be guided by the two goals of preserving the free status of +%all derivatives of our free software and of promoting the sharing +%and reuse of software generally. +% +%\begin{center} +%{\Large\sc No Warranty } +%\end{center} +% +%\item +%{\sc Because the program is licensed free of charge, there is no +%warranty for the program, to the extent permitted by applicable +%law. Except when otherwise stated in writing the copyright +%holders and/or other parties provide the program ``as is'' without +%warranty of any kind, either expressed or implied, including, but +%not limited to, the implied warranties of merchantability and +%fitness for a particular purpose. The entire risk as to the +%quality and performance of the program is with you. Should the +%program prove defective, you assume the cost of all necessary +%servicing, repair or correction.} +% +%\item +%{\sc In no event unless required by applicable law or agreed to in +%writing will any copyright holder, or any other party who may +%modify and/or redistribute the program as permitted above, be +%liable to you for damages, including any general, special, +%incidental or consequential damages arising out of the use or +%inability to use the program (including but not limited to loss of +%data or data being rendered inaccurate or losses sustained by you +%or third parties or a failure of the program to operate with any +%other programs), even if such holder or other party has been +%advised of the possibility of such damages.} +% +%\end{enumerate} +% +% +%\begin{center} +%{\Large\sc End of Terms and Conditions} +%\end{center} +% +% +%\pagebreak[2] +% +%\subsection*{Appendix: How to Apply These Terms to Your New Programs} +% +%If you develop a new program, and you want it to be of the +%greatest possible use to the public, the best way to achieve this +%is to make it free software which everyone can redistribute and +%change under these terms. +% +% To do so, attach the following notices to the program. It is safest to +% attach them to the start of each source file to most effectively convey +% the exclusion of warranty; and each file should have at least the +% ``copyright'' line and a pointer to where the full notice is found. +% +%\begin{quote} +%one line to give the program's name and a brief idea of what it does. \\ +%Copyright (C) yyyy name of author \\ +% +%This program is free software; you can redistribute it and/or +%modify it under the terms of the GNU General Public License as +%published by the Free Software Foundation; either version 2 of the +%License, or (at your option) any later version. +% +%This program is distributed in the hope that it will be useful, +%but WITHOUT ANY WARRANTY; without even the implied warranty of +%MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +%General Public License for more details. +% +%You should have received a copy of the GNU General Public License +%along with this program; if not, write to the Free Software +%Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +%02111-1307, USA. +%\end{quote} +% +%Also add information on how to contact you by electronic and paper +%mail. +% +%If the program is interactive, make it output a short notice like +%this when it starts in an interactive mode: +% +%\begin{quote} +%Gnomovision version 69, Copyright (C) yyyy name of author \\ +%Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. \\ +%This is free software, and you are welcome to redistribute it +%under certain conditions; type `show c' for details. +%\end{quote} +% +% +%The hypothetical commands {\tt show w} and {\tt show c} should +%show the appropriate parts of the General Public License. Of +%course, the commands you use may be called something other than +%{\tt show w} and {\tt show c}; they could even be mouse-clicks or +%menu items---whatever suits your program. +% +%You should also get your employer (if you work as a programmer) or +%your school, if any, to sign a ``copyright disclaimer'' for the +%program, if necessary. Here is a sample; alter the names: +% +%\begin{quote} +%Yoyodyne, Inc., hereby disclaims all copyright interest in the program \\ +%`Gnomovision' (which makes passes at compilers) written by James Hacker. \\ +% +%signature of Ty Coon, 1 April 1989 \\ +%Ty Coon, President of Vice +%\end{quote} +% +% +%This General Public License does not permit incorporating your +%program into proprietary programs. If your program is a +%subroutine library, you may consider it more useful to permit +%linking proprietary applications with the library. If this is +%what you want to do, use the GNU Library General Public License +%instead of this License. +% +%\section{GNU Free Documentation License} +% +%\begin{center} +% +%{\scshape GNU Free Documentation License} +% +%Version 1.2, November 2002 +% +%Copyright \copyright 2000,2001,2002 Free Software Foundation, Inc. +% +%\bigskip +% +%59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +% +%\bigskip +% +%Everyone is permitted to copy and distribute verbatim copies +%of this license document, but changing it is not allowed. +%\end{center} +% +% +%\begin{center} +%{\bf\large Preamble} +%\end{center} +% +%The purpose of this License is to make a manual, textbook, or other +%functional and useful document ``free'' in the sense of freedom: to +%assure everyone the effective freedom to copy and redistribute it, +%with or without modifying it, either commercially or noncommercially. +%Secondarily, this License preserves for the author and publisher a way +%to get credit for their work, while not being considered responsible +%for modifications made by others. +% +%This License is a kind of ``copyleft'', which means that derivative +%works of the document must themselves be free in the same sense. It +%complements the GNU General Public License, which is a copyleft +%license designed for free software. +% +%We have designed this License in order to use it for manuals for free +%software, because free software needs free documentation: a free +%program should come with manuals providing the same freedoms that the +%software does. But this License is not limited to software manuals; +%it can be used for any textual work, regardless of subject matter or +%whether it is published as a printed book. We recommend this License +%principally for works whose purpose is instruction or reference. +% +%\begin{center} +%{\Large\bf 1. APPLICABILITY AND DEFINITIONS} +%\end{center} +% +%This License applies to any manual or other work, in any medium, that +%contains a notice placed by the copyright holder saying it can be +%distributed under the terms of this License. Such a notice grants a +%world-wide, royalty-free license, unlimited in duration, to use that +%work under the conditions stated herein. The \textbf{``Document''}, below, +%refers to any such manual or work. Any member of the public is a +%licensee, and is addressed as \textbf{``you''}. You accept the license if you +%copy, modify or distribute the work in a way requiring permission +%under copyright law. +% +%A \textbf{``Modified Version''} of the Document means any work containing the +%Document or a portion of it, either copied verbatim, or with +%modifications and/or translated into another language. +% +%A \textbf{``Secondary Section''} is a named appendix or a front-matter section of +%the Document that deals exclusively with the relationship of the +%publishers or authors of the Document to the Document's overall subject +%(or to related matters) and contains nothing that could fall directly +%within that overall subject. (Thus, if the Document is in part a +%textbook of mathematics, a Secondary Section may not explain any +%mathematics.) The relationship could be a matter of historical +%connection with the subject or with related matters, or of legal, +%commercial, philosophical, ethical or political position regarding +%them. +% +%The \textbf{``Invariant Sections''} are certain Secondary Sections whose titles +%are designated, as being those of Invariant Sections, in the notice +%that says that the Document is released under this License. If a +%section does not fit the above definition of Secondary then it is not +%allowed to be designated as Invariant. The Document may contain zero +%Invariant Sections. If the Document does not identify any Invariant +%Sections then there are none. +% +%The \textbf{``Cover Texts''} are certain short passages of text that are listed, +%as Front-Cover Texts or Back-Cover Texts, in the notice that says that +%the Document is released under this License. A Front-Cover Text may +%be at most 5 words, and a Back-Cover Text may be at most 25 words. +% +%A \textbf{``Transparent''} copy of the Document means a machine-readable copy, +%represented in a format whose specification is available to the +%general public, that is suitable for revising the document +%straightforwardly with generic text editors or (for images composed of +%pixels) generic paint programs or (for drawings) some widely available +%drawing editor, and that is suitable for input to text formatters or +%for automatic translation to a variety of formats suitable for input +%to text formatters. A copy made in an otherwise Transparent file +%format whose markup, or absence of markup, has been arranged to thwart +%or discourage subsequent modification by readers is not Transparent. +%An image format is not Transparent if used for any substantial amount +%of text. A copy that is not ``Transparent'' is called \textbf{``Opaque''}. +% +%Examples of suitable formats for Transparent copies include plain +%ASCII without markup, Texinfo input format, LaTeX input format, SGML +%or XML using a publicly available DTD, and standard-conforming simple +%HTML, PostScript or PDF designed for human modification. Examples of +%transparent image formats include PNG, XCF and JPG. Opaque formats +%include proprietary formats that can be read and edited only by +%proprietary word processors, SGML or XML for which the DTD and/or +%processing tools are not generally available, and the +%machine-generated HTML, PostScript or PDF produced by some word +%processors for output purposes only. +% +%The \textbf{``Title Page''} means, for a printed book, the title page itself, +%plus such following pages as are needed to hold, legibly, the material +%this License requires to appear in the title page. For works in +%formats which do not have any title page as such, ``Title Page'' means +%the text near the most prominent appearance of the work's title, +%preceding the beginning of the body of the text. +% +%A section \textbf{``Entitled XYZ''} means a named subunit of the Document whose +%title either is precisely XYZ or contains XYZ in parentheses following +%text that translates XYZ in another language. (Here XYZ stands for a +%specific section name mentioned below, such as \textbf{``Acknowledgements''}, +%\textbf{``Dedications''}, \textbf{``Endorsements''}, or \textbf{``History''}.) +%To \textbf{``Preserve the Title''} +%of such a section when you modify the Document means that it remains a +%section ``Entitled XYZ'' according to this definition. +% +%The Document may include Warranty Disclaimers next to the notice which +%states that this License applies to the Document. These Warranty +%Disclaimers are considered to be included by reference in this +%License, but only as regards disclaiming warranties: any other +%implication that these Warranty Disclaimers may have is void and has +%no effect on the meaning of this License. +% +%\begin{center} +%{\Large\bf 2. VERBATIM COPYING} +%\end{center} +% +%You may copy and distribute the Document in any medium, either +%commercially or noncommercially, provided that this License, the +%copyright notices, and the license notice saying this License applies +%to the Document are reproduced in all copies, and that you add no other +%conditions whatsoever to those of this License. You may not use +%technical measures to obstruct or control the reading or further +%copying of the copies you make or distribute. However, you may accept +%compensation in exchange for copies. If you distribute a large enough +%number of copies you must also follow the conditions in section 3. +% +%You may also lend copies, under the same conditions stated above, and +%you may publicly display copies. +% +%\begin{center} +%{\Large\bf 3. COPYING IN QUANTITY} +%\end{center} +% +%If you publish printed copies (or copies in media that commonly have +%printed covers) of the Document, numbering more than 100, and the +%Document's license notice requires Cover Texts, you must enclose the +%copies in covers that carry, clearly and legibly, all these Cover +%Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on +%the back cover. Both covers must also clearly and legibly identify +%you as the publisher of these copies. The front cover must present +%the full title with all words of the title equally prominent and +%visible. You may add other material on the covers in addition. +%Copying with changes limited to the covers, as long as they preserve +%the title of the Document and satisfy these conditions, can be treated +%as verbatim copying in other respects. +% +%If the required texts for either cover are too voluminous to fit +%legibly, you should put the first ones listed (as many as fit +%reasonably) on the actual cover, and continue the rest onto adjacent +%pages. +% +%If you publish or distribute Opaque copies of the Document numbering +%more than 100, you must either include a machine-readable Transparent +%copy along with each Opaque copy, or state in or with each Opaque copy +%a computer-network location from which the general network-using +%public has access to download using public-standard network protocols +%a complete Transparent copy of the Document, free of added material. +%If you use the latter option, you must take reasonably prudent steps, +%when you begin distribution of Opaque copies in quantity, to ensure +%that this Transparent copy will remain thus accessible at the stated +%location until at least one year after the last time you distribute an +%Opaque copy (directly or through your agents or retailers) of that +%edition to the public. +% +%It is requested, but not required, that you contact the authors of the +%Document well before redistributing any large number of copies, to give +%them a chance to provide you with an updated version of the Document. +% +%\begin{center} +%{\Large\bf 4. MODIFICATIONS} +%\end{center} +% +%You may copy and distribute a Modified Version of the Document under +%the conditions of sections 2 and 3 above, provided that you release +%the Modified Version under precisely this License, with the Modified +%Version filling the role of the Document, thus licensing distribution +%and modification of the Modified Version to whoever possesses a copy +%of it. In addition, you must do these things in the Modified Version: +% +%\begin{itemize} +%\item[A.] +% Use in the Title Page (and on the covers, if any) a title distinct +% from that of the Document, and from those of previous versions +% (which should, if there were any, be listed in the History section +% of the Document). You may use the same title as a previous version +% if the original publisher of that version gives permission. +% +%\item[B.] +% List on the Title Page, as authors, one or more persons or entities +% responsible for authorship of the modifications in the Modified +% Version, together with at least five of the principal authors of the +% Document (all of its principal authors, if it has fewer than five), +% unless they release you from this requirement. +% +%\item[C.] +% State on the Title page the name of the publisher of the +% Modified Version, as the publisher. +% +%\item[D.] +% Preserve all the copyright notices of the Document. +% +%\item[E.] +% Add an appropriate copyright notice for your modifications +% adjacent to the other copyright notices. +% +%\item[F.] +% Include, immediately after the copyright notices, a license notice +% giving the public permission to use the Modified Version under the +% terms of this License, in the form shown in the Addendum below. +% +%\item[G.] +% Preserve in that license notice the full lists of Invariant Sections +% and required Cover Texts given in the Document's license notice. +% +%\item[H.] +% Include an unaltered copy of this License. +% +%\item[I.] +% Preserve the section Entitled ``History'', Preserve its Title, and add +% to it an item stating at least the title, year, new authors, and +% publisher of the Modified Version as given on the Title Page. If +% there is no section Entitled ``History'' in the Document, create one +% stating the title, year, authors, and publisher of the Document as +% given on its Title Page, then add an item describing the Modified +% Version as stated in the previous sentence. +% +%\item[J.] +% Preserve the network location, if any, given in the Document for +% public access to a Transparent copy of the Document, and likewise +% the network locations given in the Document for previous versions +% it was based on. These may be placed in the ``History'' section. +% You may omit a network location for a work that was published at +% least four years before the Document itself, or if the original +% publisher of the version it refers to gives permission. +% +%\item[K.] +% For any section Entitled ``Acknowledgements'' or ``Dedications'', +% Preserve the Title of the section, and preserve in the section all +% the substance and tone of each of the contributor acknowledgements +% and/or dedications given therein. +% +%\item[L.] +% Preserve all the Invariant Sections of the Document, +% unaltered in their text and in their titles. Section numbers +% or the equivalent are not considered part of the section titles. +% +%\item[M.] +% Delete any section Entitled ``Endorsements''. Such a section +% may not be included in the Modified Version. +% +%\item[N.] +% Do not retitle any existing section to be Entitled ``Endorsements'' +% or to conflict in title with any Invariant Section. +% +%\item[O.] +% Preserve any Warranty Disclaimers. +%\end{itemize} +% +%If the Modified Version includes new front-matter sections or +%appendices that qualify as Secondary Sections and contain no material +%copied from the Document, you may at your option designate some or all +%of these sections as invariant. To do this, add their titles to the +%list of Invariant Sections in the Modified Version's license notice. +%These titles must be distinct from any other section titles. +% +%You may add a section Entitled ``Endorsements'', provided it contains +%nothing but endorsements of your Modified Version by various +%parties--for example, statements of peer review or that the text has +%been approved by an organization as the authoritative definition of a +%standard. +% +%You may add a passage of up to five words as a Front-Cover Text, and a +%passage of up to 25 words as a Back-Cover Text, to the end of the list +%of Cover Texts in the Modified Version. Only one passage of +%Front-Cover Text and one of Back-Cover Text may be added by (or +%through arrangements made by) any one entity. If the Document already +%includes a cover text for the same cover, previously added by you or +%by arrangement made by the same entity you are acting on behalf of, +%you may not add another; but you may replace the old one, on explicit +%permission from the previous publisher that added the old one. +% +%The author(s) and publisher(s) of the Document do not by this License +%give permission to use their names for publicity for or to assert or +%imply endorsement of any Modified Version. +% +%\begin{center} +%{\Large\bf 5. COMBINING DOCUMENTS} +%\end{center} +% +%You may combine the Document with other documents released under this +%License, under the terms defined in section 4 above for modified +%versions, provided that you include in the combination all of the +%Invariant Sections of all of the original documents, unmodified, and +%list them all as Invariant Sections of your combined work in its +%license notice, and that you preserve all their Warranty Disclaimers. +% +%The combined work need only contain one copy of this License, and +%multiple identical Invariant Sections may be replaced with a single +%copy. If there are multiple Invariant Sections with the same name but +%different contents, make the title of each such section unique by +%adding at the end of it, in parentheses, the name of the original +%author or publisher of that section if known, or else a unique number. +%Make the same adjustment to the section titles in the list of +%Invariant Sections in the license notice of the combined work. +% +%In the combination, you must combine any sections Entitled ``History'' +%in the various original documents, forming one section Entitled +%``History''; likewise combine any sections Entitled ``Acknowledgements'', +%and any sections Entitled ``Dedications''. You must delete all sections +%Entitled ``Endorsements''. +% +%\begin{center} +%{\Large\bf 6. COLLECTIONS OF DOCUMENTS} +%\end{center} +% +%You may make a collection consisting of the Document and other documents +%released under this License, and replace the individual copies of this +%License in the various documents with a single copy that is included in +%the collection, provided that you follow the rules of this License for +%verbatim copying of each of the documents in all other respects. +% +%You may extract a single document from such a collection, and distribute +%it individually under this License, provided you insert a copy of this +%License into the extracted document, and follow this License in all +%other respects regarding verbatim copying of that document. +% +%\begin{center} +%{\Large\bf 7. AGGREGATION WITH INDEPENDENT WORKS} +%\end{center} +% +%A compilation of the Document or its derivatives with other separate +%and independent documents or works, in or on a volume of a storage or +%distribution medium, is called an ``aggregate'' if the copyright +%resulting from the compilation is not used to limit the legal rights +%of the compilation's users beyond what the individual works permit. +%When the Document is included in an aggregate, this License does not +%apply to the other works in the aggregate which are not themselves +%derivative works of the Document. +% +%If the Cover Text requirement of section 3 is applicable to these +%copies of the Document, then if the Document is less than one half of +%the entire aggregate, the Document's Cover Texts may be placed on +%covers that bracket the Document within the aggregate, or the +%electronic equivalent of covers if the Document is in electronic form. +%Otherwise they must appear on printed covers that bracket the whole +%aggregate. +% +%\begin{center} +%{\Large\bf 8. TRANSLATION} +%\end{center} +% +%Translation is considered a kind of modification, so you may +%distribute translations of the Document under the terms of section 4. +%Replacing Invariant Sections with translations requires special +%permission from their copyright holders, but you may include +%translations of some or all Invariant Sections in addition to the +%original versions of these Invariant Sections. You may include a +%translation of this License, and all the license notices in the +%Document, and any Warranty Disclaimers, provided that you also include +%the original English version of this License and the original versions +%of those notices and disclaimers. In case of a disagreement between +%the translation and the original version of this License or a notice +%or disclaimer, the original version will prevail. +% +%If a section in the Document is Entitled ``Acknowledgements'', +%``Dedications'', or ``History'', the requirement (section 4) to Preserve +%its Title (section 1) will typically require changing the actual +%title. +% +%\begin{center} +%{\Large\bf 9. TERMINATION} +%\end{center} +% +%You may not copy, modify, sublicense, or distribute the Document except +%as expressly provided for under this License. Any other attempt to +%copy, modify, sublicense or distribute the Document is void, and will +%automatically terminate your rights under this License. However, +%parties who have received copies, or rights, from you under this +%License will not have their licenses terminated so long as such +%parties remain in full compliance. +% +%\begin{center} +%{\Large\bf 10. FUTURE REVISIONS OF THIS LICENSE} +%\end{center} +% +%The Free Software Foundation may publish new, revised versions +%of the GNU Free Documentation License from time to time. Such new +%versions will be similar in spirit to the present version, but may +%differ in detail to address new problems or concerns. See +%http://www.gnu.org/copyleft/. +% +%Each version of the License is given a distinguishing version number. +%If the Document specifies that a particular numbered version of this +%License ``or any later version'' applies to it, you have the option of +%following the terms and conditions either of that specified version or +%of any later version that has been published (not as a draft) by the +%Free Software Foundation. If the Document does not specify a version +%number of this License, you may choose any version ever published (not +%as a draft) by the Free Software Foundation. +% +%\begin{center} +%{\Large\bf ADDENDUM: How to use this License for your documents} +%\end{center} +% +%To use this License in a document you have written, include a copy of +%the License in the document and put the following copyright and +%license notices just after the title page: +% +%\bigskip +%\begin{quote} +% Copyright \copyright YEAR YOUR NAME. +% Permission is granted to copy, distribute and/or modify this document +% under the terms of the GNU Free Documentation License, Version 1.2 +% or any later version published by the Free Software Foundation; +% with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. +% A copy of the license is included in the section entitled ``GNU +% Free Documentation License''. +%\end{quote} +%\bigskip +% +%If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, +%replace the ``with\dots Texts.'' line with this: +% +%\bigskip +%\begin{quote} +% with the Invariant Sections being LIST THEIR TITLES, with the +% Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. +%\end{quote} +%\bigskip +% +%If you have Invariant Sections without Cover Texts, or some other +%combination of the three, merge those two alternatives to suit the +%situation. +% +%If your document contains nontrivial examples of program code, we +%recommend releasing these examples in parallel under your choice of +%free software license, such as the GNU General Public License, +%to permit their use in free software. +% +% \StopEventually{ +% \begin{thebibliography}{10} +% \bibitem{knuth} Donald Knuth. +% \newblock \emph{The \TeX book}, +% \newblock Addison--Wesley, Reading, MA, 1996. +% \bibitem{mem} Peter Wilson +% \newblock \emph{The Memoir Class}, +% \newblock The Herries Press, Normandy Park, WA, 2001 +% \newblock (Available from CTAN, \texttt{macros/latex/contrib/supported/memoir}) +% \bibitem{ver} Peter Wilson +% \newblock \emph{Typesetting simple verse with \LaTeX}, +% \newblock (Available from CTAN, \texttt{macros/latex/contrib/supported/verse}) +% \end{thebibliography} +% \PrintChanges +% \PrintIndex +% } +%\iffalse +%<*schiller> +%\fi +% \begin{macrocode} +%% This file shows some basic features of package `dramatist', when +%% typesetting a drama in prose. See the commented line for more +%% informations. +%% +%% The source for this example is taken from Schiller's `The +%% Robbers'. + +\documentclass{book} +\usepackage{dramatist} + +\pagestyle{plain} +%% Maybe you want acts and scenes print their marks in the headings. +%% The following lines should work. +%%\makeatletter +%%\def\ps@myheadings{%% +%% \renewcommand\drampermark[1]{\markboth{##1}{}} +%% \renewcommand\actmark[1]{\markboth{##1}{}} +%% \renewcommand\scenemark[1]{\markright{##1}} +%% \def\@oddfoot{\hfil\thepage\hfil} +%% \def\@evenfoot{\hfil\thepage\hfil} +%% \def\@evenhead{\hfil\scshape\leftmark\hfil}%% +%% \def\@oddhead{\hfil\scshape\rightmark\hfil}%% +%%} +%%\makeatother +%%\pagestyle{myheadings} + +%% We may change some parameters in the look of acts and scenes: +%%\renewcommand{\actnamefont}{\bfseries\Large} +%%\renewcommand{\theact}{\Roman{act}} +%%\renewcommand{\scenenamefont}{\bfseries\large} +%%\renewcommand{\thescene}{\Roman{scene}} + +%% We may change some parameters in the look of characters: +%%\renewcommand{\castfont}{\bfseries} +%%\renewcommand{\speaksfont}{\itshape} +%%\renewcommand{\speaksdel}{.\\} +%%\renewcommand{\namefont}{\bfseries} + +%% We may change some parameters in the look of stage directions: +%%\StageDirConf{\begin{center}\begin{minipage}{.7\textwidth}\bfseries\centering}{\end{minipage}\end{center}} +%%\renewcommand{\dirdelimiter}[1]{[#1]} + +%% If you want the name of character printed centered above the +%% dialogue, you should comment out the following lines. +%%\Dlabelsep=0pt +%%\renewcommand{\speakslabel}[1]{%% +%% \hbox to\textwidth{\hfill\speaksfont{#1}\hfill}} + +\author{Friederich Schiller} +\title{The Robbers} +\date{} + +\begin{document} +\begin{titlepage} +\maketitle +\end{titlepage} + +\tableofcontents + +%% We define some characters appearing in the play. +\Character[MAXIMILIAN, COUNT VON MOOR.]{Old Moor}{moor} +%% group of characters. +\begin{CharacterGroup}{his Sons.} +\GCharacter{CHARLES,}{Charles Von Moor}{cha} +\GCharacter{FRANCIS,}{Francis}{fran} +\end{CharacterGroup} +\Character[AMELIA VON EDELREICH, his Niece.]{Amelia}{amelia} +%% group of characters. +\begin{CharacterGroup}{Libertines, afterwards Banditti} +\GCharacter{SPIEGELBERG,}{Spiegelberg}{spie} +\GCharacter{SCHWEITZER,}{Schweitzer}{schwei} +\GCharacter{GRIMM,}{Grimm}{grim} +\GCharacter{RAZMANN,}{Razmann}{raz} +\GCharacter{SCHUFTERLE,}{Schufterle}{schuf} +\GCharacter{ROLLER,}{Roller}{rol} +\GCharacter{KOSINSKY,}{Kosinsky}{kos} +\GCharacter{SCHWARTZ,}{Schwartz}{schwa} +\end{CharacterGroup} +\Character[HERMANN, the natural son of a Nobleman.]{Hermann}{her} +\Character[DANIEL, an old Servant of Count von Moor.]{Daniel}{dan} +\Character[PASTOR MOSER.]{Pastor Moser}{pm} +\Character[FATHER DOMINIC, a Monk.]{Father Dominic}{fd} +%% the following collective character appears in the play as single +%% instances, so we don't need define commands and entries for it. +\Character[BAND OF ROBBERS, SERVANTS, ETC.]{}{} + +%% We call the dramatis personae list. +\DramPer + +\act + +%% Schiller puts some general informations about location in the +%% scene heading. So, we must use uppercase version of `\scene'. On +%% the other hand we don't want this information to appear in +%% headers and table of contents; hence the empty optional argument. +\Scene[]{. -- Franconia} + +\StageDir{Apartment in the Castle of COUNT MOOR.\\\fran, \moor} + +\begin{drama} +\franspeaks But are you really well, father? You look so pale. + +\moorspeaks Quite well, my son -- what have you to tell me? + +\franspeaks The post is arrived -- a letter from our correspondent at +Leipsic. + +\moorspeaks \direct{eagerly} Any tidings of my son Charles? + +\franspeaks Hem! Hem! -- Why, yes. But I fear -- I know not -- whether I dare + -- your health. -- Are you really quite well, father? + +\moorspeaks As a fish in water. Does he write of my son? What means this +anxiety about my health? You have asked me that question twice. + +\franspeaks If you are unwell -- or are the least apprehensive of being so -- +permit me to defer -- I will speak to you at a fitter season. -- \direct{Half +aside.} These are no tidings for a feeble frame. + +\moorspeaks Gracious Heavens? what am I doomed to hear? + +\franspeaks First let me retire and shed a tear of compassion for my lost +brother. Would that my lips might be forever sealed -- for he is your +son! Would that I could throw an eternal veil over his shame -- for he is +my brother! But to obey you is my first, though painful, duty -- forgive +me, therefore. + +\moorspeaks Oh, Charles! Charles! Didst thou but know what thorns thou +plantest in thy father's bosom! That one gladdening report of thee would +add ten years to my life! yes, bring back my youth! whilst now, alas, +each fresh intelligence but hurries me a step nearer to the grave! + +\franspeaks Is it so, old man, then farewell! for even this very day we +might all have to tear our hair over your coffin. + +\moorspeaks Stay! There remains but one short step more -- let him have his +will! \direct{He sits down.} The sins of the father shall be visited unto the +third and fourth generation -- let him fulfil the decree. + +\franspeaks \direct{takes the letter out of his pocket}. You know our +correspondent! See! I would give a finger of my right hand might I +pronounce him a liar -- a base and slanderous liar! Compose yourself! +Forgive me if I do not let you read the letter yourself. You cannot, +must not, yet know all. + +\moorspeaks All, all, my son. You will but spare me crutches. + +\franspeaks \direct{reads} ``Leipsic, May 1. Were I not bound by an inviolable +promise to conceal nothing from you, not even the smallest particular, +that I am able to collect, respecting your brother's career, never, my +dearest friend, should my guiltless pen become an instrument of torture +to you. I can gather from a hundred of your letters how tidings such as +these must pierce your fraternal heart. It seems to me as though I saw +thee, for the sake of this worthless, this detestable'' -- \direct{\moor covers +his face}. Oh! my father, I am only reading you the mildest passages -- +``this detestable man, shedding a thousand tears.'' Alas! mine flowed -- ay, +gushed in torrents over these pitying cheeks. ``I already picture to +myself your aged pious father, pale as death.'' Good Heavens! and so you +are, before you have heard anything. + +\moorspeaks Go on! Go on! +\end{drama} + +\begin{center} +[\dots] +\end{center} + +\Scene[]{. -- A Tavern on the Frontier of Saxony.} + +\StageDir{\cha intent on a book; \spie drinking at the table.} + +\begin{drama} +\chaspeaks \direct{lays the book aside}. I am disgusted with this age of +puny scribblers when I read of great men in my Plutarch. + +\spiespeaks \direct{places a glass before him, and drinks.} Josephus is the book +you should read. + +\chaspeaks The glowing spark of Prometheus is burnt out, and now +they substitute for it the flash of lycopodium, a stage-fire which will +not so much as light a pipe. The present generation may be compared to +rats crawling about the club of Hercules. + +A French abbe lays it down that Alexander was a poltroon; a phthisicky +professor, holding at every word a bottle of sal volatile to his nose, +lectures on strength. Fellows who faint at the veriest trifle criticise +the tactics of Hannibal; whimpering boys store themselves with phrases +out of the slaughter at Canna; and blubber over the victories of Scipio, +because they are obliged to construe them. + +\spiespeaks Spouted in true Alexandrian style. + +\chaspeaks A brilliant reward for your sweat in the battle-field +truly to have your existence perpetuated in gymnasiums, and your +immortality laboriously dragged about in a schoolboy's satchel. A +precious recompense for your lavished blood to be wrapped round +gingerbread by some Nuremberg chandler, or, if you have great luck, to +be screwed upon stilts by a French playwright, and be made to move on +wires! Ha, ha, ha! + +\spiespeaks \direct{drinks.} Read Josephus, I tell you. + +\chaspeaks Fie! fie upon this weak, effeminate age, fit for nothing +but to ponder over the deeds of former times, and torture the heroes of +antiquity with commentaries, or mangle them in tragedies. The vigor of +its loins is dried up, and the propagation of the human species has +become dependent on potations of malt liquor. +\end{drama} + +\begin{center} +[\dots] +\end{center} + +\act + +\Scene[]{. -- {\scshape Francis von Moor} in his chamber -- in meditation.} + +\begin{drama} +\franspeaks It lasts too long -- and the doctor even says is recovering -- an +old man's life is a very eternity! The course would be free and plain +before me, but for this troublesome, tough lump of flesh, which, like +the infernal demon-hound in ghost stories, bars the way to my treasures. + +Must, then, my projects bend to the iron yoke of a mechanical system? +Is my soaring spirit to be chained down to the snail's pace of matter? +To blow out a wick which is already flickering upon its last drop of +oil -- 'tis nothing more. And yet I would rather not do it myself, on +account of what the world would say. I should not wish him to be +killed, but merely disposed of. I should like to do what your clever +physician does, only the reverse way -- not stop Nature's course by +running a bar across her path, but only help her to speed a little +faster. Are we not able to prolong the conditions of life? Why, +then, should we not also be able to shorten them? Philosophers and +physiologists teach us how close is the sympathy between the emotions of +the mind and the movements of the bodily machine. Convulsive sensations +are always accompanied by a disturbance of the mechanical vibrations -- +passions injure the vital powers -- an overburdened spirit bursts its +shell. Well, then -- what if one knew how to smooth this unbeaten path, +for the easier entrance of death into the citadel of life? -- to work the +body's destruction through the mind -- ha! an original device! -- who can +accomplish this? -- a device without a parallel! Think upon it, Moor! +That were an art worthy of thee for its inventor. Has not poisoning +been raised almost to the rank of a regular science, and Nature +compelled, by the force of experiments, to define her limits, so that +one may now calculate the heart's throbbings for years in advance, and +say to the beating pulse, ``So far, and no farther''? Why should not one +try one's skill in this line? + +And how, then, must I, too, go to work to dissever that sweet and +peaceful union of soul and body? What species of sensations should I +seek to produce? Which would most fiercely assail the condition of +life? Anger? -- that ravenous wolf is too quickly satiated. Care? that +worm gnaws far too slowly. Grief? -- that viper creeps too lazily for me. +Fear? -- hope destroys its power. What! and are these the only +executioners of man? is the armory of death so soon exhausted? \direct{In deep +thought.} How now! what! ho! I have it! \direct{Starting up.} Terror! What +is proof against terror? What powers have religion and reason under +that giant's icy grasp! And yet -- if he should withstand even this +assault? If he should! Oh, then, come Anguish to my aid! and thou, +gnawing Repentance! -- furies of hell, burrowing snakes who regorge your +food, and feed upon your own excrements; ye that are forever destroying, +and forever reproducing your poison! And thou, howling Remorse, that +desolatest thine own habitation, and feedest upon thy mother. And come +ye, too, gentle Graces, to my aid; even you, sweet smiling Memory, +goddess of the past -- and thou, with thy overflowing horn of plenty, +blooming Futurity; show him in your mirror the joys of Paradise, while +with fleeting foot you elude his eager grasp. Thus will I work my +battery of death, stroke after stroke, upon his fragile body, until the +troop of furies close upon him with Despair! Triumph! triumph! -- the +plan is complete -- difficult and masterly beyond compare -- sure -- safe; for +then \direct{with a sneer} the dissecting knife can find no trace of wound or +of corrosive poison. + +\direct{Resolutely.} Be it so! \direct{Enter \her.} Ha! \emph{Deus ex machina}! +Hermann! + +\herspeaks At your service, gracious sir! + +\franspeaks \direct{shakes him by the hand.} You will not find it that of an +ungrateful master. + +\herspeaks I have proofs of this. + +\franspeaks And you shall have more soon -- very soon, Hermann! -- I have +something to say to thee, Hermann. + +\herspeaks I am all attention. +\end{drama} + +\begin{center} +[\dots] +\end{center} + +\end{document} +% \end{macrocode} +%\iffalse +% +%\fi +%\iffalse +%<*vmarlowe> +% \begin{macrocode} +%% This file shows some basic features of package `dramatist', when +%% typesetting a drama in verse. Here we use package `verse' as a +%% support for text in verse; if you usually use package `poemscol' +%% instead, you may give a look to file `marlowe-poemscol.tex'. +%% +%% The source for this example is taken from Marlowe's `Jew of +%% Malta'. I took leave to insert division in scenes, which is not +%% present in the original edition, in order to show more features. + +\documentclass{book} +\usepackage{verse} +%% Warning: in this document I have used `\\!' (end of stanzas) to +%% mark the end of a speech, so that a space would be inserted +%% between speeches. This works only with the verse package or the +%% memoir class. Otherwise you must insert such a space by hand or +%% try to redefine \speakstab: e.g. +%% \renewcommand{\speakstab}{\bigskip\hspace{\speaksskip}}. + +%% Load package `dramatist' after `verse' +\usepackage{dramatist} + +%% comment out one of the following lines (and comment out the +%% previous one) if you want line numbering per act or per scene. +%%\usepackage[lnpa]{dramatist} +%%\usepackage[lnps]{dramatist} + +\pagestyle{plain} +%% Maybe you want acts and scenes print their marks in the headings. +%% The following lines should work. +%%\makeatletter +%%\def\ps@myheadings{%% +%% \renewcommand\drampermark[1]{\markboth{##1}{}} +%% \renewcommand\actmark[1]{\markboth{##1}{}} +%% \renewcommand\scenemark[1]{\markright{##1}} +%% \def\@oddfoot{\hfil\thepage\hfil} +%% \def\@evenfoot{\hfil\thepage\hfil} +%% \def\@evenhead{\hfil\scshape\leftmark\hfil}%% +%% \def\@oddhead{\hfil\scshape\rightmark\hfil}%% +%%} +%%\makeatother +%%\pagestyle{myheadings} + +%% We may change some parameters in the look of acts and scenes: +%%\renewcommand{\actnamefont}{\bfseries\Large} +%%\renewcommand{\theact}{\Roman{act}} +%%\renewcommand{\scenenamefont}{\bfseries\large} +%%\renewcommand{\thescene}{\Roman{scene}} + +%% We may change some parameters in the look of characters: +%%\renewcommand{\castfont}{\bfseries} +%%\renewcommand{\speaksfont}{\itshape} +%%\renewcommand{\speaksdel}{:} + +%% We may change some parameters in the look of stage directions: +%%\StageDirConf{\begin{center}\begin{minipage}{.4\textwidth}\bfseries}{\end{minipage}\end{center}} + +%% This is from verse package (or memoir class), for line numbering. +\poemlines{5} + +\author{Christopher Marlowe} +\title{The Jew of Malta} +\date{} + +\begin{document} +\begin{titlepage} +\maketitle +\end{titlepage} + +\tableofcontents + +%% We define some characters appearing in the play. +\Character[FERNEZE, governor of Malta.]{Ferneze}{fer} +\Character[LODOWICK, his son.]{Lodowick}{lod} +\Character[SELIM CALYMATH, son to the Grand Seignior.]{Calymath}{cal} +\Character[MARTIN DEL BOSCO, vice-admiral of Spain.]{Martin Del Bosco}{mar} +\Character[MATHIAS, a gentleman.]{Mathias}{mat} +%% group of characters. +\begin{CharacterGroup}{friars.} +\GCharacter{JACOMO,}{Jacomo}{jac} +\GCharacter{BARNARDINE,}{Barnardine}{barn} +\end{CharacterGroup} +\Character[BARABAS, a wealthy Jew.]{Barabas}{bar} +\Character[ITHAMORE, a slave.]{Ithamore}{ith} +\Character[PILIA-BORZA, a bully, attendant to BELLAMIRA.]{Pilia-Borza}{pb} +%% the following three collective characters appear in the play as +%% single instances, so we don't need define commands and entries +%% for them. +\Character[Two Merchants.]{}{} +\Character[Three Jews.]{}{} +\Character[Knights, Bassoes, Officers, Guard, Slaves, Messenger, and Carpenters]{}{} +\Character[KATHARINE, mother to MATHIAS.]{Katharine}{kat} +\Character[ABIGAIL, daughter to BARABAS.]{Abigail}{abi} +\Character[BELLAMIRA, a courtezan.]{Bellamira}{bel} +\Character[ABBESS.]{Abbess}{abb} +\Character[NUN.]{Nun}{nun} +%% This character doesn't appear in the dramatist personae list. +\Character{Machiavel}{mac} + +%% We call the dramatis personae list. +\DramPer + +%% The Prologue: we use \Act, but prevent it from printing \actname +%% and \theact. +\setcounter{secnumdepth}{-1} +\renewcommand{\printacttitle}[1]{\centering\acttitlefont #1} +%% This is needed only with myheadings. +%%\renewcommand{\actname}{} +%%\renewcommand{\theact}{} + +\Act{Prologue} + +\StageDir{Enter \mac.} + +\begin{drama*} +\macspeaks +Albeit the world think Machiavel is dead,\\ +Yet was his soul but flown beyond the Alps;\\ +And, now the Guise is dead, is come from France,\\ +To view this land, and frolic with his friends.\\ +To some perhaps my name is odious;\\ +But such as love me, guard me from their tongues,\\ +And let them know that I am Machiavel,\\ +And weigh not men, and therefore not men's words.\\ +Admir'd I am of those that hate me most:\\ +Though some speak openly against my books,\\ +Yet will they read me, and thereby attain\\ +To Peter's chair; and, when they cast me off,\\ +Are poison'd by my climbing followers.\\ +I count religion but a childish toy,\\ +And hold there is no sin but ignorance.\\ +Birds of the air will tell of murders past!\\ +I am asham'd to hear such fooleries.\\ +Many will talk of title to a crown:\\ +What right had Caesar to the empery?\\ +Might first made kings, and laws were then most sure\\ +When, like the Draco's, they were writ in blood.\\ +Hence comes it that a strong-built citadel\\ +Commands much more than letters can import:\\ +Which maxim had Phalaris observ'd,\\ +H'ad never bellow'd, in a brazen bull,\\ +Of great ones' envy: o' the poor petty wights\\ +Let me be envied and not pitied.\\ +But whither am I bound? I come not, I,\\ +To read a lecture here in Britain,\\ +But to present the tragedy of a Jew,\\ +Who smiles to see how full his bags are cramm'd;\\ +Which money was not got without my means.\\ +I crave but this,--grace him as he deserves,\\ +And let him not be entertain'd the worse\\ +Because he favours me.\\ +\direct*{Exit.} +%% The starred version of \direct can be used only at the end of a +%% speech, when the verse package or the memoir class has been +%% loaded. +\end{drama*} + +%% Now we restore the default settings. +\setcounter{act}{0} +\setcounter{secnumdepth}{0} +\renewcommand{\printacttitle}[1]{\acttitlefont #1} +%% This is needed only with myheadings. +%%\renewcommand{\actname}{Act} +%%\renewcommand{\theact}{\roman{act}} +%%\renewcommand{\theact}{\Roman{act}} + +%% Without a title, the command to be used is \act. We add a +%% footnote, just to show a feature. +\act[\footnote{This is the first act.}] + +\scene +%% Scene are not marked in the original edition. I have introduced +%% them (somehow arbitrarily, I suppose) to give a complete review +%% of the available features. + +\StageDir{\bar discovered in his counting-house, with heaps +of gold before him.} + +\begin{drama*} +\barspeaks So that of thus much that return was made;\\ +And of the third part of the Persian ships\\ +There was the venture summ'd and satisfied.\\ +As for those Samnites, and the men of Uz,\\ +That bought my Spanish oils and wines of Greece,\\ +Here have I purs'd their paltry silverlings.\\ +Fie, what a trouble 'tis to count this trash!\\ +Well fare the Arabians, who so richly pay\\ +The things they traffic for with wedge of gold,\\ +Whereof a man may easily in a day\\ +Tell that which may maintain him all his life.\\ +The needy groom, that never finger'd groat,\\ +Would make a miracle of thus much coin;\\ +But he whose steel-barr'd coffers are cramm'd full,\\ +And all his life-time hath been tired,\\ +Wearying his fingers' ends with telling it,\\ +Would in his age be loath to labour so,\\ +And for a pound to sweat himself to death.\\ +Give me the merchants of the Indian mines,\\ +That trade in metal of the purest mould;\\ +The wealthy Moor, that in the eastern rocks\\ +Without control can pick his riches up,\\ +And in his house heap pearl like pebble-stones,\\ +Receive them free, and sell them by the weight;\\ +Bags of fiery opals, sapphires, amethysts,\\ +Jacinths, hard topaz, grass-green emeralds,\\ +Beauteous rubies, sparkling diamonds,\\ +And seld-seen costly stones of so great price,\\ +As one of them, indifferently rated,\\ +And of a carat of this quantity,\\ +May serve, in peril of calamity,\\ +To ransom great kings from captivity.\\ +This is the ware wherein consists my wealth;\\ +And thus methinks should men of judgment frame\\ +Their means of traffic from the vulgar trade,\\ +And, as their wealth increaseth, so inclose\\ +Infinite riches in a little room.\\ +But now how stands the wind?\\ +Into what corner peers my halcyon's bill?\\ +Ha! to the east? yes. See how stand the vanes--\\ +East and by south: why, then, I hope my ships\\ +I sent for Egypt and the bordering isles\\ +Are gotten up by Nilus' winding banks;\\ +Mine argosy from Alexandria,\\ +Loaden with spice and silks, now under sail,\\ +Are smoothly gliding down by Candy-shore\\ +To Malta, through our Mediterranean sea.--\\ +But who comes here?\\ +%% We need another character +\Character{Merchant}{mer} +\direct{Enter a \mer.} +How now!\\! + +\merspeaks Barabas, thy ships are safe,\\ +Riding in Malta-road; and all the merchants\\ +With other merchandise are safe arriv'd,\\ +And have sent me to know whether yourself\\ +Will come and custom them.\\! + +\barspeaks The ships are safe thou say'st, and richly fraught?\\! + +\merspeaks They are.\\! + +\barspeaks Why, then, go bid them come ashore,\\ +And bring with them their bills of entry:\\ +I hope our credit in the custom-house\\ +Will serve as well as I were present there.\\ +Go send 'em threescore camels, thirty mules,\\ +And twenty waggons, to bring up the ware.\\ +But art thou master in a ship of mine,\\ +And is thy credit not enough for that?\\! +\end{drama*} + +\begin{center} +[\dots] +\end{center} + +\scene +%%Other characters. + +\Character{knights}{knights} +\Character{officers}{officers} +\Character{bassoes}{bassoes} +\Character{First Basso}{fb} + +%% An alternative formulation for \StageDir. +\begin{stagedir} +Enter \fer, governor of Malta, \knights, and \officers; +met by \cal, and \bassoes of the Turk. +\end{stagedir} + +\begin{drama*} +\ferspeaks Now, bassoes, what demand you at our hands?\\! + +\fbspeaks Know, knights of Malta, that we came from Rhodes,\\ +From Cyprus, Candy, and those other isles\\ +That lie betwixt the Mediterranean seas.\\! + +\ferspeaks What's Cyprus, Candy, and those other isles\\ +To us or Malta? what at our hands demand ye?\\! + +\calspeaks The ten years' tribute that remains unpaid.\\! + +\ferspeaks Alas, my lord, the sum is over-great!\\ +I hope your highness will consider us.\\! + +\calspeaks I wish, grave governor, 'twere in my power\\ +To favour you; but 'tis my father's cause,\\ +Wherein I may not, nay, I dare not dally.\\! +\end{drama*} + +\begin{center} +[\dots] +\end{center} + +\act + +\scene + +\StageDir{Enter \bar with a light.} + +\begin{drama*} +\barspeaks Thus, like the sad-presaging raven, that tolls\\ +The sick man's passport in her hollow beak,\\ +And in the shadow of the silent night\\ +Doth shake contagion from her sable wings,\\ +Vex'd and tormented runs poor Barabas\\ +With fatal curses towards these Christians.\\ +The incertain pleasures of swift-footed time\\ +Have ta'en their flight, and left me in despair;\\ +And of my former riches rests no more\\ +But bare remembrance; like a soldier's scar,\\ +That has no further comfort for his maim.--\\ +O Thou, that with a fiery pillar ledd'st\\ +The sons of Israel through the dismal shades,\\ +Light Abraham's offspring; and direct the hand\\ +Of Abigail this night! or let the day\\ +Turn to eternal darkness after this!--\\ +No sleep can fasten on my watchful eyes,\\ +Nor quiet enter my distemper'd thoughts,\\ +Till I have answer of my Abigail.\\! +\end{drama*} + +\StageDir{Enter \abi above.} + +\begin{drama*} +\abispeaks Now have I happily espied a time\\ +To search the plank my father did appoint;\\ +And here, behold, unseen, where I have found\\ +The gold, the pearls, and jewels, which he hid.\\! + +\barspeaks Now I remember those old women's words,\\ +Who in my wealth would tell me winter's tales,\\ +And speak of spirits and ghosts that glide by night\\ +About the place where treasure hath been hid:\\ +And now methinks that I am one of those;\\ +For, whilst I live, here lives my soul's sole hope,\\ +And, when I die, here shall my spirit walk.\\! +\end{drama*} + +\begin{center} +[\dots] +\end{center} + +\end{document} +% \end{macrocode} +%\fi +%\iffalse +% +%\fi +%\iffalse +%<*pmarlowe> +%\fi +% \begin{macrocode} +%% This file shows some basic features of package `dramatist', when +%% typesetting a drama in verse. Here we use package `poemscol' as a +%% support for text in verse; if you usually use package `verse' +%% instead, you may give a look to file `marlowe-verse.tex'. +%% +%% The source for this example is taken from Marlowe's `Jew of +%% Malta'. I took leave to insert division in scenes, which is not +%% present in the original edition, in order to show more features. + +\documentclass{book} +\usepackage{fancyhdr,newmarn,geometry} +\usepackage{keyval,ifthen,newcropmark} +\usepackage{poemscol} + +%% Load package `dramatist' after `poemscol' +\usepackage{dramatist} + +%% comment out one of the following lines (and comment out the +%% previous one) if you want line numbering per act or per scene. +%%\usepackage[lnpa]{dramatist} +%%\usepackage[lnps]{dramatist} + + +%% We may change some parameters in the look of acts and scenes: +%%\renewcommand{\actnamefont}{\bfseries\Large} +%%\renewcommand{\theact}{\Roman{act}} +%%\renewcommand{\scenenamefont}{\bfseries\large} +%%\renewcommand{\thescene}{\Roman{scene}} + +%% We may change some parameters in the look of characters: +%%\renewcommand{\castfont}{\bfseries} +%%\renewcommand{\speaksfont}{\itshape} +%%\renewcommand{\speaksdel}{:} + +%% We may change some parameters in the look of stage directions: +%%\StageDirConf{\begin{center}\begin{minipage}{.4\textwidth}\bfseries}{\end{minipage}\end{center}} + +%% Comment out the following lines if you want to insert a vertical +%% space between speeches. +%%\makeatletter +%%\renewcommand{\speakstab}{\if@stagedir\global\@stagedirfalse\else\bigskip\fi\hspace{\speaksskip}} +%%\makeatother + +%% Maybe you want acts and scenes print their marks in the headings. +%% The following lines should work. +%%\renewcommand{\drampermark}[1]{\volumeheader{#1}} +%%\renewcommand{\actmark}[1]{\leftheader{#1}} +%%\renewcommand{\scenemark}[1]{\volumeheader{#1}} +%%\fancyhf{} +%%\fancyhead[CO]{\scshape \volumeheadervalue} +%%\fancyhead[CE]{\scshape \leftheadervalue} +%%\fancyfoot[CE]{\thepage} +%%\fancyfoot[CO]{\thepage} + +\author{Christopher Marlowe} +\title{The Jew of Malta} +\date{} + +\begin{document} +\begin{titlepage} +\maketitle +\end{titlepage} + +\tableofcontents + +%% We define some characters appearing in the play. +\Character[FERNEZE, governor of Malta.]{Ferneze}{fer} +\Character[LODOWICK, his son.]{Lodowick}{lod} +\Character[SELIM CALYMATH, son to the Grand Seignior.]{Calymath}{cal} +\Character[MARTIN DEL BOSCO, vice-admiral of Spain.]{Martin Del Bosco}{mar} +\Character[MATHIAS, a gentleman.]{Mathias}{mat} +%% group of characters. +\begin{CharacterGroup}{friars.} +\GCharacter{JACOMO,}{Jacomo}{jac} +\GCharacter{BARNARDINE,}{Barnardine}{barn} +\end{CharacterGroup} +\Character[BARABAS, a wealthy Jew.]{Barabas}{bar} +\Character[ITHAMORE, a slave.]{Ithamore}{ith} +\Character[PILIA-BORZA, a bully, attendant to BELLAMIRA.]{Pilia-Borza}{pb} +%% the following three collective characters appear in the play as +%% single instances, so we don't need define commands and entries +%% for them. +\Character[Two Merchants.]{}{} +\Character[Three Jews.]{}{} +\Character[Knights, Bassoes, Officers, Guard, Slaves, Messenger, and Carpenters]{}{} +\Character[KATHARINE, mother to MATHIAS.]{Katharine}{kat} +\Character[ABIGAIL, daughter to BARABAS.]{Abigail}{abi} +\Character[BELLAMIRA, a courtezan.]{Bellamira}{bel} +\Character[ABBESS.]{Abbess}{abb} +\Character[NUN.]{Nun}{nun} +%% This character doesn't appear in the dramatist personae list. +\Character{Machiavel}{mac} + +%% We call the dramatis personae list. +\DramPer + +%% The Prologue: we use \Act, but prevent it from printing \actname +%% and \theact. +\setcounter{secnumdepth}{-1} +\renewcommand{\printacttitle}[1]{\centering\acttitlefont #1} +%% This is needed only with customized headings. +%%\renewcommand{\actname}{} +%%\renewcommand{\theact}{} +\Act{Prologue} + +\StageDir{Enter \mac.} + +\begin{drama*} +\macspeaks +Albeit the world think Machiavel is dead,\verseline +Yet was his soul but flown beyond the Alps;\verseline +And, now the Guise is dead, is come from France,\verseline +To view this land, and frolic with his friends.\verseline +To some perhaps my name is odious;\verseline +But such as love me, guard me from their tongues,\verseline +And let them know that I am Machiavel,\verseline +And weigh not men, and therefore not men's words.\verseline +Admir'd I am of those that hate me most:\verseline +Though some speak openly against my books,\verseline +Yet will they read me, and thereby attain\verseline +To Peter's chair; and, when they cast me off,\verseline +Are poison'd by my climbing followers.\verseline +I count religion but a childish toy,\verseline +And hold there is no sin but ignorance.\verseline +Birds of the air will tell of murders past!\verseline +I am asham'd to hear such fooleries.\verseline +Many will talk of title to a crown:\verseline +What right had Caesar to the empery?\verseline +Might first made kings, and laws were then most sure\verseline +When, like the Draco's, they were writ in blood.\verseline +Hence comes it that a strong-built citadel\verseline +Commands much more than letters can import:\verseline +Which maxim had Phalaris observ'd,\verseline +H'ad never bellow'd, in a brazen bull,\verseline +Of great ones' envy: o' the poor petty wights\verseline +Let me be envied and not pitied.\verseline +But whither am I bound? I come not, I,\verseline +To read a lecture here in Britain,\verseline +But to present the tragedy of a Jew,\verseline +Who smiles to see how full his bags are cramm'd;\verseline +Which money was not got without my means.\verseline +I crave but this,--grace him as he deserves,\verseline +And let him not be entertain'd the worse\verseline +Because he favours me.\verseline +\direct{Exit.} +\end{drama*} + +%% Now we restore the default settings. +\setcounter{act}{0} +\setcounter{secnumdepth}{0} +\renewcommand{\printacttitle}[1]{\acttitlefont #1} +%% This is needed only with customized headings. +%%\renewcommand{\actname}{Act} +%%\renewcommand{\theact}{\roman{act}} +%%\renewcommand{\theact}{\Roman{act}} + +%% Without a title, the command to be used is \act. We add a +%% footnote, just to show a feature. +\act[\footnote{This is the first act.}] + +\scene +%% Scene are not marked in the original edition. I have introduced +%% them (somehow arbitrarily, I suppose) to give a complete review +%% of the available features. + +\StageDir{\bar discovered in his counting-house, with heaps +of gold before him.} + +\begin{drama*} +\barspeaks So that of thus much that return was made;\verseline +And of the third part of the Persian ships\verseline +There was the venture summ'd and satisfied.\verseline +As for those Samnites, and the men of Uz,\verseline +That bought my Spanish oils and wines of Greece,\verseline +Here have I purs'd their paltry silverlings.\verseline +Fie, what a trouble 'tis to count this trash!\verseline +Well fare the Arabians, who so richly pay\verseline +The things they traffic for with wedge of gold,\verseline +Whereof a man may easily in a day\verseline +Tell that which may maintain him all his life.\verseline +The needy groom, that never finger'd groat,\verseline +Would make a miracle of thus much coin;\verseline +But he whose steel-barr'd coffers are cramm'd full,\verseline +And all his life-time hath been tired,\verseline +Wearying his fingers' ends with telling it,\verseline +Would in his age be loath to labour so,\verseline +And for a pound to sweat himself to death.\verseline +Give me the merchants of the Indian mines,\verseline +That trade in metal of the purest mould;\verseline +The wealthy Moor, that in the eastern rocks\verseline +Without control can pick his riches up,\verseline +And in his house heap pearl like pebble-stones,\verseline +Receive them free, and sell them by the weight;\verseline +Bags of fiery opals, sapphires, amethysts,\verseline +Jacinths, hard topaz, grass-green emeralds,\verseline +Beauteous rubies, sparkling diamonds,\verseline +And seld-seen costly stones of so great price,\verseline +As one of them, indifferently rated,\verseline +And of a carat of this quantity,\verseline +May serve, in peril of calamity,\verseline +To ransom great kings from captivity.\verseline +This is the ware wherein consists my wealth;\verseline +And thus methinks should men of judgment frame\verseline +Their means of traffic from the vulgar trade,\verseline +And, as their wealth increaseth, so inclose\verseline +Infinite riches in a little room.\verseline +But now how stands the wind?\verseline +Into what corner peers my halcyon's bill?\verseline +Ha! to the east? yes. See how stand the vanes--\verseline +East and by south: why, then, I hope my ships\verseline +I sent for Egypt and the bordering isles\verseline +Are gotten up by Nilus' winding banks;\verseline +Mine argosy from Alexandria,\verseline +Loaden with spice and silks, now under sail,\verseline +Are smoothly gliding down by Candy-shore\verseline +To Malta, through our Mediterranean sea.--\verseline +But who comes here?\verseline +%% We need another character +\Character{Merchant}{mer} +\direct{Enter a \mer.} +How now!\verseline + +\merspeaks Barabas, thy ships are safe,\verseline +Riding in Malta-road; and all the merchants\verseline +With other merchandise are safe arriv'd,\verseline +And have sent me to know whether yourself\verseline +Will come and custom them.\verseline + +\barspeaks The ships are safe thou say'st, and richly fraught?\verseline + +\merspeaks They are.\verseline + +\barspeaks Why, then, go bid them come ashore,\verseline +And bring with them their bills of entry:\verseline +I hope our credit in the custom-house\verseline +Will serve as well as I were present there.\verseline +Go send 'em threescore camels, thirty mules,\verseline +And twenty waggons, to bring up the ware.\verseline +But art thou master in a ship of mine,\verseline +And is thy credit not enough for that?\verseline +\end{drama*} + +\begin{center} +[\dots] +\end{center} + +\scene +%%Other characters. + +\Character{knights}{knights} +\Character{officers}{officers} +\Character{bassoes}{bassoes} +\Character{First Basso}{fb} + +%% An alternative formulation for \StageDir. +\begin{stagedir} +Enter \fer, governor of Malta, \knights, and \officers; +met by \cal, and \bassoes of the Turk. +\end{stagedir} + +\begin{drama*} +\ferspeaks Now, bassoes, what demand you at our hands?\verseline + +\fbspeaks Know, knights of Malta, that we came from Rhodes,\verseline +From Cyprus, Candy, and those other isles\verseline +That lie betwixt the Mediterranean seas.\verseline + +\ferspeaks What's Cyprus, Candy, and those other isles\verseline +To us or Malta? what at our hands demand ye?\verseline + +\calspeaks The ten years' tribute that remains unpaid.\verseline + +\ferspeaks Alas, my lord, the sum is over-great!\verseline +I hope your highness will consider us.\verseline + +\calspeaks I wish, grave governor, 'twere in my power\verseline +To favour you; but 'tis my father's cause,\verseline +Wherein I may not, nay, I dare not dally.\verseline +\end{drama*} + +\begin{center} +[\dots] +\end{center} + +\act + +\scene + +\StageDir{Enter \bar with a light.} + +\begin{drama*} +\barspeaks Thus, like the sad-presaging raven, that tolls\verseline +The sick man's passport in her hollow beak,\verseline +And in the shadow of the silent night\verseline +Doth shake contagion from her sable wings,\verseline +Vex'd and tormented runs poor Barabas\verseline +With fatal curses towards these Christians.\verseline +The incertain pleasures of swift-footed time\verseline +Have ta'en their flight, and left me in despair;\verseline +And of my former riches rests no more\verseline +But bare remembrance; like a soldier's scar,\verseline +That has no further comfort for his maim.--\verseline +O Thou, that with a fiery pillar ledd'st\verseline +The sons of Israel through the dismal shades,\verseline +Light Abraham's offspring; and direct the hand\verseline +Of Abigail this night! or let the day\verseline +Turn to eternal darkness after this!--\verseline +No sleep can fasten on my watchful eyes,\verseline +Nor quiet enter my distemper'd thoughts,\verseline +Till I have answer of my Abigail.\verseline +\end{drama*} + +\StageDir{Enter \abi above.} + +\begin{drama*} +\abispeaks Now have I happily espied a time\verseline +To search the plank my father did appoint;\verseline +And here, behold, unseen, where I have found\verseline +The gold, the pearls, and jewels, which he hid.\verseline + +\barspeaks Now I remember those old women's words,\verseline +Who in my wealth would tell me winter's tales,\verseline +And speak of spirits and ghosts that glide by night\verseline +About the place where treasure hath been hid:\verseline +And now methinks that I am one of those;\verseline +For, whilst I live, here lives my soul's sole hope,\verseline +And, when I die, here shall my spirit walk.\verseline +\end{drama*} + +\begin{center} +[\dots] +\end{center} + +\end{document} +% \end{macrocode} +%\iffalse +% +%\fi +%\Finale +% \PrintIndex \PrintChanges + +\endinput diff --git a/macros/latex/contrib/dramatist/dramatist.ins b/macros/latex/contrib/dramatist/dramatist.ins new file mode 100644 index 0000000000..a273f0fc57 --- /dev/null +++ b/macros/latex/contrib/dramatist/dramatist.ins @@ -0,0 +1,17 @@ +\input docstrip.tex + +{\usedir{tex/latex/dramatist} + +\generate{\file{dramatist.sty}{\from{dramatist.dtx}{dramatist}} + } +} +%{\usedir{doc/latex/dramatist} +% +%\generate{\file{schiller.tex}{\from{dramatist.dtx}{schiller}} +% } +%\generate{\file{marlowe-verse.tex}{\from{dramatist.dtx}{vmarlowe}} +% } +%\generate{\file{marlowe-poemscol.tex}{\from{dramatist.dtx}{pmarlowe}} +% } +%} +\endbatchfile diff --git a/macros/latex/contrib/dramatist/dramatist.pdf b/macros/latex/contrib/dramatist/dramatist.pdf new file mode 100644 index 0000000000..4e753cade5 Binary files /dev/null and b/macros/latex/contrib/dramatist/dramatist.pdf differ diff --git a/macros/latex/contrib/dramatist/dramatist.sty b/macros/latex/contrib/dramatist/dramatist.sty new file mode 100644 index 0000000000..cff4aaa2ff --- /dev/null +++ b/macros/latex/contrib/dramatist/dramatist.sty @@ -0,0 +1,426 @@ +%% +%% This is file `dramatist.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% dramatist.dtx (with options: `dramatist') +%% +%% IMPORTANT NOTICE: +%% +%% For the copyright see the source file. +%% +%% Any modified versions of this file must be renamed +%% with new filenames distinct from dramatist.sty. +%% +%% For distribution of the original source see the terms +%% for copying and modification in the file dramatist.dtx. +%% +%% This generated file may be distributed as long as the +%% original source files, as listed above, are part of the +%% same distribution. (The sources need not necessarily be +%% in the same archive or directory.) +%% dramatist.dtx +%% Copyright (C) 2003-2014 Massimiliano Dominici +%% \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 +%% Lower-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 +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +%% +\ProvidesPackage{dramatist}[2014/12/18 v1.2e Package for typesetting drama -- Author: Massimiliano Dominici] +\NeedsTeXFormat{LaTeX2e} +\RequirePackage{xspace} +\@ifundefined{if@openright}{\newif\if@openright}{} +\newif\if@drverse +\newif\if@poemscol +\@ifpackageloaded{poemscol}{\@poemscoltrue}{\@poemscolfalse} +\newif\if@stagedir +\newif\if@lnpa +\newif\if@lnps +\newif\if@lnpd +\DeclareOption{lnpa}{\@lnpatrue} +\DeclareOption{lnps}{\@lnpstrue} +\ProcessOptions +\newcounter{storelineno} +\setcounter{storelineno}{0} +\if@poemscol\else +\refstepcounter{storelineno}\fi +\newcounter{storeprintlineindex} +\newcounter{character} +\newcounter{temp} +\newcounter{gtemp} +\newcounter{act} +\newcounter{scene}[act] +\renewcommand{\theact}{\roman{act}} +\renewcommand{\thescene}{\roman{scene}} +\newenvironment{drama}{% + \if@lnpa + \PackageWarning{dramatist}{\lnpwarning{a}} + \fi + \if@lnps + \PackageWarning{dramatist}{\lnpwarning{s}} + \fi + \list{}{% + \labelwidth\speakswidth + \itemindent\speaksindent + \itemsep\speechskip + \parsep\Dparsep + \labelsep\Dlabelsep + \let\makelabel\speakslabel} + } {\endlist} +\@namedef{drama*}{% + \@drversetrue + \if@poemscol + \begin{poem} + \setcounter{verselinenumber}{\value{storelineno}} + \setcounter{printlineindex}{\value{storeprintlineindex}} + \else + \begin{verse} + \fi + \ifx\poemlines\@undefined\else + \setcounter{poemline}{\value{storelineno}} + \fi} +\@namedef{enddrama*}{% + \ifx\poemlines\@undefined\else + \setcounter{storelineno}{\value{poemline}} + \fi + \if@poemscol + \end{poem} + \setcounter{storelineno}{\value{verselinenumber}} + \setcounter{storeprintlineindex}{\value{printlineindex}} + \else + \end{verse} + \fi + \@drversefalse} +\providecommand\phantomsection{} +\newcommand\actmark[1]{} +\newcommand\scenemark[1]{} +\newcommand\drampermark[1]{} +\newcommand\@openact{% + \@ifundefined{if@openright}{\clearpage}{% + \if@openright + \clearpage{\thispagestyle{empty}\cleardoublepage} + \else + \clearpage + \fi} + \thispagestyle{plain} + \refstepcounter{act} + \if@lnpa + \setcounter{storelineno}{0} + \if@poemscol + \setcounter{storeprintlineindex}{0} + \else + \refstepcounter{storelineno} + \fi + \fi +} +\newcommand\act{% + \@openact + \secdef\@act\@sact} +\newcommand\@act[1][]{% + \phantomsection + \addcontentsline{toc}{chapter}{\actcontentsline} + \actmark{\actname\ \theact} + \m@ke@cthead{#1} + \@afterindentfalse + \@afterheading} +\newcommand\@sact[1][]{% + \m@ke@cthead{#1} + \@afterindentfalse + \@afterheading} +\newcommand\Act{% + \@openact + \secdef\@Act\@sact} +\def\@Act[#1]#2{% + \phantomsection + \ifnum\c@secnumdepth>\m@ne + \addcontentsline{toc}{chapter}{\actcontentsline~#1} + \else + \addcontentsline{toc}{chapter}{#1} + \fi + \actmark{\actname\ \theact\ #1} + \m@ke@cthead{#2} + \@afterindentfalse + \@afterheading} +\newcommand\m@ke@cthead[1]{% + \actheadstart + {\parindent \z@ + \ifnum\c@secnumdepth>\m@ne + \printactname \printsep \printactnum + \fi + \printacttitle{#1} + \afteract} +} +\newcommand\@openscene{% + \stepcounter{scene} + \if@lnps + \setcounter{storelineno}{0} + \if@poemscol + \setcounter{storeprintlineindex}{0} + \else + \refstepcounter{storelineno} + \fi + \fi +} +\newcommand\scene{% + \@openscene + \secdef\@scene\@sscene} +\newcommand\@scene[1][]{% + \phantomsection + \addcontentsline{toc}{section}{\scenecontentsline} + \scenemark{\scenename\ \thescene} + \m@kescenehead{#1} + \@afterindentfalse + \@afterheading} +\newcommand\@sscene[1][]{% + \m@kescenehead{#1} + \@afterindentfalse + \@afterheading} +\newcommand\Scene{% + \@openscene + \secdef\@Scene\@sscene} +\def\@Scene[#1]#2{% + \phantomsection + \ifnum\c@secnumdepth>\z@ + \addcontentsline{toc}{section}{\scenecontentsline~#1} + \else + \addcontentsline{toc}{section}{#1} + \fi + \scenemark{\scenename\ \thescene\ #1} + \m@kescenehead{#2} + \@afterindentfalse + \@afterheading} +\newcommand\m@kescenehead[1]{% + \sceneheadstart + {\parindent \z@ + \ifnum\c@secnumdepth>\z@ + \printscenename \printsep \printscenenum + \fi + \printscenetitle{#1} + \afterscene} +} +\newcommand\Character{% + \@ifnextchar[{\@xcharacter}{\@character}} +\def\@xcharacter[#1]#2#3{% + \stepcounter{character} + \@character{#2}{#3} + \n@me@ppend@nddef{persona}{@\Roman{character}}{\castfont #1} +} +\def\@character#1#2{% + \@namedef{#2}{{\namefont #1}\xspace} + \n@me@ppend@nddef{#2}{\@ppendname}{% + \if@drverse + {\speakstab\speaksfont{#1}\speaksdel\par\nobreak\addvspace{-\parskip}} + \else + \item[#1\speaksdel] + \fi} +} +\newcommand{\n@me@ppend@nddef}[2]{% + \expandafter\def\csname#1#2\endcsname} +\newcommand{\@ppendname}{speaks} +\newenvironment{CharacterGroup}[1]{% + \stepcounter{character} + \newcounter{g\Roman{character}} + \grouplist{#1} +}{} +\newsavebox{\tbox} +\newcommand\grouplist[1]{% + \global\n@me@ppend@nddef{persona}{@\Roman{character}}{% + \begin{lrbox}{\tbox} + \begin{minipage}[c]{\CharWidth}\raggedright + \leftmargini=0pt + \begin{list}{}{\itemsep=0pt} + \dogrouplist + \end{list} + \end{minipage} + \end{lrbox} + \parbox{\CharWidth}{\usebox{\tbox}}% + \parbox{\ParenWidth}{$\left.\rule{0pt}{\ht\tbox}\right\}$} + \parbox{\CastWidth}{\castfont #1\strut}} +} +\newcommand{\dogrouplist}{% + \ifnum\value{g\Roman{temp}}>\value{gtemp} + \stepcounter{gtemp} + \item\@nameuse{gpersona@\Roman{temp}@\Roman{gtemp}}\strut + \dogrouplist + \fi + \setcounter{gtemp}{0} +} +\newcommand\GCharacter[3]{ + \stepcounter{g\Roman{character}} + \global\@namedef{#3}{{\namefont #2}\xspace} + \global\n@me@ppend@nddef{#3}{\@ppendname}{% + \if@drverse + {\speakstab\speaksfont #2\speaksdel\par\nobreak\addvspace{-\parskip}} + \else + \item[#2\speaksdel] + \fi} + \global\n@me@ppend@nddef{gpersona@\Roman{character}}{% + @\Roman{g\Roman{character}}}{\castfont #1} +} +\newcommand\speaker[1]{% + \if@drverse + {\speakstab\speaksfont #1\speaksdel\par\nobreak\addvspace{-\parskip}} + \else + \item[#1\speaksdel] + \fi} +\newcommand{\DramPer}{% + \@ifundefined{if@openright}{\clearpage}{% + \if@openright\cleardoublepage\else\clearpage\fi} + \secdef\@dramper\@sdramper} +\newcommand\@dramper[1][]{% + \phantomsection + \addcontentsline{toc}{chapter}{\casttitlename} + \drampermark{\casttitlename} + \m@kedramperhead{#1}} +\newcommand\@sdramper[1][]{% + \m@kedramperhead{#1}} +\newcommand\m@kedramperhead[1]{ + \castheadstart + {\printcasttitle #1 + \aftercasttitle} + \begin{list}{}{\leftmargin=0pt \itemsep=0pt} + \dodramperlist + \end{list} +} +\newcommand{\dodramperlist}{% + \ifnum\value{character}>\value{temp} + \stepcounter{temp} + \item\@nameuse{persona@\Roman{temp}}\strut + \dodramperlist + \fi +} +\newcommand{\direct}{% + \@ifstar\@sdirect\@direct} +\newcommand{\@direct}[1]{% + \if@drverse + \vskip2\normallineskip + \parbox[b]{\dirwidth}{\dirdelimiter{{\itshape #1}}}\@centercr + \else + \dirdelimiter{{\itshape #1}}\unskip + \fi +} +\newcommand{\@sdirect}[1]{% + \if@drverse + \vskip2\normallineskip + \parbox[b]{\dirwidth}{\dirdelimiter{\itshape #1}}\\! + \else + \starrederror + \fi +} +\newcommand{\dirdelimiter}[1]{(#1)} +\newcommand{\StageDir}[1]{% + \begin{stagedir} + #1 + \end{stagedir} +} +\newenvironment{stagedir}{% + \StageDirOpenSettings}{% + \StageDirCloseSettings\global\@stagedirtrue} +\newcommand\StageDirOpenSettings{\begin{quote}\em} +\newcommand\StageDirCloseSettings{\end{quote}} +\newcommand\StageDirConf[2]{% + \renewcommand\StageDirOpenSettings{#1} + \renewcommand\StageDirCloseSettings{#2} +} +\newcommand\actcontentsline{\actname\ \theact} +\newcommand{\actnamefont}{\scshape\Large} +\newcommand{\actnumfont}{\actnamefont} +\newcommand{\acttitlefont}{\actnamefont} +\newcommand{\actname}{Act} +\newcommand{\printactname}{\centering\actnamefont \actname} +\newcommand{\printactnum}{\actnumfont \theact} +\newcommand{\printacttitle}[1]{\acttitlefont\ #1} +\newcommand\scenecontentsline{\scenename\ \thescene} +\newcommand{\scenenamefont}{\scshape\large} +\newcommand{\scenenumfont}{\scenenamefont} +\newcommand{\scenetitlefont}{\scenenamefont} +\newcommand{\scenename}{Scene} +\newcommand{\printscenename}{\centering\scenenamefont \scenename} +\newcommand{\printscenenum}{\scenenumfont \theact\intersep\thescene} +\newcommand{\printscenetitle}[1]{\scenetitlefont\ #1} +\newcommand{\intersep}{\ --\ } +\newcommand{\printsep}{\ } +\newcommand{\printcasttitle}{\centering\casttitlefont \casttitlename} +\newcommand{\casttitlefont}{\Large\scshape} +\newcommand{\casttitlename}{Dramatis Person\ae} +\newcommand{\castfont}{\normalfont} +\newcommand{\namefont}{\scshape} +\newcommand{\speaksfont}{\scshape} +\newcommand{\speaksdel}{} +\newlength{\CharWidth} +\setlength{\CharWidth}{.3\textwidth} +\newlength{\ParenWidth} +\setlength{\ParenWidth}{.05\textwidth} +\newlength{\CastWidth} +\setlength{\CastWidth}{.6\textwidth} +\def\actheadstart{\vspace*{\beforeactskip}} +\def\afteract{\par\nobreak\vskip\afteractskip} +\def\sceneheadstart{\vspace*{\beforesceneskip}} +\def\afterscene{\par\nobreak\vskip\aftersceneskip} +\def\castheadstart{\vspace*{\beforecastskip}} +\def\aftercasttitle{\par\nobreak\vskip\aftercasttitleskip} +\newcommand{\speakstab}{\hspace{\speaksskip}} +\newlength{\beforeactskip} +\setlength{\beforeactskip}{\baselineskip} +\newlength{\afteractskip} +\setlength{\afteractskip}{\baselineskip} +\newlength{\beforesceneskip} +\setlength{\beforesceneskip}{0pt} +\newlength{\aftersceneskip} +\setlength{\aftersceneskip}{\baselineskip} +\newlength{\beforecastskip} +\setlength{\beforecastskip}{0pt} +\newlength{\aftercasttitleskip} +\setlength{\aftercasttitleskip}{0pt} +\newlength{\speaksskip} +\setlength{\speaksskip}{1em} +\newlength{\dirwidth} +\setlength{\dirwidth}{.6\textwidth} +\newdimen\speakswidth +\speakswidth\z@ +\newdimen\speaksindent +\speaksindent=-\leftmargin +\newdimen\speechskip +\speechskip\itemsep +\newdimen\Dparsep +\Dparsep\z@ +\newdimen\Dlabelsep +\Dlabelsep\labelsep +\newcommand{\speakslabel}[1]{% + \hspace\labelsep \speaksfont{#1}} +\newcommand{\starrederror}{\PackageError{dramatist}{% + The starred version of this command is not available under the + option you have chosen} + {You probably misspelled the command.^^J% + Only the `verse' option supports a starred version of this + command.} +} +\newcommand{\lnpwarning}[1]{The option `lnp#1' is meaningless outside the% + `drama*' environment} +\newcommand{\inputfilewarning}{\PackageWarningNoLine{dramatist}{^^J^^J% +********************************************************^^J% +* No Configuration file found, using default settings. *^^J% +********************************************************^^J% +}} +\newcommand{\foundfile}{\PackageWarningNoLine{dramatist}{^^J^^J% +*******************************************^^J% +* Using Configuration file dramatist.cfg. *^^J% +*******************************************^^J% +}} +\InputIfFileExists{dramatist.cfg}{\foundfile}{\inputfilewarning} +%%\section{The GNU General Public License} + +\endinput +%% +%% End of file `dramatist.sty'. -- cgit v1.2.3