更改对话包的“说话”模板

更改对话包的“说话”模板

我是 LaTeX 新手,我在网上找到了我需要的一切,但我偶然发现了一个非常具体的问题,需要更好地理解模板。我有一个对话:

\begin{dialogue}
    \speak{Marie} A pizza !
    \speak{Marine} With what ?
\end{dialogue}

结果是:

玛丽:披萨!

海军陆战队:用什么?

这对于英语来说是完美的,但我用法语写的,需要在名字和冒号之间加一个空格。就像这样:

玛丽:披萨!

海军陆战队:用什么?

我怎样才能实现这一点?我知道需要做一些模板工作,但我找不到任何明确的开始方法。

答案1

该包中有一个针对标签的命令:

\documentclass{article}

\usepackage{dialogue}


\renewcommand*\DialogueLabel[1]{%
  \scshape\lowercase{#1} :\hfil
}

\begin{document}
%
\begin{dialogue}
    \speak{Marie} A pizza !
    \speak{Marine} With what ?
\end{dialogue}
\end{document}

答案2

定义\DialogueLabel为使用冒号的“主动”版本。

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}

\usepackage{dialogue}

\renewcommand*\DialogueLabel[1]{%
  \scshape\MakeLowercase{#1}\DialogueSep\hfil
}

\begingroup\lccode`~=`:
\lowercase{\endgroup\def\DialogueSep{~}}

\begin{document}

\begin{dialogue}
\speak{Marie} Une pizza !
\speak{Marine} Avec quoi ?
\speak{Marie} Oignons!
\end{dialogue}

\end{document}

请注意,我还使用了,\MakeLowercase因为否则重音字符可能会被误解\MakeLowercase

!还要注意,:或之前的空格?是可选的。

在此处输入图片描述

相关内容