From ed29c5fe97d025836e66796fdf1c4a624d29d189 Mon Sep 17 00:00:00 2001 From: Andrew Date: Thu, 30 Apr 2020 13:15:25 +0400 Subject: =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=20=D1=81?= =?UTF-8?q?=D0=B0=D0=BC=D0=BE=D0=BF=D1=80=D0=B5=D0=B7=D0=B5=D0=BD=D1=82?= =?UTF-8?q?=D0=B0=D1=86=D0=B8=D1=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- screenplay-pkg/screenplay-pkg.sty | 218 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 218 insertions(+) create mode 100644 screenplay-pkg/screenplay-pkg.sty (limited to 'screenplay-pkg/screenplay-pkg.sty') diff --git a/screenplay-pkg/screenplay-pkg.sty b/screenplay-pkg/screenplay-pkg.sty new file mode 100644 index 0000000..fc4ddde --- /dev/null +++ b/screenplay-pkg/screenplay-pkg.sty @@ -0,0 +1,218 @@ +%% +%% This is file `screenplay-pkg.sty' +% Copyright 2006 by John Pate +% Copyright 2015 by Alan Munn +% +% This package implements the tools of the screenplay document class +% in the form of a package so that screenplay fragments can be included +% within another document class. +% +% The main documentation for the package is contained in the screenplay class +% documentation. Please read that in addition the included documentation. +% +% All commands related to the titlepage in screenplay.cls have been +% eliminated. +% +% One new environment is implemented: +% +% \begin{screenplay} ... \end{screenplay} +% +% Two additional user commands are added to allow for user adjustment of the +% fragment font and linespacing (the setspace package is used for spacing unless memoir is loaded). +% +% \screenspacing{} % sets the linespacing for screenplay fragments; default +% is \onehalfspacing +% \screenfont{} % sets the font for screenplay fragments; default is +% \ttfamily +% +% +% \sccenter % American spellings of centring commands now possible +% \centertitle +% +% +% This package may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2005/12/01 or later. +% +% This package has the LPPL maintenance status `maintained'. +% +% The Current Maintainer of this package is Alan Munn. +% +% This package consists of the file +% +% screenplay-pkg.sty +% +% and documentation files: +% +% screenplay-pkg.tex, screenplay-pkg.pdf, +% screenplay-pkg-example.tex and screenplay-pkg-example.pdf. +% +% Version 1.0 2015/07/11 +% Version 1.1 2017/08/05 Added memoir support +% + +\NeedsTeXFormat{LaTeX2e}[2003/12/01] +\ProvidesPackage{screenplay-pkg}[2017/08/05 v1.1 +LaTeX2e Draft Screenplay tools adapted from the screenplay document class +original code (C)2006 John Pate +package modifications (C)2015-2017 Alan Munn +released under the LPPL] +\DeclareOption*{% + \PackageError{screenplay-pkg}{Unwanted option '\CurrentOption'}% + {There are no options available for screenplay-pkg}} +\ProcessOptions\relax +\RequirePackage{ifthen}[2001/05/26] +% Use setspace or memoir for linespacing AM +\@ifclassloaded{memoir} + {\newcommand*{\@screenspacing}{\OnehalfSpacing}} + {\RequirePackage{setspace} + \newcommand*{\@screenspacing}{\onehalfspacing}} +% screenplay font will default to ttfamily AM +\newcommand*{\@screenfont}{\ttfamily} +% screenplay font can be changed with \screenfont macro AM +\newcommand*{\screenfont}[1]{\renewcommand\@screenfont{#1}} +\newcommand*{\screenspacing}[1]{\renewcommand\@screenspacing{#1}} +\newcommand*{\dialfix}{\vspace{2pt}} +% new command to set the internal spacing and formatting of +% the screenplay fragments AM +\newcommand*{\@screensetup}{% +\@screenspacing\@screenfont\raggedright +\setlength{\parskip}{\baselineskip} +\setlength{\parindent}{0in}} +\newcommand*{\slugspace}{\hspace{2.0em plus 0em minus 0em}} +\newlength{\widthgutter} +\setlength{\widthgutter}{0.1in} +% Don't want to change global \textwidth in the package version +%\addtolength{\textwidth}{\widthgutter} +\newlength{\dialwidth} +\setlength{\dialwidth}{3.0in} +\newlength{\dialgutter} +\setlength{\dialgutter}{0.2in} +\addtolength{\dialwidth}{\dialgutter} +\newcommand*{\dialtab}{\hspace*{1.5in}} +\newcommand*{\dialnametab}{\hspace*{1.2in}} +\newlength{\parenwidth} +\setlength{\parenwidth}{1.5in} +\addtolength{\parenwidth}{\dialgutter} +\newcommand*{\parentab}{\hspace{0.7in}} + +% Added new environment for screenplay fragments AM +\newenvironment{screenplay}{\@screensetup}{} +\newcommand*{\more}{(MORE)} +\newcommand*{\contd}{(CONT'D)} +\newcommand{\paren}[1]{% +\parentab\parbox[t]{\parenwidth}{\raggedright(#1)\dialfix}\\ +} +\newenvironment{dialogue}[2][]{% + +\dialtab\dialnametab\hbox{\MakeUppercase{#2}}\\* +\dialtab\begin{minipage}[b]{\dialwidth} +\dialfix +\raggedright +\ifthenelse{\not\equal{#1}{}} +{% +\paren{#1} +}{} +}{% +\end{minipage} + +} +\newcommand{\dialbreak}[2][]{% +\nopagebreak +\dialnametab\hbox{\more}% +\end{dialogue} +\newpage +\ifthenelse{\not\equal{#1}{}} +{ +\begin{dialogue}[#1]{\MakeUppercase{#2} \contd} +}{% +\begin{dialogue}{\MakeUppercase{#2} \contd} +} +} +\newcommand*{\placesep}{.~} +\newcommand{\slug}[3][]{% + +\MakeUppercase{#2\placesep#3}% +\ifthenelse{\not\equal{#1}{}} + {% +\slugspace\MakeUppercase{#1}\hspace{\fill} + }{} +\nopagebreak +} +\newcommand*{\inttext}{INT} +\newcommand{\intslug}[2][]{\slug[#1]{\inttext}{#2}} +\newcommand*{\exttext}{EXT} +\newcommand{\extslug}[2][]{\slug[#1]{\exttext}{#2}} +\newcommand*{\sepintext}{./} +\newcommand{\intextslug}[2][]{% +\slug[#1]{\inttext\sepintext\exttext}{#2}} +\newcommand{\extintslug}[2][]{% +\slug[#1]{\exttext\sepintext\inttext}{#2}} +\newcommand*{% +\sccentre}[1]{\hspace*{\fill}{#1}\hspace{\fill}\hspace{\widthgutter}} +\let\sccenter\sccentre +\newcommand*{% +\scflushright}[1]{\hspace*{\fill}{#1}\hspace{\widthgutter}} +\newcommand*{\punctchar}{:} +\newcommand*{\titleovertext}{TITLE~OVER} + +\newenvironment{titleover}[1][]{% +\ifthenelse{\not\equal{#1}{}} +{% +\titleovertext #1\punctchar +}{% +\titleovertext\punctchar +}% +\\*[\baselineskip] +\dialtab\begin{minipage}[b]{\dialwidth} +\raggedright +}{% +\end{minipage} +} + +\newcommand{\titbreak}{% +\nopagebreak +\dialnametab\hbox{\more}% +\end{titleover} +\newpage +\begin{titleover}[\contd]% +} + +\newcommand{\centretitle}[1]{% +\titleovertext\punctchar\\*[\baselineskip]% +\sccentre{#1} +} + +\newcommand*{\fadeintext}{FADE~IN} + +\newcommand{\fadein}{% +\fadeintext\punctchar +} +\newcommand*{\fadeouttext}{FADE~OUT} + +\newcommand{\fadeout}{% +\scflushright{\fadeouttext\punctchar} +} + +\newcommand*{\intercuttext}{INTERCUT~WITH} + +\newcommand{\intercut}{% +\scflushright{\intercuttext\punctchar} +} + +\newcommand*{\pov}{P.O.V.} +\newcommand*{\revert}{REVERSE~\pov} +\newcommand*{\thirty}{THE~END} +\newcommand{\theend}{% + +\sccentre{\thirty} +} +% add some American English spellings +\let\sccenter\sccentre +\let\centertitle\centretitle +\endinput +%% End of file `screenplay-pkg.sty'. -- cgit v1.2.3