Caracteres de basura en el archivo .bib

Caracteres de basura en el archivo .bib

Estoy usando un .bibarchivo para enumerar mis referencias. Cuando ejecuto Biber en TeXstudio, las referencias se compilan correctamente, pero aparece la siguiente advertencia:

WARN - BibTeX subsystem: C:\Users\[user]\AppData\Local\Temp\biber_tmp_WQTH\thesis_references.bib_15484.utf8, line 4, warning: 3 characters of junk seen at toplevel

Eché un vistazo al .bibarchivo y busqué caracteres problemáticos, pero no veo nada que pueda estar causando el error. También intenté reemplazar la referencia superior que podría contener el error, pero no ayudó. El archivo mencionado en la advertencia parece ser una especie de archivo temporal que vuelve a desaparecer después de la compilación (?).

Así es como se ve mi archivo .bib:

% Encoding: UTF-8


@article{aguzzi2013microglia,
    title={Microglia: scapegoat, saboteur, or something else?},
    author={Aguzzi, Adriano and Barres, Ben A and Bennett, Mariko L},
    journal={Science},
    volume={339},
    number={6116},
    pages={156--161},
    year={2013},
    publisher={American Association for the Advancement of Science}
}
etc.

¿Me estoy perdiendo de algo?

Respuesta1

Si copia y pega su código en un convertidor Unicode de modo quehttps://w3c.github.io/xml-entities/unicode-names.html usted encontraráque tienes un invisible

U+feff ZERO WIDTH NO-BREAK SPACE

En la lineadespuésel comentario. Dado que ese carácter invisible no se oculta a Biber con un carácter de comentario, produce esta advertencia inofensiva. (Al igual que BibTeX, Biber ignora el texto fuera de las entradas. Pero a diferencia de BibTeX, Biber advierte sobre posibles caracteres basura a menos que el texto fuera de las entradas esté marcado como un comentario con %. BibTeX no reconoce% como un carácter de comentario. Consultecomentarios de código en un archivo biblatex,¿Se desaconsejan los comentarios en un archivo BibTeX?,Comentar secciones de texto en el archivo bib.)

Siempre puedes optar por ignorar las advertencias de "carácter basura" de Biber, son sólo una señal de que algopodríaestar mal en su .bib, como una llave o una coma faltante o falsa. Pero no tiene por qué significar nada malo. Por lo general, obtendrá un error grave si algo anda realmente mal.

El truco consiste eneliminar el personaje invisible

% Encoding: UTF-8

@article{aguzzi2013microglia,
  title   = {Microglia: scapegoat, saboteur, or something else?},
  author  = {Aguzzi, Adriano and Barres, Ben A. and Bennett, Mariko L.},
  journal = {Science},
  volume  = {339},
  number  = {6116},
  pages   = {156--161},
  year    = {2013},
}

Biber no se quejará del comentario en sí.

Tenga en cuenta que normalmente es mejor terminar las iniciales del nombre con un punto en lugar de simplemente indicar la letra.

Respuesta2

Tuve un problema similar y no pude encontrar ninguna respuesta, ni siquiera con un convertidor Unicode.

El truco fue eliminar un símbolo oculto justo delante del "@artículo".

Respuesta3

Aquí hay un script para imprimir líneas con caracteres que no son ASCII. Se supone que la línea se puede decodificar usando UTF-8:

import sys

with open(sys.argv[1], 'rb') as f:
    data = f.readlines()

for n, line in enumerate(data):
    try:
        line.decode('ascii')
    except UnicodeDecodeError as e:
        line = line.decode('utf-8')
        print(f'{n}: {line}')
        print(f'  ^-- {e}')

Uso:python3 nonascii.py filename.bib

información relacionada