如何在页边空白处添加项目符号?

如何在页边空白处添加项目符号?

我不是排版专家,但我听说 itemize/enumerate 环境中的项目符号和数字最好放在正文之外,即放在页边距中。如何在 LaTeX 中做到这一点?

还有一个附加问题,我如何在 ConTeXt 中做到这一点?:)

编辑:本文中的一个用途是:http://www.duo.uio.no/sok/work.html?WORKID=81971&lang=en 但我没有在那里找到任何嵌套列表。

另一个案例是这本电子书:http://designingfortheweb.co.uk/book/part3/part3_chapter13.php

答案1

我从未见过将列表的项目符号放在页边距中。列表中的文本不仅仅是正文。那么,为什么要将其与正文对齐呢?像引用引文一样缩进是一个好主意。

让我们考虑选择这种样式。嵌套列表怎么样?因此,其项目必须与父列表的左边缘对齐,因此也必须与文档的左边缘对齐。

那么枚举列表呢?数字是否应放在边距中?

综上所述,在页边空白处添加项目符号,并将项目与正文对齐,这种带有项目符号的列表似乎值得怀疑。尽管如此,它还是很容易实现的。

使用 enumitem 时,最好在序言中指定样式,而不是通过可选参数为每个列表指定样式。这样既一致又易于更改。如果您后来决定更改列表样式,只需在序言中对整个文档应用一次修改即可。

马丁的例子根据这个观点进行了修改:

\documentclass{article}
\usepackage{enumitem}
\setitemize[1]{leftmargin=0ex}
\usepackage[showframe]{geometry}
\begin{document}
\begin{itemize}
\item text
\end{itemize}
\end{document}

答案2

ConTeXt 部分很简单:

\startitemize[inmargin]
\item foo
\item bar
\item baz
\stopitemize

答案3

您可以使用 enumitem 包来调整左边距。但是,我从未在边距中看到过项目符号。

\documentclass{文章}
\usepackage{enumitem}
\usepackage[showframe]{几何}
\开始{文档}
\begin{itemize}[leftmargin=0ex]
    \item 这里有一些文本
\end{逐项列举}
\结束{文档}

答案4

我实际上在某处找到了该论文的来源,并提取了以下内容(好的,我在枚举列表中添加了 .!)

如果以后有人感兴趣的话,这里是论文来源。

% Enumeratable list
\newenvironment{enum}{%
  \begin{list}{\arabic{enumi}.}{%
    \setlength{\topsep}{\onelineskip}
    \setlength{\partopsep}{0pt}
    \setlength{\parsep}{\parskip}
    \setlength{\itemsep}{\parskip}
    \setlength{\leftmargin}{0pt}
    \setlength{\itemindent}{0pt}
    \usecounter{enumi}
  }
}{\end{list}}

% Itemized list
\newenvironment{items}{%
  \begin{list}{\textbullet}{%
    \setlength{\topsep}{\onelineskip}
    \setlength{\partopsep}{0pt}
    \setlength{\parsep}{\parskip}
    \setlength{\itemsep}{\parskip}
    \setlength{\leftmargin}{0pt}
    \setlength{\itemindent}{0pt}
  }
}{\end{list}}

% Definitions in lists
\newcommand{\iterm}[1]{\item \term{#1}}

相关内容