我目前正在尝试为一个课程编写一份文献综述,该课程要求我使用与我的领域相关的引用格式。我希望能够将我所讨论的引用和来源分析放在其下,并在论文末尾附上最终参考书目。一切似乎都运行正常,引用也符合我想要的格式,但在我的第一页顶部出现了所有来源的文内引用列表。
我已经看到了有关的一些注释\nocite{*}
,但它似乎没有对我的文档做出任何改变。
\documentclass[12pt,letterpaper]{article}
% Set margins to 1.5in
\usepackage[margin=0.75in]{geometry}
% for crimson text
\usepackage{crimson}
\usepackage[T1]{fontenc}
% setup parameter indentation
\setlength{\parindent}{15pt}
\setlength{\parskip}{6pt}
% for 1.15 spacing between text
\renewcommand{\baselinestretch}{1.15}
% For defining spacing between headers
\usepackage{titlesec}
% Level 1
\titleformat{\section}
{\normalfont\fontsize{18}{0}\bfseries}{\thesection}{1em}{}
% Level 2
\titleformat{\subsection}
{\normalfont\fontsize{14}{0}\bfseries}{\thesection}{1em}{}
% Level 3
\titleformat{\subsubsection}
{\normalfont\fontsize{12}{0}\bfseries}{\thesection}{1em}{}
% Level 4
\titleformat{\paragraph}
{\normalfont\fontsize{12}{0}\bfseries\itshape}{\theparagraph}{1em}{}
% Level 5
\titleformat{\subparagraph}
{\normalfont\fontsize{12}{0}\itshape}{\theparagraph}{1em}{}
% Level 6
\makeatletter
\newcounter{subsubparagraph}[subparagraph]
\renewcommand\thesubsubparagraph{%
\thesubparagraph.\@arabic\c@subsubparagraph}
\newcommand\subsubparagraph{%
\@startsection{subsubparagraph} % counter
{6} % level
{\parindent} % indent
{12pt} % beforeskip
{6pt} % afterskip
{\normalfont\fontsize{12}{0}}}
\newcommand\l@subsubparagraph{\@dottedtocline{6}{10em}{5em}}
\newcommand{\subsubparagraphmark}[1]{}
\makeatother
\titlespacing*{\section}{0pt}{12pt}{6pt}
\titlespacing*{\subsection}{0pt}{12pt}{6pt}
\titlespacing*{\subsubsection}{0pt}{12pt}{6pt}
\titlespacing*{\paragraph}{0pt}{12pt}{6pt}
\titlespacing*{\subparagraph}{0pt}{12pt}{6pt}
\titlespacing*{\subsubparagraph}{0pt}{12pt}{6pt}
% Set caption to correct size and location
\usepackage[tableposition=top, figureposition=bottom, font=footnotesize, labelfont=bf]{caption}
% set page number location
\usepackage{fancyhdr}
\fancyhf{} % clear all header and footers
\renewcommand{\headrulewidth}{0pt} % remove the header rule
\rhead{\thepage}
\pagestyle{fancy}
% Overwrite Title
\makeatletter
\renewcommand{\maketitle}{\bgroup
\begin{center}
\textbf{{\fontsize{18pt}{20}\selectfont \@title}}\\
\vspace{10pt}
{\fontsize{12pt}{0}\selectfont \@author}
\end{center}
}
\makeatother
% For full citations inline
\usepackage{bibentry}
\nobibliography*
% For making hanging indents under citations
\usepackage{hanging}
\newcommand\hangbibentry[1]{%
\smallskip\par\hangpara{1em}{1}\bibentry{#1}\smallskip\par %{indent}{afterline}
}
% For indenting the first paragraph of every line
\usepackage{indentfirst}
% For use of astron citation package
\usepackage{natbib}
\begin{document}
\thispagestyle{fancy}
\subsection*{\hangbibentry{Soderblom2010TheStars}}
This source outlines the various methods astrophysicists utilize to estimate the ages of stars.
\bibliographystyle{astron}
\bibliography{mnemonic.bib,bib.bib}
\end{document}
这篇文章的引用如下:
@article{Soderblom2010TheStars,
title = "The Ages of Stars",
year = "2010",
journal = aar,
author = "Soderblom, David R.",
month = "3",
volume = "48",
pages = "581--629",
url = "http://arxiv.org/abs/1003.6074 http://dx.doi.org/10.1146/annurev-astro-081309-130806",
doi = "10.1146/annurev-astro-081309-130806",
}
我有一个警告,内容如下:
软件包 Fancyhdr 警告:\headheight 太小(12.0pt):至少将其设置为 14.49998pt。我们现在将其设置为与文档其余部分一样大。但是,这可能会导致页面布局不一致。
还有两个错误,内容如下:
未定义控制序列。
编译器无法理解您使用的命令。请检查命令拼写是否正确。如果命令是软件包的一部分,请确保您已使用 \usepackage{...} 将该软件包包含在您的前言中。
了解更多
<argument> \protect \astroncite {Soderblom}{2010} l.3 ...te{Soderblom}{2010}]{Soderblom2010TheStars} The control sequence at the end of the top line of your error message was never
\def'ed。如果您拼错了(例如,
\hobx'), type
I')和正确的拼写(例如,`I\hbox')。否则继续,我会忘记未定义的部分。LaTeX 错误:缺少 \begin{document}。
未找到 \begin{document} 命令。请确保已在序言中包含 \begin{document},并且主文档已正确设置。
了解更多 请参阅 LaTeX 手册或 LaTeX Companion 了解说明。输入 H 可立即获得帮助。
...
l.3 ...te{Soderblom}{2010}]{Soderblom2010TheStars} You're in trouble here. Try typing <return> to proceed. If that doesn't work, type X
退出。
我目前正在使用 Overleaf。
答案1
第一个错误\headheight is too small (12.0pt): Make it at least 14.49998pt.
是因为你创建的 header viafancyhdr
比当前使用的更大12pt
。因此只需添加
\setlength{\headheight}{15pt}
到你的序言中去掉它。
您收到的第一条错误消息<argument> \protect \astroncite
是由于使用astron.bst
和而产生的astron.sty
,其中包含以下行:
\def\cite{\@ifstar{\citeyear}{\citefull}}
\def\citefull{\def\astroncite##1##2{##1, ##2}\@internalcite}
\def\citeyear{\def\astroncite##1##2{##2}\@internalcite}
这个文件相当旧了,我不知道,但是使用例如
\bibliographystyle{plainnat}
让我使用bibentry
,并且natbib
没有错误,你可以用以下 MWE 进行测试
\begin{filecontents*}{mybib.bib}
@article{Soderblom2010TheStars,
title = "The Ages of Stars",
year = "2010",
journal = aar,
author = "Soderblom, David R.",
month = "3",
volume = "48",
pages = "581--629",
url = "http://arxiv.org/abs/1003.6074 http://dx.doi.org/10.1146/annurev-astro-081309-130806",
doi = "10.1146/annurev-astro-081309-130806",
}
\end{filecontents*}
\documentclass{article}
\usepackage{bibentry}
\nobibliography*
\usepackage{natbib}
\begin{document}
text
%\bibentry{Soderblom2010TheStars}
\subsection*{\bibentry{Soderblom2010TheStars}}
text
\bibliographystyle{plainnat} % plain astron
\bibliography{mybib}
\end{document}
请注意,我已.bib
在参考书目调用中删除了扩展名。
结果是(没有采取任何措施来破坏 URL,请忽略这一点):
对我来说,现在的主要问题是,您能否省略使用过时的astron.bst
,或者将其用于我不知道的特殊类?如果可能的话,请省略它或向该样式/日志的维护者提交错误报告。