%20Como%20suprimir%20o%20campo%20da%20p%C3%A1gina%20no%20footcite%20se%20a%20nota%20estiver%20presente%3F.png)
Para minha tese, estou usando o biblatex
style oxnotes
, que é um estilo bastante semelhante ao verbose e usa notas de rodapé.
Se eu usar o \footcite
comando com uma nota de postagem especificada, para uma entrada com números de página (por exemplo, um capítulo de livro), a nota de rodapé será impressaamboso número da página e a pós-nota. Eu gostaria de dizer biblatex
para suprimir o número da página em uma nota de rodapé quando uma nota posterior estiver presente.
Atualmente, um \footcite
como este:
\footcite[1-5]{barkan2003}
...irá produzir a nota de rodapé
Barkan, 'Título',Título do periódico(2003),1-20 em 1-5.
Gostaria de suprimir as páginas (ou seja, "1-20") em \footcite
comandos onde uma nota de postagem é especificada, de modo que leia
Barkan, 'Título',Título do periódico(2003), 1-5.
Tentei o seguinte comando, mas ele suprime o campo de páginas tanto nas citações quanto na bibliografia.
\DeclareFieldFormat{pages}{%
\iffieldundef{pages}{}{\iffieldundef{postnote}{}{\clearfield{pages}}}}
Existe uma maneira de biblatex
suprimir o campo de páginasapenasnos \footcite
comandos e não na bibliografia?
Qualquer ajuda em uma solução seria muito apreciada!
\documentclass{article}
\usepackage[style=oxnotes]{biblatex}
\RequireBibliographyStyle{oxref}
\begin{filecontents*}{document.bib}
@article{barkan2003,
title = {Title},
journaltitle = {Journal Title},
date = {2003},
pages = {1-20},
author = {Barkan},
}
\end{filecontents*}
\addbibresource{document.bib}
\begin{document}
Text.\footcite[1-5]{barkan2003}
\end{document}
Responder1
biblatex-oxref
O estilo de citação do oxnotes
é baseado verbose.cbx
e suporta todas as suas opções. Em particular, você pode usar a opção citepages
, que está documentada noverbose
exemplo de estilo. (Em versões anteriores, biblatex-oxref
alguns aspectos citepages
eram um pouco contra-intuitivos, mas isso foi melhorado na versão 1.1, consultehttps://github.com/alex-ball/biblatex-oxref/issues/8.)
O
oxnotes
-defaultcitepages=separate
forneceWolfgang A. Herrmann et al., “Um carbeno carbocíclico como um ligante catalisador eficiente para reações de acoplamento C – C”,Angew. Química. Internacional Ed.45/23 (2006), 3859–62 em 3860–1.
Com
citepages=omit
opages
campo é automaticamente omitido se a pós-nota for numéricaWolfgang A. Herrmann et al., “Um carbeno carbocíclico como um ligante catalisador eficiente para reações de acoplamento C – C”,Angew. Química. Internacional Ed.45/23 (2006), 3860–1.
citepages=suppress
omite opages
campo mesmo que a nota final não seja numérica.citepages=permit
(o padrão dosverbose
estilos padrão) mostraria apenas os dois camposWolfgang A. Herrmann et al., “Um carbeno carbocíclico como um ligante catalisador eficiente para reações de acoplamento C – C”,Angew. Química. Internacional Ed.45/23 (2006), 3859–62, 3860–1.
Então você poderia tentar
\documentclass{article}
\usepackage[style=oxnotes, citepages=omit]{biblatex}
\addbibresource{biblatex-examples.bib}
\begin{document}
Text.\footcite[3860-3861]{herrmann}
\printbibliography
\end{document}
A \DeclareFieldFormat
ideia não funcionou porque \iffieldundef{pages}{}{\iffieldundef{postnote}{}{\clearfield{pages}}}
não é um comando que imprima nada. Diz apenas biblatex
para excluir pages
em uma determinada situação. Mas \DeclareFieldFormat
deve ser usado para informar biblatex
como imprimir coisas, compare com o padrão
\DeclareFieldFormat{pages}{\mkpageprefix[bookpagination]{#1}}
ou o mais simples
\DeclareFieldFormat{title}{\mkbibemph{#1}}
A \DeclareFieldFormat
deve sempre envolver a #1
.
Em essência, esta definição exclui o campo no caso que você deseja (e não excluiria o campo da bibliografia, porque \iffieldundef{postnote}
seria verdade lá), mas substitui a definição que informa biblatex
como imprimir o pages
campo em primeiro lugar, o que significa que ele sempre é descartado na saída.
Excluir um campo somente em \DeclareFieldFormat
pode causar pontuação falsa porque biblatex
pensa que imprimiu algo quando não o fez.
Portanto, eu não tentaria prosseguir com essa abordagem específica aqui.
Observe que o
\RequireBibliographyStyle{oxref}
não foi necessário. Em geral, você não deveria usar \RequireBibliographyStyle
ou \RequireCitationStyle
em um documento. O estilo é carregado através biblatex
da style
opção (ou separadamente através bibstyle
de e citestyle
).