abntex/biblatex-abnt

Expressões reduzidas apenas na mesma página (NBR10520)

tonidandel opened this issue · 12 comments

Olá amigo,
conforme a norma NBR10520, item 7.1.4 informa que as citações reduzidas em notas de rodapé (idem, ibidem, op.cit. ...) "só podem ser usadas na mesma página ou folha da citação a que se referem."

Se não estiver enganado, penso que isso resolveria a maior parte das issues. Há alguma forma de informar ao compilador que se está na mesma página?

dbmrq commented

Bem observado. O BibLaTeX tem a macro \iffirstonpage, acho que daria pra usá-la pra fazer a citação por extenso quando é a primeira de uma nova página, contemplando esse requisito. Só não vou ter tempo de ver isso agora, infelizmente. Mas se você quiser se aventurar e fazer uma PR seria ótimo.

dbmrq commented

Parece que esse já é o comportamento do estilo authortitle-ibid, no qual eu me baseei:

Immediately repeated citations are replaced by the abbreviation ‘ibidem’ unless the citation is the first one on the current page or double page spread […]

http://mirrors.ibiblio.org/CTAN/macros/latex/contrib/biblatex/doc/examples/61-style-authortitle-ibid-biber.pdf

Não sei por que está diferente no biblatex-abnt e agora não vou conseguir testar, mas assim que possível eu dou uma olhada se ninguém mais puder ajudar.

dbmrq commented

É, olhando um pouco mais, parece que o biblatex-abnt já considera se a citação é a primeira da página. Mas talvez não esteja imprimindo sempre o resultado correto. Então seria bom ter um exemplo mínimo reproduzindo o problema que você mencionou.

Dependendo de como for, podemos usar o comando \citereset quando encontrarmos a primeira citação da página com o comando \iffirstonpage.

Beleza... vou observar mais aqui. ;)

Tenho o mesmo problema do @tonidandel.
A partir da discussão de vocês, fui olhar o código (embora eu nunca tenha feito algo de tão profundo no LaTeX :p) e pensei se não pode haver algum problema que impeça o biblatex-abnt de perceber a mudança de página. Porque as condições na definição do footcite parecem corretas. O \iffirstonpage sempre acompanha um outro teste e no meu texto não observei algum problema que possa estar relacionado a esse outro teste, de modo que me ocorre que está vindo dele a resposta incorreta por alguma razão.
Obrigado desde já pela atenção e, no geral, pelo projeto, que tem ajudado bastante.

dbmrq commented

É, também não sei por que não está funcionando corretamente. Caso vocês queiram ajudar, o próximo passo seria criar um exemplo mínimo que mostre o problema com os diversos comandos de citação relevantes. Se puderem enviar o exemplo aqui, também me ajudaria a dar uma olhada quando eu puder. Aí dá pra testá-lo usando o estilo authortitle-ibid também. Se funcionar direitinho com esse estilo, podemos comparar o código dele com o do biblatex-abnt pra tentar entender onde foi introduzido o problema.

exemplo_biblatex.zip

Nesse exemplo, na terceira página a citação aparece como Ibid., sem que a citação anterior se dê na mesma página, mas na anterior. Espero que sirva para o teste.

dbmrq commented

Acrescentando a opção "oneside" do abntex2 resolve o problema do meu exemplo, mas não resolve o do meu trabalho.
No entanto, reparei que não tenho problemas com o ibid. nem com o id., mas com o op.cit. e loc.cit. Ainda não conferi no código pra ver se procede, mas observando os casos de erro no meu trabalho, acho que o problema pode ser o seguinte: é possível que o op.cit e o loc.cit estejam apenas conferindo se são a primeira referência na página e se a obra de tal autor é a última dele a ter sido referenciada. Ao invés, contudo, de conferir se é a primeira ocorrência, eles deveriam conferir se aquela obra referenciada foi citada naquela mesma página.

Reformulei o exemplo para expor um caso de op.cit. indevido. E neste, como o authortitle-ibid não tem um recurso similar (pelo que pesquisei superficialmente), ele não apresenta nenhum problema.
exemplo2_biblatex.zip

PS.: De quebra, parece-me que, ao contrário do authortitle-ibid, por causa das normas da abnt, mesmo para um texto twoside, o ibid. deveria ficar restrito à mesma página.

dbmrq commented

@dbmrq,

Acabei conseguindo resolver localmente o problema, o suficiente para entregar meu tcc no final do ano passado. Não dou uma pull-request porque não sabia o que estava fazendo, então não tenho certeza se está resolvido da maneira correta.
Segue abaixo o arquivo que eu modifiquei do biblatex-abnt na minha máquina:

abnt-ibid.zip

A questão me parece ser a seguinte: para o opcit e o loccit não basta não serem o firstonpage, é preciso que eles não sejam a primeira citação àquela obra na página. Sendo assim, na verificação para esses casos, substituí os testes de \iffirstonpage por um \iflastciteonsamepage que eu copiei tal e qual daqui: https://tex.stackexchange.com/questions/35673/biblatex-is-there-a-command-analogous-to-ifciteseen-but-within-one-page

Além disso, foi preciso fazer uma cópia de uma definição que estava apenas em abnt.cbx, de firstword.

dbmrq commented

Ah, que beleza, parece ótimo. Assim que eu puder passo as mudanças aqui pro repositório. Obrigado!