TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

What is the correct way of organizing the bibliography: Is it better to have only one .bib file which is shared by all TeX files, or am I supposed to have one .bib file for each TeX file (each paper)?

share|improve this question
up vote 11 down vote accepted

Work habits obviously vary from author to author, and what works well for one person may be inferior for many others. However, having to maintain separate bib files for each working paper you write doesn't seem like it could be optimal, especially because there's likely going to be a fair amount of duplication across the bib files you'd have to create for each of these papers.

For what it's worth, here's my approach to managing bibliography files: I use only one "master" bib file for all of my working papers. Incidentally, when writing scholarly papers, I generally use WinEdt 5.6 as the front end, and I rely on the associated BibMacros utilities package to help me manage create, edit, format, and update my bib entries. (Update Nov 2013: There's an updated version of the BibMacros package that works with versions 7 and 8 of WinEdt; see http://winedt.org/Config/menus/BibTeX.php.)

Later on, when a paper is accepted for publication by a journal and I need to submit the final tex, bib, and graphics files to get the piece published, I run one of the BibMacro utilities called "Extract from Aux". This WinEdt macro (i) extracts all entries actually used in the paper from the master bib file and (ii) places them into a new bib file. Once the new bib file has been created, I simply adjust the \bibliography command in the main tex file to point to the new bib file. It is this new bib file, which by construction contains only the entries actually used in the paper, that gets submitted to the journal (along with all other required files).

share|improve this answer
Seems like someone should write up a package to recreate WinEdt's BibMacros from within LaTeX. Unless, of course, this already exists...? – Werner Feb 28 '12 at 18:47
@Werner -- I use bibtool to do this on Linux. It doesn't handle crossref-ed entries unfortunately, but it does extract @string's. Very useful when you need it. – jon Feb 28 '12 at 22:12

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.