% !TEX TS-program = pdflatexmk \documentclass[11pt]{article} \title{\textbf{The \textsf{screenplay-pkg} package}} \author{\textbf{Alan Munn}\\Department of Linguistics and Languages\\Michigan State University\\\texttt{\href{mailto:amunn@msu.edu}{amunn@msu.edu}}} \date{Version 1.1\\August 5, 2017} \usepackage[T1]{fontenc} \usepackage[margin=1in]{geometry} \usepackage{titling} \usepackage[utf8]{inputenc} \usepackage{array, booktabs, multicol, fancyhdr, xspace,tabularx} \usepackage{enumitem} \usepackage{fancyvrb,listings,url} \usepackage[sf,compact]{titlesec} \usepackage{screenplay-pkg} \usepackage[colorlinks=true]{hyperref} \DefineShortVerb{\|} \newcommand*\bs{\textbackslash} \IfFileExists{luximono.sty}% {% \usepackage[scaled]{luximono}% } {% \IfFileExists{beramono.sty}% {% \usepackage[scaled]{beramono}% }{} } \lstset{% basicstyle=\ttfamily\small, commentstyle=\itshape\ttfamily\small, showspaces=false, showstringspaces=false, breaklines=true, breakautoindent=true, captionpos=t language=TeX } \newcommand*{\pkg}[1]{\texttt{#1}\xspace} \setitemize[1]{label={}} \setitemize[2]{label={}} \setdescription{font={\normalfont}} \setlength{\droptitle}{-1in} \lhead{} \chead{} \rhead{} \lfoot{\emph{}} \cfoot{\thepage} \rfoot{} \renewcommand{\headrulewidth}{0pt} \renewcommand{\footrulewidth}{0pt} \pagestyle{fancy} \begin{document} \maketitle \thispagestyle{empty} \renewcommand{\abstractname}{\sffamily Abstract} \abstract{\noindent\begin{quote}This is a package version of the \pkg{screenplay} document class. The class version is designed to produce a properly formatted screenplay manuscript. This package version allows portions of screenplays formatted using the class methods to be included into other document classes. \end{quote} \section{Introduction} This package arose out of a question asked on the StackExchange website: \href{http://tex.stackexchange.com/q/26227/}{Converting document classes into environments: is it possible?} The question asked how easy it would be convert the class functionality into an environment. This package is the result of that discussion. \section{Package use} To use the package just load it like any other package: \begin{lstlisting} \usepackage{screenplay-pkg} \end{lstlisting} \subsection{New commands} The package implements one new environment and two formatting hooks for it. The |screenplay| environment provides an environment to wrap a screenplay fragment. Within this environment, you should use any of the macros defined in the \href{https://www.ctan.org/pkg/screenplay}{\pkg{screenplay}} class. Please consult its documentation for details. \begin{lstlisting} \begin{screenplay} \end{screenplay} \end{lstlisting} Two additional user commands are added to allow for user adjustment of the fragment font and linespacing (the \pkg{setspace} package is used for spacing unless the \pkg{memoir} class is loaded). American spellings of the centring commands have also been created. British spellings of these commands are retained: \begin{center} \begin{tabular}{l>{\raggedright\arraybackslash}p{3.5in}} \toprule \textsf{Command} & \textsf{Explantion}\\ |\screenspacing{}| & sets the linespacing for screenplay fragments\\ & default is |\onehalfspacing|\\ & (if \pkg{memoir} is loaded, |\OnehalfSpacing|)\\ |\screenfont{}| & sets the font for screenplay fragments\\ & default is |\ttfamily|\\ |\sccenter | & American spellings of centring commands now possible\\ |\centertitle| & \\ \bottomrule \end{tabular} \end{center} \subsection{Eliminated commands} All commands from the \pkg{screenplay} class that relate to creating the title page have been removed from the package version of the class. \section{Troubleshooting and package dependencies} \subsection{Package dependencies} Note that the package uses the \pkg{setspace} package for linespacing. If you are using the \pkg{memoir} class which provides its own linespacing methods the package will use its linespacing commands instead. \subsection{Bugs} You are welcome to report bugs and submit feature requests, but I should warn you that this package is extremely low priority for me in terms of maintenance, as I do not use it at all. If you are interested in taking it over, please get in touch with me. \section{Sample document} The following is a sample document showing how the package is used. It can be found in the documentation folder for the package. \lstinputlisting{screenplay-pkg-example.tex} \end{document}