带回车符的新命令

带回车符的新命令

大家早上好!对于我的戏剧剧本模板,我创建了\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}

相关内容