超引文和脚注

超引文和脚注

我使用\newcommand合并supercitefootfullcite在脚注中引用参考书目,并在参考书目中引用相同的参考书目。我无法合并引文的编号。

\documentclass[a4paper,11pt]{book}
\usepackage{geometry} 
\usepackage[T1]{fontenc}
\usepackage[french]{babel}    
\usepackage[autopunct=true,giveninits=true,autocite=superscript,backend=bibtex,sorting=none, sortlocale=auto,notetype=foot+end,style=numeric-comp,maxnames=10,maxbibnames=100,doi=true, isbn=true,url=false,eprint=true]{biblatex}
\addbibresource{library.bib} 
\usepackage{csquotes}

\newcommand{\PresCite}[1]{\autocite{#1} \footfullcite{#1}}

\usepackage[colorlinks=true, frenchlinks=true, linkcolor=black,filecolor=magenta,urlcolor=blue, citecolor=gray]{hyperref}
\urlstyle{same}
%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}

bla bla bla \PresCite{Toto1900,Toto1901,Toto1902}

\printbibliography  
\end{document}

结果是:

  1. 在文本中

    在此处输入图片描述

  2. 在脚注中

    在此处输入图片描述

  3. 在书目中

    在此处输入图片描述

我想要的是:

  1. 在文本中

    在此处输入图片描述

  2. 在脚注中

    在此处输入图片描述

  3. 在参考书目中

    在此处输入图片描述

答案1

由于 已经提供了脚注标记\autocite,因此可能的解决方案是避免\footfullcite使用没有标记的脚注,而是使用\fullcite脚注内部没有标记的脚注。例如,可以按照以下方式制作没有标记的脚注隐藏脚注编号,这将创建一个hyperref关于空锚点的警告,该警告可以在以下情况下被抑制避免超链接警告:忽略空锚点

通常\fullcite不会打印引用标签(类似于\footfullcite),但你可以通过重新定义命令来添加编号\fullcite,如下所示在文本中添加完整引用条目的编号/标签?。在下面的代码中,无需重新定义,而是创建\fullcite一个新的宏,以便您仍然可以在其他地方使用原始宏。\myfullcite\fullcite

宏的重新定义还允许您在多次引用的情况下在每个引用后插入换行符,以模拟多个脚注的出现。

剩下的就是一些间距问题,使参考书目条目在脚注中对齐(彼此对齐以及与常规脚注对齐)。第一个条目可以-1em在脚注开头用负号纠正,而其他行可以在内部用负号纠正\myfullcite

把所有内容放在一起:

\documentclass[a4paper,11pt]{book}
\usepackage[height=5cm]{geometry} 
\usepackage[T1]{fontenc}
\usepackage[french]{babel}    
\usepackage[autopunct=true,giveninits=true,autocite=superscript,backend=bibtex,sorting=none, sortlocale=auto,notetype=foot+end,style=numeric-comp,maxnames=10,maxbibnames=100,doi=true, isbn=true,url=false,eprint=true]{biblatex}
\usepackage{xcolor}
\addbibresource{library.bib} 
\usepackage{csquotes}

\makeatletter
\def\blfootnote{\xdef\@thefnmark{}\@footnotetext}
\makeatother
\DeclareCiteCommand{\myfullcite}
  {\usebibmacro{prenote}}
   {{\printtext[labelnumberwidth]{% New
        \printfield{prefixnumber}% New
        \printfield{labelnumber}}} % New
  \usedriver
     {\DeclareNameAlias{sortname}{default}}
     {\thefield{entrytype}}}
  {\par\hspace{-1em}}
  {\usebibmacro{postnote}}

\newcommand{\PresCite}[1]{%
\autocite{#1}%
\begin{NoHyper}%
\blfootnote{\hspace{-1em}\myfullcite{#1}}%
\end{NoHyper}
}

\usepackage[colorlinks=true, frenchlinks=true, linkcolor=black,filecolor=magenta,urlcolor=blue, citecolor=gray]{hyperref}
\urlstyle{same}
%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
regular cite \cite{Toto1899}

bla bla bla \PresCite{Toto1900,Toto1901,Toto1902}
normal\footnote{normal footnote} footnotes\footnote{second footnote}

just one \PresCite{Toto1899}

and again \PresCite{Toto1899}

\printbibliography  
\end{document}

结果(页面尺寸缩小至 5cm,用于geometry截图):

在此处输入图片描述

请注意,引用打印为[1]等而不是1.,以区别于普通脚注。如果您不想这样,那么您可以按如下方式重新定义:

\DeclareCiteCommand{\myfullcite}
  {\usebibmacro{prenote}}
   {{   \printfield{prefixnumber}% New
        \printfield{labelnumber}.} % New
   \usedriver
     {\DeclareNameAlias{sortname}{default}}
     {\thefield{entrytype}}}
  {\par\hspace{-0.85em}}
  {\usebibmacro{postnote}}

请注意,略微减少的负空间0.85em不是1em

在此处输入图片描述

还要注意,\PresCite对同一参考文献重复的命令会创建重复的脚注,并具有相同的编号,因为该编号取自参考列表,而不是取自脚注计数器\footfullcite


或者,如果您只想要压缩脚注,并且数字不必与参考书目编号相对应,那么您可以使用该footnoterange包(请参阅压缩连续的脚注标记) 并通过在 cite 命令的前代码和后代码以及循环代码中的命令中\DeclareCiteCommand包含环境来创建其中的(一系列)脚注(参见footnoterange\footnote手动的请参阅第 180 页的 BibLaTeX)。

\documentclass[a4paper,11pt]{book}
\usepackage[height=5cm]{geometry} 
\usepackage[T1]{fontenc}
\usepackage[french]{babel}    
\usepackage[autopunct=true,giveninits=true,autocite=superscript,backend=bibtex,sorting=none, sortlocale=auto,notetype=foot+end,style=numeric-comp,maxnames=10,maxbibnames=100,doi=true, isbn=true,url=false,eprint=true]{biblatex}
\usepackage{xcolor}
\usepackage{footnoterange}
\addbibresource{library.bib} 
\usepackage{csquotes}

\DeclareCiteCommand{\PresCite}
  {\usebibmacro{prenote}\begin{footnoterange}}
   {\footnote{\usedriver{\DeclareNameAlias{sortname}{default}}
     {\thefield{entrytype}}}}
  {}
  {\usebibmacro{postnote}\end{footnoterange}}

\usepackage[colorlinks=true, frenchlinks=true, linkcolor=black,filecolor=magenta,urlcolor=blue, citecolor=gray]{hyperref}
\urlstyle{same}
%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
regular cite \cite{Toto1899}

bla bla bla \PresCite{Toto1900,Toto1901,Toto1902}normal\footnote{normal footnote} footnotes\footnote{second footnote}
\printbibliography  
\end{document}

在此处输入图片描述

相关内容