我正在制作 Beamer 演示文稿,我想更改单张幻灯片的边距大小。我在一些旧邮件列表中找到了解决方案,稍加修改后效果很好,但我不知道它是如何工作的=/
\newenvironment{codemargin}{%
\begin{list}{}{%
\setlength{\leftmargin}{-0.7cm}%
\setlength{\rightmargin}{-0.7cm}%
}%
\item[]}{
\end{list}
}
这会创建一个新的环境,我可以在想要具有较小边距的幻灯片上使用它。
现在回到正题 - \item[]}{ 是什么意思?我找不到任何其他使用类似语法的例子。
答案1
粗略的想法是,list
环境(出于我不完全理解的原因)使各种格式更容易,例如您setlengths
拥有的。我相信它也会抑制初始段落缩进。但是,就像itemize
、enumerate
和description
环境一样——它们都是包装器list
——唯一允许的文本必须跟在 之后\item
。并且由于\item
可以接受可选参数(在描述列表中非常有用),因此提供了一个空参数,以便您可以编写
\begin{codemargin}
[This text] demonstrates...
\end{codemargin}
否则,[This text]
就会被命令吞噬\item
。
答案2
回答问题的另一部分,似乎你对括号的顺序感到困惑,请阅读:
\newenvironment{codemargin}
{% begin
\begin{list}{
}{% do
\setlength{\leftmargin}{-0.7cm}\setlength{\rightmargin}{-0.7cm}}%
\item[]
}{% end
\end{list}
}