图表列表中的自动引用

图表列表中的自动引用

我使用biblatexwithbiber作为后端。我想使用命令为我的图表创建引文\cite,但在图表标题或相应页面的脚注中隐藏其任何输出。

相反,引用(包括页码)应仅打印在 中\listoffigures,而不是标题中。我使用的是 样式verbose-ibid。我希望图表列表中的参考文献默认以该样式的缩写形式打印。如果之前未在文中引用过,则还应将所引用的书籍添加到参考书目中。

我目前在做什么:

\cite将命令放在[]里面\caption[]{}以避免在图表页面上输出任何引文,并在图表列表内打印引文。所引用的书籍也会添加到参考书目中。

除了图表列表中的引用样式(始终打印完整引用)之外,一切都很好。

有没有关于如何在图表列表中默认实现缩写引用样式的想法?有没有比我的方法更好的方法?

梅威瑟:

\documentclass{article}
\usepackage{graphicx}
\usepackage[backend=biber,style=verbose-ibid,hyperref=false]{biblatex}
\addbibresource{mwe.bib}

\begin{filecontents}{mwe.bib}
@Book{knuth1986,
    Title                    = {The \TeX book},
    Author                   = {Donald~Ervin Knuth},
    Publisher                = {Addison-Wesley},
    Year                     = {1986}
}
\end{filecontents}

\begin{document}

\begin{figure}
    \centering
    \includegraphics{example-image-a}
    \caption[{\cite[][5]{knuth1986}}]{This is a caption}
\end{figure}

\printbibliography
\listoffigures
\end{document}

答案1

您可以在此处使用 Moewe 答案中的简短引用代码:https://tex.stackexchange.com/a/236894/29873

\documentclass{article}
\usepackage{graphicx}
\usepackage[backend=biber,style=verbose-ibid,hyperref=false]{biblatex}
\addbibresource{mwe.bib}

\newbibmacro*{shrtcite}{%
  \usebibmacro{cite:citepages}%
  \iffieldundef{shorthand}
    {\usebibmacro{cite:short}}
    {\usebibmacro{cite:shorthand}}}

\DeclareCiteCommand{\shrtcite}
  {\usebibmacro{prenote}}
  {\usebibmacro{citeindex}%
   \usebibmacro{shrtcite}}
  {\multicitedelim}
  {\usebibmacro{cite:postnote}}


\begin{filecontents}{mwe.bib}
@Book{knuth1986,
    Title                    = {The \TeX book},
    Author                   = {Donald~Ervin Knuth},
    Publisher                = {Addison-Wesley},
    Year                     = {1986}
}
\end{filecontents}

\begin{document}

\begin{figure}
    \centering
    \includegraphics{example-image-a}
    \caption[{\shrtcite[][5]{knuth1986}}]{This is a caption}
\end{figure}

\printbibliography
\listoffigures
\end{document}

在此处输入图片描述

相关内容