biblatex 和 \fullcite:末尾的点缺失

biblatex 和 \fullcite:末尾的点缺失

嘿,

我使用\fullcite打印文本中的参考书目条目。在那里,我漏掉了最后一个点(年份后面的点),因为它在参考文献列表中正确显示为\printbibliography

我希望在使用该\fullcite命令时有最后一个点。

例子:

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{Trzesniowski:2011,
    address = {Wiesbaden},
    author = {Trzesniowski, M.},
    edition = {3},
    publisher = {Vieweg-Teubner},
    subtitle = {Handbuch mit praktischen Konstruktionsbeispielen},
    title = {CAD mit CATIA V5},
    year = {2011}}


\end{filecontents}

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

\begin{document}

\fullcite{Trzesniowski:2011}

\printbibliography
\end{document}

答案1

看看这个:

\DeclareCiteCommand{\fullcite} {\usebibmacro{prenote}} {\usedriver {} {\thefield{entrytype}}\addperiod} {\multicitedelim} {\usebibmacro{postnote}}

输出:

在此处输入图片描述

答案2

书目条目末尾的句点\finentrypunct通常是通过调用bibmacro\finentry中的宏生成的finentry

biblatex明确不设置\finentrypuntc\fullcite这使得在一次引用中处理多个引用变得稍微容易一些\fullcite,并且让用户可以完全控制以下标点符号。

一般来说,我认为\fullcite应该谨慎使用,所以我想知道这里的具体用例是什么。也许有更优雅的方法可以\fullcite完全避免显式,并且已经附带所需的周期或使获取周期变得更容易。

标准定义\footcite可以在biblatex.def(v3.18b 中第 2157-2163 行)我将添加一个\finentry(排版\finentrypunct)如下

\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[backend=biber,]{biblatex}

\DeclareCiteCommand{\fullcite}
  {\usebibmacro{prenote}}
  {\usedriver
     {\DeclareNameAlias{sortname}{default}}
     {\thefield{entrytype}}}
  {\multicitedelim}
  {\usebibmacro{postnote}%
   \finentry}

\addbibresource{biblatex-examples.bib}

\begin{document}
Lorem

\fullcite{sigfridsson}

\printbibliography
\end{document}

答案3

一个简单但不太复杂的解决方案就是简单地在命令后面放置一个句号\fullcite .,例如,这应该会产生相同的结果,只是它比 scd 的解决方案不那么优雅:

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{Trzesniowski:2011,
    address = {Wiesbaden},
    author = {Trzesniowski, M.},
    edition = {3},
    publisher = {Vieweg-Teubner},
    subtitle = {Handbuch mit praktischen Konstruktionsbeispielen},
    title = {CAD mit CATIA V5},
    year = {2011}}


\end{filecontents}

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

\begin{document}

\fullcite{Trzesniowski:2011}.

\printbibliography
\end{document}

看起来应该是这样的: 打印示例

相关内容