引文末尾没有参考书目

引文末尾没有参考书目

如何制作一份在论文中引用(\citep, \citet)正常但最后没有参考书目的文件?

我想出了一个糟糕的解决方案,因为它破坏了我的makefile

latex file.tex
bibtex file
# comment out \bibliography{} command
latex file.tex

同样,有没有办法生成不带文本的参考书目?我又想出了一个解决方案:.tex用命令填充一个空白文件\nocite{}。但是,这很麻烦,因为我必须手动同步两个文件(当有分页符时,搜索正则表达式\citep{author1, author2}会非常麻烦……)。

答案1

你的第二个要求很简单:使用\nocite{*}。这将产生完整的参考书目,无论实际引用了哪些参考书目条目。

答案2

使用\usepackage{bibentry}然后 而不是\bibliography{}使用\nobibliography{}

例如

\nobibliography{/Users/Thomas/Dropbox/bibliography.bib}

答案3

您可以定义一个保存框并将\bibliography命令放入保存框中。

以下是一个小例子:

\RequirePackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{test,
author={Name},
title={TITLE},
year={2011},
}
\end{filecontents}
\documentclass{article}
\usepackage{natbib}
\bibliographystyle{plainnat}
\begin{document}
\cite{test}

\newsavebox\mytempbib
\savebox\mytempbib{\parbox{\textwidth}{\bibliography{test}}}

\end{document}

注意:如果您正在使用,biblatex则不需要此类黑客攻击。

编辑

针对我的回答,我有一个小问题。你对允许用户打印参考书目的小包装有什么看法?

这是我的第一次尝试:

%% Copyright (C) 2011 by Marco Daniel
\ProvidesPackage{nobibprint}[2011/10/12 v0.1 nobibprint]
\RequirePackage{etoolbox}
\RequirePackage{xkeyval}
\define@boolkey{nobibprint.sty}[nobib@]{hide}{}
\ExecuteOptionsX{hide=true}
\ProcessOptionsX
\newsavebox\nobib@tempbox
\ifnobib@hide
   \AtBeginDocument{%
     \let\nobib@bibliography@orig\bibliography
     \def\bibliography#1{%
        \savebox\nobib@tempbox{%
           \parbox{\linewidth}{%
              \nobib@bibliography@orig{#1}%
            }%
        }%
      }%
   }
\fi
\endinput

现在简单使用:

\usepackage{nobibprint}

或者:

\usepackage[hide=true]{nobibprint}%default

或者

\usepackage[hide=false]{nobibprint}

答案4

只需使用比布拉特克斯及其natbib兼容性选项。

\documentclass{article}

\usepackage[style=authoryear,natbib=true]{biblatex}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@misc{A01,
  author = {Author, A.},
  year = {2001},
  title = {Alpha},
}
\end{filecontents}

\addbibresource{\jobname.bib}

\begin{document}

Some text \citep{A01}.

% \printbibliography

\end{document}

相关内容