abntex / biblatex-abnt

:books: Estilo para BibLaTeX compatível com as normas da ABNT
126 stars 27 forks source link

Pontuação errada em anos desconhecidos #82

Open Retroker opened 3 years ago

Retroker commented 3 years ago

O arquivo dev/biblatex-abnt/bibtex/bib/biblatex-abnt/NBR6023-2018.bib possui a seguinte entrada:

@misc{florida2000,
    keywords        = {7.12.3},
    author          = {{Florida Museum of Natural History}},
    title           = {1931-2000 Brazil's confirmed unprovoked shark attacks},
    location        = {Gainesville},
    year            = {[2000?].},
    sortyear        = {2000},
    note            = {1 mapa, color. Escala 1:40.000.000},
    url             = {http://www.flmnh.ufl.edu/fish/Sharks/
                       statistics/Gattack/map/Brazil.jpg},
    urldate         = {2002-01-15},
    options         = {nosn},
    % É necessário pôr o ponto depois do ano manualmente
    % porque o biblatex acha que o ponto de interrogação já é suficiente.
}

Ao usar \citep{florida2000} tem-se a seguinte referência, com a pontuação correta: Captura de tela 2021-06-16 205442

Porém, no texto, o ponto final também é exibido:

Captura de tela 2021-06-16 205421

A minha sugestão de correção (inspirada por essa resposta) seria fazer:

@misc{florida2000,
    keywords        = {7.12.3},
    author          = {{Florida Museum of Natural History}},
    title           = {1931-2000 Brazil's confirmed unprovoked shark attacks},
    location        = {Gainesville},
    year            = {[2000?]},
    sortyear        = {2000},
    note            = {\unskip. 1 mapa, color. Escala 1:40.000.000},
    url             = {http://www.flmnh.ufl.edu/fish/Sharks/
                       statistics/Gattack/map/Brazil.jpg},
    urldate         = {2002-01-15},
    options         = {nosn},
    % É necessário por o ponto depois do ano manualmente, no campo seguinte,
    % porque o biblatex acha que o ponto de interrogação já é suficiente.
}

Que gera a mesa referência, sem o ponto final na chamada:

Captura de tela 2021-06-16 205632 Captura de tela 2021-06-16 205610

dbmrq commented 3 years ago

Tem razão, obrigado! Vou deixar aqui aberto para corrigir no arquivo quando tiver tempo.

leonartex commented 1 year ago

Se não estou enganado o que está acontecendo nessa situação é que o ponto de interrogação entra na parte de controle de pontuação do biblatex, aí gera essa situação. E não creio que tenha algo que possa ser feito sem acarretar em problemas em outras partes. Outra alternativa nessa situação, para não depender desse tipo de adaptação no registro, é adicionar o ponto de interrogação entre cifrões, para configurar como expressão matemática. A única limitação dessa abordagem é que o ponto de interrogação não será o mesmo da fonte utilizada, se você não configurar isso através de um pacote que lida com fontes para matemática como o unicode-math.

Exemplo:

@misc{florida2000,
    keywords        = {7.12.3},
    author          = {{Florida Museum of Natural History}},
    title           = {1931-2000 Brazil's confirmed unprovoked shark attacks},
    location        = {Gainesville},
    year            = {[2000$?$]},
    sortyear        = {2000},
    note            = {1 mapa, color. Escala 1:40.000.000},
    url             = {http://www.flmnh.ufl.edu/fish/Sharks/
                       statistics/Gattack/map/Brazil.jpg},
    urldate         = {2002-01-15},
    options         = {nosn},
}

Para utilizar o ponto de interrogação você só precisa adicionar uma fonte OpenType com suporte matemático antes e depois configurar para a sua fonte utilizada, dou como exemplo o caso utilizando a fonte Arial:

\usepackage{unicode-math} 
\setmainfont{Arial} % Comando do fontspec
\setmathfont{FiraMath-Regular} % Uma fonte com suporte para matemática
\setmathfont[range={"00021-"02033}]{Arial}

Esse range define quais caracteres você quer utilizar, no caso, foram adicionados um conjunto de caracteres Unicode, que vão de U+00021 até U+02033. E você pode definir um intervalo bem menor também, só para adicionar os caracteres que você precisa. Uma observação: Essa abordagem tem que ser utilizada com ressalvas, pois os caracteres, ao estarem em uma expressão matemática, não serão afetados por destaques de texto, como negrito e itálico.