我对表格/表中的引用有疑问。
我使用带有样式的 biblatexverbose-ibid
和包footnote
来使引用在表格/表格中工作:在这里我使用\savenotes
和\spewnotes
从我的表格中检索引用。问题是,我显然没有得到想要的,\autocite
而是得到了其他一些引用样式,总是来自 biblatex 的东西\fullcite
。
看看我的 MWE:在引入简写后,它也应该被使用\autocite
!但在我的表格中,我总是得到一个完整的引用。此外,我的 text-cite 7 应该知道表格中引入的简写,但它却不知道。
有什么想法可以让footnote
-package 与 biblatex 一起工作吗?
\RequirePackage{filecontents}
\begin{filecontents*}{bibl.bib}
@BOOK{something,
title={{Fulltitle with many many characters}},
shorthand={SHORTHAND},
address = {City},
publisher = {Publ},
year = {1961},
language = {{Latin}},
}
@BOOK{another,
title={{Another Fulltitle with many many characters}},
shorthand={ANOTHERSHORTHAND},
address = {City},
publisher = {Publ},
year = {1963},
language = {{Latin}},
}
\end{filecontents*}
\documentclass{article}
\usepackage{caption}
\usepackage{placeins}
\usepackage{footnote}
\usepackage[
style=verbose-ibid,
backend=biber,
bibwarn=true,
]{biblatex}
\addbibresource{bibl.bib}
\begin{document}
bla\autocite[1]{something}
bla\autocite[2]{something}
%table
\newcommand{\tabcolA}{p{\dimexpr 0.33\linewidth-2\tabcolsep}}
\savenotes
\begin{table}[ht]
\begin{tabular}{|\tabcolA | \tabcolA | \tabcolA |}
\hline
header & header & header \\
\hline
some text with footnote\autocite[3]{something} & sometext & some text with footnote\autocite[4]{something} \\
some text with footnote\autocite[5]{another} & sometext & some text with footnote\autocite[6]{another} \\
\hline
\end{tabular}
\caption{Differences in some texts}
\label{tab:mytextdiff}
\end{table}
\FloatBarrier
\spewnotes
bla\autocite[7]{another}. bla\autocite[8]{something}
\end{document}
输出:
答案1
感谢 moewe 和这个精彩的代码片段这里,我可以整理出一个工作代码:通过一些手动工作(参见下面的代码),现在表格中的脚注应该像biblatex
-footnotes 一样,并与hyperref
-package 一起工作。(footnote
-package 帮不上忙。)
\RequirePackage{filecontents}
\begin{filecontents*}{bibl.bib}
@BOOK{something,
title={{Fulltitle with many many characters}},
shorthand={SHORTHAND},
address = {City},
publisher = {Publ},
year = {1961},
language = {{Latin}},
}
@BOOK{another,
title={{Another Fulltitle with many many characters}},
shorthand={ANOTHERSHORTHAND},
address = {City},
publisher = {Publ},
year = {1963},
language = {{Latin}},
}
\end{filecontents*}
% HEADER
\documentclass{article}
\usepackage{caption}
\usepackage{placeins}
\usepackage[
style=verbose-ibid,
backend=biber,
bibwarn=true,
]{biblatex}
\usepackage{hyperref}
\addbibresource{bibl.bib}
\usepackage{alphalph}
\makeatletter
\newcommand{\Footnotemark}{%
\footnotemark%
\expandafter\global\expandafter\let\csname saved@Href@\alphalph{\value{footnote}}\endcsname%
\Hy@footnote@currentHref%
}
\newcommand{\BeforeFootnotetext}{%
\stepcounter{footnote}%
\expandafter\let\expandafter\Hy@footnote@currentHref\csname saved@Href@\alphalph{\value{footnote}}\endcsname%
}
\makeatother
\begin{document}
\setlength{\parindent}{0mm}
autocite-footnote, introducing shorthand\autocite[1]{something}\\
autocite-footnote, using shorthand\autocite[2]{something}
\newcounter{fncounter}\setcounter{fncounter}{\value{footnote}}%save the fn-counter
%table
\newcommand{\tabcolA}{p{\dimexpr 0.33\linewidth-2\tabcolsep}}
\begin{table}[ht]
\begin{tabular}{|\tabcolA | \tabcolA | \tabcolA |}
\hline
header & header & header \\
\hline
use shorthand in table\Footnotemark & sometext & somtext \\
a note, note a cite\Footnotemark & sometext & introduce a shorthand in table\Footnotemark \\
\hline
\end{tabular}
\caption{Differences in some texts}
\label{tab:mytextdiff}
\end{table}
\FloatBarrier
\setcounter{footnote}{\value{fncounter}}%restore the fncounter and add the foonotetexts:
\BeforeFootnotetext%do this before each \footcitetext or \footnote-statment
\footcitetext[3]{something}%3 is the PAGEnumber!
\BeforeFootnotetext
\mkbibfootnotetext{A note without punctation? Will be added by biblatex}
\BeforeFootnotetext
\footcitetext[5]{another}%6 is the PAGEnumber!
\clearpage
autocite, using shorthand\autocite[6]{something}.\\
autocite, using shorthand introduced in table\autocite[7]{another}.
\printbibliography
\printshorthands
\end{document}