大家早上好!对于我的戏剧剧本模板,我创建了\move
字幕命令,但我无法设置回车符(见图)。但是,文本必须与其余部分保持一致。这可以吗?非常感谢。
\documentclass[a4paper,12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{xcolor}
\newcommand\move{\par\vskip0mm \noindent\makebox[35mm][l]{}\hangindent=35mm\textsl}
\def\declname#1#2{%
\def#1{\vskip5mm \noindent\hbox to35mm{#2\hss}\hangindent=35mm \ignorespaces}}
\declname \JAMES {JAMES}
\begin{document}
\JAMES
Lorem ipsum dolor sit amet, consectetuer adipiscing elit lorem ipsum dolor.
\move{(Duis autem vel eum iriure dolor in hendrerit.)}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.
\move{(Ut wisi enim ad minim veniam, quis nostrud exercitation ullamcorper)}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit lorem ipsum dolor.
\end{document}
答案1
我会给这个东西添加结构。例如,各种长度应该是参数,这样你就可以轻松地以集中的方式更改它们以进行实验。
另一个建议是将戏剧剧本部分设为一个环境,这样您就可以添加以不同样式排版的部分。
我还提出了一种更简单的声明名称的方法:如果没有可选参数,则名称也被视为命令名称,但您可以通过添加可选参数来决定使用不同的命令名称(参见示例)。
抱歉改成\textsl
了\textit
,但我觉得倾斜的字体真的很糟糕。另外,外括号应该是命令定义的一部分,并且是直立的(但这是我的品味)。
\documentclass[a4paper,12pt]{article}
\newenvironment{script}
{%
\par
\setlength{\parindent}{0pt}
\setlength{\leftskip}{\scriptleftmargin}
}
{\par}
\newcommand{\namebox}[1]{%
\makebox[0pt][r]{%
\makebox[\scriptleftmargin][l]{#1}%
}%
}
\NewDocumentCommand{\declname}{O{#2}m}{%
\ExpandArgs{c}\newcommand{#1}{%
\par\addvspace{\nameskip}%
\namebox{#2}%
}%
}
\newcommand\move[1]{\par(\textit{#1})\par}
\newlength{\scriptleftmargin}
\newlength{\nameskip}
\setlength{\scriptleftmargin}{35mm}
\setlength{\nameskip}{5mm}
\declname{JAMES}
\declname[OOC]{ÖÖÇ}
\begin{document}
\begin{script}
\JAMES
Lorem ipsum dolor sit amet, consectetuer adipiscing elit lorem ipsum dolor.
\move{Duis autem vel eum iriure dolor in hendrerit.}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy
nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.
\move{Ut wisi enim ad minim veniam, quis nostrud exercitation ullamcorper}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit lorem ipsum dolor.
\OOC
Lorem ipsum dolor sit amet, consectetuer adipiscing elit lorem ipsum dolor.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit lorem ipsum dolor.
\end{script}
\end{document}
为什么不呢\hangindent
?因为它在每个段落都会重置。可以再次设置,但使用起来更简单\leftskip
。
答案2
我认为您只是想要一个倾斜的段落,并带有合适的边距。
\documentclass[a4paper,12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{xcolor}
\setlength\parindent{0pt}
\setlength\leftskip{35mm}% really should be a list
\newcommand\move[1]{%
\par\textsl{#1}\par}
\newcommand\declname[2]{%
\def#1{%
\par\vspace{5mm}%
\noindent\hspace{-35mm}\makebox[35mm][l]{#2}}}
\declname \JAMES {JAMES}
\begin{document}
\JAMES
Lorem ipsum dolor sit amet, consectetuer adipiscing elit lorem ipsum dolor.
\move{(Duis autem vel eum iriure dolor in hendrerit.)}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.
\move{(Ut wisi enim ad minim veniam, quis nostrud exercitation ullamcorper)}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit lorem ipsum dolor.
\end{document}