This is my first question here, so apologies if I miss any conventions.
I'm writing a dissertation in LaTeX. My sources are in Mendeley, which is generating a BibTeX file. I'm using the natbib
package with the plainnat
style.
The first problem that I faced with this was that most of the URLs in the bibliography went off the edge of the page because TeX didn't know how to linebreak them. The natbib documentation suggested that if the url
package was loaded, this would Just Work. It mostly did, but it left me with a more subtle problem:
With the url package loaded, URLs are treated similarly to \verb
environments – in particular, it is no longer necessary to escape special characters such as _
. This means that I have two options:
- I can turn on the Mendeley option that escapes special characters in its BibTeX export. This means that my printed URLs contain things like
url\_with\_underscore
. - I can turn off that Mendeley option so that it doesn't escape the special characters. This means that all the other fields in the bibliography have trouble (e.g.
&
characters getting lost as they're not escaped).
So, ways that occur to me to go about fixing this:
(a) Find a way to stop the url package from treating things like \_
as verbatim
(b) Find a different way to get URLs to linebreak in the bibliography
(c) Manually edit my .bib
file before compiling for the last time, removing escapes from URLs.
I would really love to not do (c) 😉
Any ideas?
Best Answer
I'm using
biber
to automatically remove the escapes (the option (c) in the question, which I seem unable to avoid) as follows:biber --tool library.bib
and a
biber.conf
with the following simple regex map:Not ideal, but until Mendeley starts providing the option to not LaTeX-escape for the URL field in particular (or at least make it optional), it will do. See also the Mendeley bug report.