\fullcite 替代方案,何時需要使用 bst 檔案?

\fullcite 替代方案,何時需要使用 bst 檔案?

我需要使用給定的 .bst 文件,因此我只能使用純 BibTeX。

\fullcite在這種情況下,有什麼方法可以得到與 BibLaTeX 等效的東西嗎?

答案1

對於我的設置,bibentry 包(參見如何在正文中完整引用一篇雙文?) 不工作。我會收到以下錯誤或警告之一:

! Package natbib Error: Bibliography not compatible with author-year citations.

pdfTeX warning ext4: destination with the same identifier name{cite.xxxx2015} 
has been already used, duplicate ignored

然而,出於我的目的,我能夠利用參考書目條目遵循的模式\bibitem[LABEL]{CITEKEY} BIBLIOGRAPHYENTRY\par。因為我需要的是我定義的參考書目的摘錄

\documentclass{scrreprt}
\usepackage{pgffor}

\begin{document}

\makeatletter
\newcommand{\filterbib}[1]{
  % Requires enumitem package.
  \nocite{#1}% ensure that the entries are in the bibliography.
  \def\bibitem[##1]##2##3\par{
    \edef\fb@keyA{##2}
    \foreach \fb@keyB in {#1}{
      \ifx\fb@keyA\fb@keyB \item ##3\fi
    }
  }
  \begingroup
  \renewenvironment{thebibliography}[1]{
    \itemize
  }{\enditemize}
  \InputIfFileExists{\jobname.bbl}{}{%
    \PackageWarning{kdb:backmatter}{No file \jobname.bbl}%
  }%
  \endgroup
}

\filterbib{Adles2008prb,Eisenthal2006,Bauer2015}

\bibliographystyle{draftabbrev}
\bibliography{library}

\end{document}

解決方案很粗糙,但有效。一些限制:

  • 引文始終添加到主要參考書目中。
  • 引文的順序始終與參考書目中的順序相同(有意)。
  • 儘管 \nocite 缺乏對無效金鑰的檢查應該照顧好這個。
  • 取決於 .bbl 檔案的格式:例如,如果最後一個引用和 \end{thebibliography} 之間沒有空白行,則會失敗。

相關內容