philosophy-modern 为 bib-style,philosophy-verbose 为 cite-style

philosophy-modern 为 bib-style,philosophy-verbose 为 cite-style

我正在用 LaTeX 写我的第二篇论文,但这次我的教授对参考书目要求更“严格”。每次我使用 时\footfullcite,脚注中的引用必须使用完整的模式(如样式中一样philosophy-verbose),但文档末尾的参考书目必须像样式一样philosophy-modern。我尝试过这两种样式的不同组合,我读过“biblatex-philosophy 包”的文档,但一无所获。

适合参考书目的代码是:

\begin{filecontents*}{\jobname.bib}
@article{test,
    title = {Synthesis of Enantiopure Alcohols},
    volume = {71},
    number = {17},
    journal = {J. Org. Chem.},
    author = {Test T.},
    month = aug,
    year = {2006}
}
\end{filecontents*}

\documentclass{report}
\usepackage[
    bibstyle=philosophy-modern,
    citestyle=philosophy-verbose,
    backend=biber]{biblatex}
\addbibresource{\jobname.bib}
\begin{document}

\printbibliography

First\footfullcite[9]{test}, second\footfullcite[18]{test} and third time.\footfullcite{test}

\end{document}

并且我的代码几乎正确(因为没有显示 Id 和 Ibidem)是\footfullcite

\begin{filecontents*}{\jobname.bib}
@article{test,
    title = {Synthesis of Enantiopure Alcohols},
    volume = {71},
    number = {17},
    journal = {J. Org. Chem.},
    author = {Test T.},
    month = aug,
    year = {2006}
}
\end{filecontents*}

\documentclass{report}
\usepackage[
    style=philosophy-verbose,
    backend=biber]{biblatex}
\addbibresource{\jobname.bib}
\begin{document}

\printbibliography

First\footfullcite[9]{test}, second\footfullcite[18]{test} and third time.\footfullcite{test}

\end{document}

请问有人遇到我这个问题吗?

答案1

首先,使用\footcite和来调用所引用项目的 bibdriver。然而,bibdriver 来自 styl ,而其余的引用则由文件控制。这两种风格在某种程度上发生了冲突。\footfullcite\usedriver.bbx.cbx\usedriver

似乎biblatex-philsophy已经有了适当的代码来确保您可以在参考书目之外正确使用 bib 驱动程序。

不过,调用重置宏并不容易。由于代码是作为 的选项编写的\printbibliography,因此我们可以将其恢复为\csuse{KV@blx@bib2@restoreclassic@default}

所以你可以尝试

\AtEveryCite{\csuse{KV@blx@bib2@restoreclassic@default}}

这将为您提供引文中 bib 驱动程序的“经典”布局。

或者,您可以仅将对宏的调用插入到cite:full需要的地方。

\renewbibmacro*{cite:full}{%OK
  \iftoggle{cbx:shorthandintro}
    {\usebibmacro{cite:full:citepages}%
     \global\toggletrue{cbx:fullcite}%
     \printtext[bibhypertarget]{%
       \usedriver
         {\csuse{KV@blx@bib2@restoreclassic@default}%
          \iftoggle{cbx:scauthorscite}
            {\DeclareNameAlias{sortname}{scdefault}}%
            {\DeclareNameAlias{sortname}{default}}}%
         {\thefield{entrytype}}}%
     \usebibmacro{shorthandintro}}%
  {\usebibmacro{cite:shorthand}}}

平均能量损失

\documentclass{article}
\usepackage[
    bibstyle=philosophy-modern,
    citestyle=philosophy-verbose,
    backend=biber]{biblatex}
\addbibresource{biblatex-examples.bib}

\renewbibmacro*{cite:full}{%OK
  \iftoggle{cbx:shorthandintro}
    {\usebibmacro{cite:full:citepages}%
     \global\toggletrue{cbx:fullcite}%
     \printtext[bibhypertarget]{%
       \usedriver
         {\csuse{KV@blx@bib2@restoreclassic@default}%
          \iftoggle{cbx:scauthorscite}
            {\DeclareNameAlias{sortname}{scdefault}}%
            {\DeclareNameAlias{sortname}{default}}}%
         {\thefield{entrytype}}}%
     \usebibmacro{shorthandintro}}%
  {\usebibmacro{cite:shorthand}}}

\begin{document}
\printbibliography

First\footcite[9]{sigfridsson}, second\footcite[18]{sigfridsson} and third time.\footcite{sigfridsson} and\footcite{cicero} lorem\footcite{sigfridsson}
\end{document}

示例输出

请注意,我使用了\footcite而不是\footfullcite来正确处理“同上”及其后续的简短引用。

相关内容