Estou usando a aula de livros Tufte para escrever minha tese. Estou tendo um pouco de dificuldade em colocar as referências. Em primeiro lugar, quero que as citações tenham a aparência [1-4]
em vez de [1,2,3,4]
. estou a usar
\setcitestyle{square,numbers,sort&compress}
e também
\bibliographystyle{unsrtnat}
\bibliography{sample-handout}
Mas ainda estou recebendo citações com format [1;2;3;4]
. Além disso, parece que não está reorganizando a opção, sort&compress
pois a mostra em vermelho. Observe que estou usando \citep{}
ao citar uma referência.
Também estou recebendo erros como
Erro de entrada de pacote: caractere Unicode (U+2009)(inputenc) não configurado para uso com LaTeX. C.~Monroe, W.
mesmo quando eu coloco
\usepackage[utf8]{inputenc} % Ensure UTF-8 encoding is used
e
Faltando $ inserido. ...bloco \doi{10.1364/CLEO_QELS.2016.FTh4C.1}
A citação parece
@article{White:16,
author = {Andrew G. White},
booktitle = {Conference on Lasers and Electro-Optics},
journal = {Conference on Lasers and Electro-Optics},
keywords = {Biology; Chemistry; Detectors},
pages = {FTh4C.1},
publisher = {Optica Publishing Group},
title = {Photonic Quantum Simulation},
year = {2016},
url = {https://opg.optica.org/abstract.cfm?URI=CLEO_QELS-2016-FTh4C.1},
doi = {10.1364/CLEO_QELS.2016.FTh4C.1},
abstract = {We review photonic quantum simulation, its use in biology, chemistry, computer science and physics, and its prospects for scaling given the latest advances in quantum photonics, notably in sources, detectors, and nonlinear interactions.},
}
Responder1
Embora não tenha conseguido confirmar imediatamente a partir da fonte do tufte-book
, suspeito que as redefinições dos comandos cite impedem sort&compress
a entrada em vigor. No entanto, se você definir esta opção quando natbib
for carregada, neste caso usando \PassOptionsToPackage
antes de carregar a classe, o comportamento de classificação e compactação será preservado.
Isso Missing $ inserted
é causado por um _
caractere sem escape no doi
campo. O url
campo também possui esse caractere, mas esse campo é analisado literalmente enquanto doi
é analisado como texto normal, portanto _
é visto como um subscrito para o qual o modo matemático (ou seja, $
) é necessário. A solução para isso é, portanto,
doi = {10.1364/CLEO\_QELS.2016.FTh4C.1},
Código completo:
\begin{filecontents}[overwrite]{\jobname.bib}
@article{White:16,
author = {Andrew G. White},
booktitle = {Conference on Lasers and Electro-Optics},
journal = {Conference on Lasers and Electro-Optics},
keywords = {Biology; Chemistry; Detectors},
pages = {FTh4C.1},
publisher = {Optica Publishing Group},
title = {Photonic Quantum Simulation},
year = {2016},
url = {https://opg.optica.org/abstract.cfm?URI=CLEO_QELS-2016-FTh4C.1},
doi = {10.1364/CLEO\_QELS.2016.FTh4C.1},
abstract = {We review photonic quantum simulation, its use in biology, chemistry, computer science and physics, and its prospects for scaling given the latest advances in quantum photonics, notably in sources, detectors, and nonlinear interactions.},
}
@misc{White:17,
author = {John White},
title = {Number 17},
year = {2017}
}
@misc{White:18,
author = {Mary White},
title = {Number 18},
year = {2018}
}
\end{filecontents}
\PassOptionsToPackage{square,numbers,sort&compress}{natbib}
\documentclass{tufte-book}
%\setcitestyle{square,numbers,sort&compress}
\title{Sort \& Compress}
\author{with Tufte Book}
\begin{document}
\maketitle
\chapter{Some cite commands}
\citep{White:16,White:17,White:18}
\bibliographystyle{unsrtnat}
\bibliography{\jobname}
\end{document}
Resultado:
Para os caracteres utf8, você não fornece a fonte da entrada ofensiva. No entanto, o erro em geral é bem conhecido e refere-se ao fato de que o pdfLaTeX só pode lidar com uma quantidade limitada de caracteres utf8 nativamente (basicamente ascii estendido, portanto letras latinas com diacríticos), e se você tiver outros caracteres utf8, então você precisa configure-os individualmente usando \DeclareUnicodeCharacter
(ou use um pacote que configure as coisas, por exemplo, para CJK).
Para este carácter específico U+2009 isto não é necessário, no entanto, trata-se de um 'espaço fino' que provavelmente foi inserido na entrada por engano. Você pode tentar encontrar o caractere usando inspeção visual ou um editor hexadecimal, por exemplo, ou apenas digitar novamente a entrada (portanto, não copie e cole, na verdade digite novamente do zero).