Видалення таємничих цитат
Помилки, відсутні проходи, неправильний шлях, невідповідність BibTeX і Biber.
Очищення таємничих цитат
Симптом
Документ компілюється, але там, де має з’явитися цитата, ви побачите жирний знак питання [?], а журнал містить такі рядки, як LaTeX Warning: Citation 'knuth84' undefined. Іноді це стосується кожної цитати, іноді лише однієї чи двох. Оскільки це радше попередження, ніж помилка, PDF-файл усе ще створюється, і позначки легко пропустити, доки читач не вкаже на них.
Чому це відбувається
LaTeX не розпізнає цитати безпосередньо. Під час першого проходу він записує кожен запитуваний ключ у допоміжний файл. Потім серверна програма (bibtex або biber) шукає ці ключі у вашій базі даних .bib і записує відформатовані записи. Ще два проходи LaTeX згортають результати. Знак питання означає, що на момент останнього проходу для цього ключа не існувало відформатованого запису. Кожна причина цього симптому є певним способом порушення цього трубопроводу.
Опрацюйте причини по порядку
Спочатку перевірте сам ключ. \cite{knuth84} і @article{knuth1984,...} є різними рядками, і збіг є точним, включаючи регістр. Знайдіть у файлі .bib ключ, названий у попередженні; друкарська помилка з будь-якої сторони є найпоширенішою причиною, і перше попередження про відсутність ключа в журналі є тим, що потрібно шукати.
Далі переконайтеся, що виконано повний цикл компіляції. Послідовність LaTeX, потім bibtex або biber, потім LaTeX ще двічі. Одна компіляція ніколи не може вирішити цитати, оскільки серверна частина ще не запущена. Oleafly запускає весь цикл автоматично, але збірка вручну або неправильно налаштований редактор можуть зупинитися після першого проходу.
По-третє, перевірте шлях до бази даних. \bibliography{refs} і \addbibresource{refs.bib} визначаються відносно основного файлу, тому база даних у вкладеній папці має бути записана як bib/refs або bib/refs.bib. Неправильний шлях тихо зазнає невдачі і зазвичай забирає з собою весь список посилань; дивіться Порожня бібліографія для більшої помилки.
Нарешті, зіставте серверну частину з системою. Документ, який завантажує biblatex, має бути оброблений за допомогою biber. Подача в нього класичного bibtex не дає корисних результатів, і кожне цитування залишається знаком питання незалежно від того, скільки разів ви перекомпілюєте.
Якщо нічого не допомагає
Застарілі допоміжні файли можуть зберігатися в старому, зламаному стані. Видаліть файли .aux, .bbl і .blg поруч із вашим документом і перебудуйте його з нуля. Також варто прочитати файл .blg, перш ніж його видаляти: це власний журнал серверної програми, і в ньому явно вказані відсутні бази даних і неправильні записи.