
Ao usar os \footcite
comandos com o biblatex, não fica claro como as vírgulas de separação no texto devem ser tratadas. Por exemplo, \footcite{key1},\footcite{key2}
será problemático no texto por causa de uma vírgula normal separando dois expoentes. Em vez disso, \footcite{key1}\textsuperscript{,}\footcite{key2}
deve ser preferido, mas parece problemático. Qual o caminho certo para alcançar o resultado esperado?
Responder1
Ofnpct
pacote pode ser usado para isso.Embora seu objetivo principal seja outroele também pode lidar com vários \footcite
comandos, desde que \footcite
sejam adicionados aos fnpct
comandos conhecidos de. O exemplo abaixo foi descaradamente emprestado deA resposta de Marco Daniel. Observe que o código abaixo é para a versão 1.0 do fnpct (lançado em janeiro de 2021).
\documentclass{article}
\usepackage[style=authortitle,dashed=false]{biblatex}
\addbibresource{biblatex-examples.bib}
\usepackage{fnpct}
\AdaptNote\footcite{oo+m}[footnote]{%
\setfnpct{dont-mess-around}%
\IfNoValueTF{#1}
{#NOTE{#3}}
{\IfNoValueTF{#2}
{#NOTE[#1]{#3}}
{#NOTE[#1][#2]{#3}}}}
\begin{document}
Text\footcite{knuth:ct:a}
Text\footcite{knuth:ct:b}\footcite{ctan}
Text\footcite{knuth:ct:c}\footcite{companion}\footcite{knuth:ct:d}
Text\footcite{knuth:ct:a}\footcite{knuth:ct:b}\footcite{knuth:ct:c}\footcite{knuth:ct:d}\footcite{companion}
\printbibliography
\end{document}
Responder2
Não conheço uma maneira de usar biblatex
, mas posso sugerir um comando autodefinido:
\documentclass{article}
\usepackage[style=authortitle,dashed=false]{biblatex}
\addbibresource{biblatex-examples.bib}
\usepackage{xparse}
\ExplSyntaxOn
\clist_new:N \l__pluton_input_clist
\NewDocumentCommand \myfootcite { m }
{
\int_compare:nNnTF
{ \clist_count:n { #1 } } > { 1 }
{ \__pluton_myfootcites:n { #1 } }
{ \footcite { #1 } }
}
\cs_set:Npn \__pluton_myfootcites:n #1
{
\clist_set:Nx \l__pluton_input_clist { #1 }
\int_case:nnn { \clist_count:N \l__pluton_input_clist }
{
{ 0 } { \footnote{\bfseries empty~argument} }
{ 1 } { \footcite{ \clist_item:Nn \l__pluton_input_clist { 1 } } }
{ 2 } { \footcite{ \clist_item:Nn \l__pluton_input_clist { 1 } }
\textsuperscript{,}
\footcite{ \clist_item:Nn \l__pluton_input_clist { 2 } } }
}
{
\footcite{ \clist_item:Nn \l__pluton_input_clist { 1 } }
\textsuperscript{,}
\clist_pop:NN \l__pluton_input_clist \l_tmpa_tl
\__pluton_myfootcites:n { \l__pluton_input_clist }
}
}
\ExplSyntaxOff
\begin{document}
Text\myfootcite{knuth:ct:a}
Text\myfootcite{knuth:ct:b,ctan}
Text\myfootcite{knuth:ct:c,companion,knuth:ct:d}
Text\myfootcite{knuth:ct:a,knuth:ct:b,knuth:ct:c,knuth:ct:d,companion}
\printbibliography
\end{document}
Responder3
Se você deseja que as referências sejam colocadas em linhas separadas nas notas de rodapé, considere redefinir \multicitedelim
para adicionar uma quebra de linha se (e somente se) o comando de citação produzir notas de rodapé.
\documentclass{article}
\usepackage[style=authortitle]{biblatex}
\renewcommand*{\multicitedelim}{\iffootnote{\newline}{\addsemicolon\space}}
\renewcommand{\bibfootnotewrapper}[1]{\bibsentence #1}
\usepackage{scrextend}
\deffootnote{1.7em}{1em}{\textsuperscript{\thefootnotemark}}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@misc{A01,
author = {Author, A.},
year = {2001},
title = {Alpha},
}
@misc{B02,
author = {Buthor, B.},
year = {2002},
title = {Bravo},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\null\vfill% just for the example
Some text \parencite{A01,B02}.
Some text.\footcite{A01,B02}
\printbibliography
\end{document}