如何重新格式化整个文档的列表?

如何重新格式化整个文档的列表?

请原谅我问了一个我确信非常简单的问题,但是我无法从 Google 上找到答案。

我正在处理一个文档,其中包含一系列主题描述,后面是简短的参考书目。我将参考书目作为简短列表输入。我想重新格式化文档中的所有无序列表,使其没有项目符号,从左对齐开始,并有四分之一英寸左右的悬挂缩进。换句话说,我希望它们都看起来像参考书目。有没有办法重新定义文档开头的列表格式,使它们都采用这种形式?

如果 LaTeX 内部有某种特殊的书目格式,我应该说我实际上不是在 LaTeX 中工作;我在 Markdown 中工作,并使用 pandoc 通过 pdfTeX 转换为 PDF。所以我想将其保留为一个简单的无序列表。

谢谢你的帮助!

答案1

正如 mbork 所说,您可以使用该enumitem包。在下面的例子中,我创建了一个biblist具有所需行为的新列表式环境(我称之为),然后使用该环境(以非常简单的方式)定义环境secbib以粗体\large字体写入单词“引用”,并使用该biblist环境写入条目:

\documentclass{article}
\usepackage{enumitem}

\newlist{biblist}{itemize}{10}
\setlist[biblist,1]{label=,leftmargin=0.25in,itemindent=-0.25in}

\newcommand*\TestText{text text text text text text text text text text text text text text text text text  text text text text text text  text text text text text text}

\newenvironment{secbib}
  {\textbf{\large References}\begin{biblist}}
  {\end{biblist}}

\begin{document}

\section{Test section one}
\begin{secbib}
\item \TestText
\item \TestText
\end{secbib}

\section{Test section two}
\begin{secbib}
\item \TestText
\item \TestText
\end{secbib}

\end{document}

结果:

在此处输入图片描述

请注意,您仍有很多工作要做:手动格式化书目条目可能非常耗时。我建议您考虑一种不同的方法:让书目条目自动为您格式化。这可以通过(至少)两种方式完成:

1)使用BiBTeX章节目录包裹,或

2)使用比布拉特克斯及其refsection环境。下面是一个最小工作示例,展示了最后一种替代方案:

\begin{filecontents*}{mybib.bib}
@book{goossens93,
    author = "Michel Goossens and Frank Mittlebach and Alexander Samarin",
    title = "The Latex Companion",
    year = "1993",
    publisher = "Addison-Wesley",
    address = "Reading, Massachusetts"
}

@book{knuth79,
    author = "Donald E. Knuth",
    title = "Tex and Metafont, New Directions in Typesetting",
    year = "1979",
    publisher = "American Mathematical Society and Digital Press",
    address = "Stanford"
}

@book{lamport94,
    author = "Leslie Lamport",
    title = "Latex: A Document Preparation System",
    year = "1994",
    edition = "Second",
    publisher = "Addison-Wesley",
    address = "Reading, Massachusetts"
}

@misc{patashnik88,
    author = "Oren Patashnik",
    title = "{B}ib{T}e{X}ing.  Documentation for General {B}ib{T}e{X} users",
    year = "1988",
    howpublished = "Electronic document accompanying BibTeX
distribution"
}
\end{filecontents*}

\documentclass{article}
\usepackage[style=authoryear]{biblatex}
\addbibresource{mybib.bib}

\begin{document}
\section{Test section one}

\begin{refsection}
\nocite{goossens93,lamport94}
\printbibliography[heading=subbibliography]
\end{refsection}

\section{Test section two}

\begin{refsection}
\nocite{patashnik88,knuth79}
\printbibliography[heading=subbibliography]
\end{refsection}

\end{document}

您将获得以下输出:

在此处输入图片描述

答案2

在 LaTeX 中自定义列表格式的最佳方法可能是enumitemJavier Bezos 的软件包,它包含在所有现代 TeX 安装中。(请注意,它的最新版本可能尚未在您的发行版中提供,它有一些不错的新功能 - 但您很可能不需要它们来重新格式化您的列表。)

相关内容