I have a huge .bib file generated automatically from Papers for Mac and all the capitalization in the .bib is already the way I want it, but it doesn't have {} brackets on word like RNA.
Is there a way to force BibTeX to keep the capitalization rather than change some words to lowercase?
(note that even letters in the middle of words get lower-cased). To protect words that should always be capitalized, you enclose them in braces.
BibLaTeX is the succesor format of BibTeX, it is the more modern format, which enhances bibtex. JabRef supports both formats. In the context of JabRef the main difference is just the different entry types and corresponding fields.
The TeX primitive commands \uppercase and \lowercase are set up by default to work only with the 26 letters a–z and A–Z. The LaTeX commands \MakeUppercase and \MakeLowercase commands also change characters accessed by commands such as \ae or \aa .
BibTeX stands for a file format - with file extension of . bib - that contains a bibliography or a list of references. As an external, flat-file database, this BibTex file can be initially created and stored within the Zotero or EndNote software program; Then in order to be used in conjunction with a LaTeX .
I agree with Killian that the right thing is to put {}s to conserve capitalisation, but I don't recommend doing this always, since the behaviour is wrong in some contexts, and not automatisable, but instead the right thing with Bibtex is to do the following:
1
], but not protecting them yet);From {B}rouwer to {H}ilbert
;The definition of {S}tandard {ML}
; and{W}ittgenstein's Poker: {T}he story of a ten-minute argument
.Don't protect lowercase letters: this prevents Bibtex from converting the string to all-caps, which is required by some obscure bibliographical styles.
If you have been using a spell-checker, then the contents of its database will, with luck, contain nearly all of the material you need to know to capitalise properly: spell-checker's store information on which words are all-caps, and which are capitalised as proper names. If you can programmatically match words against this, then you can generate your Bibtex database automatically, with more than a little work, but it's maybe a two-hour project.
Tiresomely, Bibtex can't be used to get all bibliographies right, since different citation styles actually have different lists of non-significant words. However, in practice hardly anyone ever cares about the differences, so one can come up with a standard list of non-capitalised words.
[1
] - Significant words:"a", all two-letter actual words, "the", "and", "some", all one-word prepositions, and all one-word pronouns would be an acceptable list of non-significant words , I think, to nearly all publishers.
If you prefer to edit the bibtex style (.bst
) rather than the bibliography (.bib
), you can search for occurences of change.case$
in it. This is the function that capitalizes or title-izes fields that are not people names.
Typically, for the title field, you should find something like title "t" change.case$
. Since you want the title unmodified, replace that by just title
.
In that case you should just add {} around each entire title, which has the same effect and should be easy to do automatically.
I was getting the same issue with a title such as:
title = {blah blah AB blah AB blah}
turning out as:
"blah blah ab blah ab blah"
Using Charles Stewart's suggestion, I changed my title to:
title = {blah blah {A}{B} blah {A}{B} blah}
Now my title turns out right:
blah blah AB blah AB blah
Hope this helps.
One alternative to using {curly brackets} is this:-
Check your root folder for .bbl file, where .bbl is your BiBteX database, after you run pdflatex for the first time and then run bibtex on your BiBteX database file.bbl.
Open this *.bbl file in an editor of your choice.
The file would look like this:
\begin{thebibliography}{10}
\expandafter\ifx\csname url\endcsname
\relax
\def\url#1{\texttt{#1}}
\fi
\expandafter\ifx\csname urlprefix\endcsname
\relax\def\urlprefix{URL }
\fi
\bibitem{label}.....
Edit this *.bbl file to meet your requirements and now run the pdflatex command on your .tex file. This should give you the desired result.
By this method you can edit the bibliography in any manner. You can even add names with accented characters.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With