我要做的是在一个方便的目录中创建一个“Master”bibtex参考书目(通过JabRef组织),这样我就不需要将我工作的每个项目中的新引用复制到我的master数据库中。我遇到的问题是,虽然我可以轻松地引用另一个文件(例如对于STATA回归表输出),即使它不在同一目录中,参考书目也不想合作
出于本示例的目的,我在
中创建了一个虚拟目录 My Documents/Course/Paper.
下的Tex文件
My Documents/Course/Paper/MasterTexFile.tex
代码中引用的示例Tex文件(简称为 Text )位于
下 My Documents/Course/Text.tex.
我的理想是将参考书目放在一个更通用的目录中,但为了说明的目的,我把它放在工作tex文件的上方。文件代码如下:
\documentclass[12pt,titlepage]{article}
\usepackage[round,longnamesfirst]{natbib}
\usepackage{setspace}
\doublespacing
\usepackage[margin=1in]{geometry}
\usepackage{hyperref}
\hypersetup{
pdftitle={TITLE},
pdfauthor={AUTHOR},
pdfsubject={SUBJECT},
pdfkeywords={KEYWORD} {KEYWORD} {KEYWORD},
colorlinks=true,
linkcolor=blue,
citecolor=blue,
filecolor=magenta,
urlcolor=blue
}
\begin{document}
\title{TITLE}
\date{\today}
\author{AUTHOR\\STUDENT NUMBER}
\maketitle
%Begin Document Text
\pagestyle{headings}
\section{Introduction}
\cite{Shapiro2015} %Example citation from my database
\input{../Text} %this comes from the directory ABOVE that of the current file.
%\input{../00 Master Bibliography} %This was inputted using the user interface (Texmaker). I have it here just to demonstrate that it is truly in the directory.
%References
\newpage
\bibliographystyle{plainnat}
\bibliography{../00 Master Bibliography}
%\bibliography{00_Master_Bibliography} %If the database is in the directory, everything works fine.
\end{document}
文档编译(我按顺序使用PdfLatex,BibTex,PdfLatex x2),并正确引用 Text 文档(其中只包含单词“Text”),但是我收到以下错误:
Package natbib Warning: Citation `Shapiro2015' on page 1 undefined on input line 40.
Package natbib Warning: Empty `thebibliography' environment on input line 8.
Package natbib Warning: There were undefined citations.
注意:为简洁起见,我删除了一些注释行,因此如果将其复制到编辑器中,则行号将不同。
如果找不到数据库,可以预料到这些,但我不知道为什么找不到它。它与natbib有什么关系吗? natbib包的一个特性是它不能从当前文件以外的任何目录引用数据库吗?这似乎不太可能。
非常感谢任何帮助!
答案 0 :(得分:0)
好吧,转过身就有一个简单的解决方案。我不确定它是否是参考书目名称之前的'00'(我添加'00'以确保它位于其文件夹中文件列表的顶部),或者它们之间的空格和单词'参考书目',但改变文件名称只是'参考书目'工作。