使用 backref 和手动引用

使用 backref 和手动引用

我正在使用 biblatex 和 biber,有时我会为特殊引用创建自己的命令,如下所示:

\newcommand{\met}[3]{(\emph{Met.} #1\textsuperscript{#2}#3)\nocite{metaphysics}\mancite}
\met{987}{b}{5}

\met{987}{b}{5}

事实上,我也使用了 backref 选项,因此常规引用在参考书目中有反向引用,例如“(参见第 5-7 页)”。

然而,对于我自己的自定义引用,不会发生同样的事情,因为它\nocite会将条目添加到参考书目中,但并不关心它是从哪里调用的。

那么,是否有不同的方式来定义我的\met命令和其他类似的命令来解决这个问题并有指向它们的反向引用?

我实际上正在尝试编写自己的 biblatex 风格,所以我想我可以声明一个不打印任何内容的 cite 命令并使用它……但这听起来不是一个非常优雅的解决方案,所以我希望有更好的方法来实现我想要的。


编辑:这是 MWE:

\documentclass{article}

\usepackage[backend=biber, backref]{biblatex}
\addbibresource{bib.bib}

\newcommand{\met}[3]{(\emph{Met.} #1\textsuperscript{#2}#3)\nocite{metaphysics}\mancite}

\begin{document}

    `Twas brillig, and the slithy toves did gyre and gimble in the wabe; all mimsy were the borogoves, and the mome raths outgrabe. \met{987}{b}{5} %\cite{metaphysics}

    \printbibliography

\end{document}

bib.bib包括:

@incollection{metaphysics,
    Address = {New Jersey},
    Author = {Aristotle},
    Booktitle = {The Complete Works of {Aristotle}},
    Editor = {Jonathan Barnes},
    Publisher = {Princeton University Press},
    Title = {Metaphysics},
    Volume = {2},
    Year = {1995}}

取消注释\cite{metaphysics}会在参考文献中添加“(引自第 1 页)”。我希望我的\met命令也能实现这一点。


编辑2:

我之所以使用,@incollection是因为我之前使用 bibtex 和疯狂的巴西风格文件,这是我唯一的选择。现在我正尝试一点一点地转向 biblatex。

无论如何,shorttitle对于这种特定情况,使用似乎很棒,我甚至不知道它存在。但是我必须为许多特定情况声明许多新的引用命令。而且有些引用可能实际上与参考书目条目无关。例如,要引用前苏格拉底哲学家,我会使用 Diels-Kranz 编号。因此,我可以为巴门尼德建立一个参考书目条目,为赫拉克利特建立一个参考书目条目,它们都会被引用为“(28B1 DK)”之类的内容。

因此,我认为最好有类似的东西,\nocite除了它可以与反向引用一起工作,不是吗?

我的第一个想法是声明一个 cite 命令\hiddencite,并让它什么都不打印(或者可能只是prenoteand postnote)。我只是想知道是否没有更好的选择,因为我刚开始使用 biblatex,对它不太了解。

答案1

.bib请注意,我认为该条目被错误分类了。亚里士多德的形而上学不是对选集的贡献。相反,它本身就是一本书。在这里,它只是被收录在他的更大作品集中。因此,@bookinbook我觉得这种分类比……更合适@incollection

这会改变参考书目条目的格式,但这似乎是正确的:标题不应该用引号引起来,而应该用斜体,就像您的速记标签中所暗示的那样,見面。

shorttitle这意味着我们可以使用类似于条目字段的东西.bib来进行简写。(或者,您也可以查看字段shorthand。)

我可能会考虑为自定义引用命令采用不同的语法,但如果您已经在问题中使用了该语法,那么实现起来会很麻烦。

在这种情况下,类似这样的方法可能会有效:

\begin{filecontents}{\jobname.bib}
@bookinbook{metaphysics,
    Address = {New Jersey},
    Author = {Aristotle},
    maintitle = {The Complete Works of {Aristotle}},
    Editor = {Jonathan Barnes},
    Publisher = {Princeton University Press},
    Title = {Metaphysics},
    Volume = {2},
    Year = {1995},
    shorttitle = {Met.}}
\end{filecontents}
\documentclass{article}

\usepackage[backend=biber, backref]{biblatex}
\addbibresource{\jobname.bib}

\DeclareCiteCommand{\aristcite}[\mkbibparens]{\usebibmacro{prenote}}{\printfield[citetitle]{labeltitle}}{\multicitedelim}{\usebibmacro{postnote}}
\newcommand*\met[3]{\aristcite[][#1\textsuperscript{#2}#3]{metaphysics}}

\begin{document}

  `Twas brillig, and the slithy toves did gyre and gimble in the wabe; all mimsy were the borogoves, and the mome raths outgrabe. \met{987}{b}{5}

    \printbibliography

\end{document}

返回引用自定义引文

顺便问一下,你有这句话的希腊文原文吗?;)

相关内容