Problemas con la codificación de latin1 con biblatex

Problemas con la codificación de latin1 con biblatex

Tengo un pequeño problema con biblatexel paquete. Cuando intento compilar (con pdflatex), aparece el siguiente mensaje de ADVERTENCIA:

Process started: biber.exe AuxDirectory/"example"

INFO - This is Biber 2.12
INFO - Logfile is 'AuxDirectory/example.blg'
INFO - Reading 'AuxDirectory/example.bcf'
INFO - Found 2 citekeys in bib section 0
INFO - Processing section 0
INFO - Looking for bibtex format file 'example.bib' for section 0
INFO - LaTeX decoding ...
INFO - Found BibTeX data source 'example.bib'
INFO - Overriding locale 'pt-BR' defaults 'variable = shifted' with 'variable = non-ignorable'
INFO - Overriding locale 'pt-BR' defaults 'normalization = NFD' with 'normalization = prenormalized'
INFO - Sorting list 'none/global//global/global' of type 'entry' with template 'none' and locale 'pt-BR'
INFO - No sort tailoring available for locale 'pt-BR'
INFO - Writing 'AuxDirectory/example.bbl' with encoding 'latin1'
WARN - The entry 'Adam2009' has characters which cannot be encoded in 'latin1'.
       - Recoding problematic characters into macros.
WARN - The entry 'Adam2010' has characters which cannot be encoded in 'latin1'.
       - Recoding problematic characters into macros.
INFO - Output to AuxDirectory/example.bbl
INFO - WARNINGS: 2

Process exited normally

He utilizado el siguiente código mínimo para mi archivo tex:

\documentclass[a4paper,twoside,openright,final]{memoir}%
\usepackage{fouriernc}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{lastpage}
\usepackage{indentfirst}
\usepackage[backend=biber,style=numeric-comp,sorting=none,sortlocale=auto,bibencoding=auto,backref=true,date=year]%
{biblatex}
\usepackage{url}
\usepackage[english,brazilian]{babel}
\usepackage{csquotes}


\settrimmedsize{297mm}{210mm}{*}
\setlength{\trimtop}{0pt}
\setlength{\trimedge}{\stockwidth}
\addtolength{\trimedge}{-\paperwidth}
\settypeblocksize{247mm}{160mm}{*}
\setulmargins{3cm}{*}{*}
\setlrmargins{*}{*}{1.5}
\setmarginnotes{17pt}{51pt}{\onelineskip}
\setheadfoot{\onelineskip}{2\onelineskip}
\setheaderspaces{*}{2\onelineskip}{*}
\checkandfixthelayout
\frenchspacing
\addbibresource{example.bib}

\makeatother


\begin{document}
    \cite{Adam2009}
    \cite{Adam2010}
    \printbibliography
\end{document}

A continuación, también presento un código bibliográfico mínimo con las dos referencias problemáticas.

@Article{Adam2009,
  author    = {Adam, C. and Klimas, P. and S{\'a}nchez-Guill{\'e}n, J. and Wereszczy{\'n}ski, A.},
  title     = {Compact baby Skyrmions},
  journal   = {Physical Review D},
  year      = {2009},
  volume    = {\bfseries 80},
  issue     = {10},
  month     = {11},
  pages     = {105013},
  doi       = {10.1103/PhysRevD.80.105013},
  url       = {https://link.aps.org/doi/10.1103/PhysRevD.80.105013},
  urldate   = {2019-01-31},
  numpages  = {14},
  publisher = {American Physical Society},
}


@Article{Adam2010,
  author       = {Adam, C. and Roma{\'n}czukiewicz, T. and S{\'a}nchez-Guill{\'e}n, J. and Wereszczy{\'n}ski, A.},
  title        = {Investigation of restricted baby Skyrme models},
  journaltitle = {Phys.ical Review D},
  year         = {2010},
  volume       = {\bfseries 81},
  number       = {8},
  month        = {4},
  pages        = {085007},
  doi          = {10.1103/PhysRevD.81.085007},
  url          = {https://link.aps.org/doi/10.1103/PhysRevD.81.085007},
  urldate      = {2019-01-31},
  numpages     = {10},
  publisher    = {American Physical Society},
}

Aparentemente, el problema se debe a que el {\'n}carácter no se puede codificar en ' latin1'. Intenté cambiar el código, pero sin éxito. Estaré realmente agradecido si alguien sabe cómo resolver este problema.

Respuesta1

Este mensaje es solo una advertencia, y puede ignorarlo con seguridad si ha decidido que no vale la pena tomar medidas (es decir, usar utf8en lugar de latin1) (permítame agregar que creo absolutamente que codificar todo en UTF-8 sería la mejor solución aquí, pero tendrás tus razones).

La advertencia se produce porquenorteno está contenido en Latin-1 y, por lo tanto, solo se puede exportar como una combinación de macros de LaTeX en lugar del carácter real si se insiste en Latin-1 (de hecho, Biber es un poco más radical de lo que probablemente sea necesario aquí: escribirá todo el texto). entrada con macros ASCII y no sólo el carácter infractor). Esto es independiente de la entrada de caracteres, ya que Biber transforma todo a UTF-8 internamente para poder realizar la clasificación. Solo le preocupa cómo se escribe el carácter en el .bblarchivo para su posterior procesamiento biblatex.

Puedes evitar la advertencia llamando a Biber con la opción --output-safechars, es decir

biber --output-safechars <filename>

Esto dejará todos los caracteres no ASCII en formato macro y no intentará convertir ningún carácter al rango no ASCII de Latin-1. (Por lo tanto, vería una diferencia .bblsi tuviera una entrada con todos los caracteres Latin-1).


Tenga en cuenta que

volume    = {\bfseries 80},

No es muy semántico. Intentar

volume    = {80},

con

\DeclareFieldFormat[article,periodical]{volume}{\mkbibbold{#1}}% volume of a journal

en cambio.

información relacionada