\fullcite 대안, bst 파일을 사용해야 하는 경우?

\fullcite 대안, bst 파일을 사용해야 하는 경우?

주어진 .bst 파일을 사용해야 하므로 일반 BibTeX만 사용할 수 있습니다.

\fullcite이 상황에서 BibLaTeX와 동등한 것을 얻을 수 있는 방법이 있습니까 ?

답변1

내 설정에서는 bibentry 패키지(참조:본문에서 하나의 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} 사이에 빈 줄이 없으면 실패합니다.

관련 정보