home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #26 / NN_1992_26.iso / spool / comp / text / tex / 13075 < prev    next >
Encoding:
Internet Message Format  |  1992-11-12  |  3.3 KB

  1. Path: sparky!uunet!charon.amdahl.com!pacbell.com!ames!agate!doc.ic.ac.uk!uknet!ieunet!tcdcs!maths.tcd.ie!longvalley!cjmchale
  2. From: cjmchale@dsg.cs.tcd.ie (Ciaran McHale)
  3. Newsgroups: comp.text.tex
  4. Subject: merging BibTeX bibliographies
  5. Message-ID: <1992Nov12.184758.4760@dsg.cs.tcd.ie>
  6. Date: 12 Nov 92 18:47:58 GMT
  7. Organization: DSG, Dept. of Computer Science, Trinity College Dublin
  8. Lines: 59
  9.  
  10. Our group has been using LaTeX and BibTex for the last few years. At the
  11. moment, most people maintain their own, separate bibliographies. We
  12. would like to be able to merge them all into a single group-wide
  13. bibliography.
  14.  
  15. There are a few technical issues involved (e.g., clashing of citation
  16. keys) but from some back-of-an-envelope notes we think it should be
  17. possible to overcome these.
  18.  
  19. Here's a brief overview of how I see the system working
  20.  
  21. 1. A tool to merge BibTeX files. The resultant, merged file will contain
  22. entries whose key is simply, say, "foo-999" (the keys will be unique but
  23. it doesn't matter what they are) and the entries will contain an extra
  24. field, which will be ignored by the standard BibTeX styles. This extra
  25. field will contain, say, the key(s) used in the pre-merged entry,
  26. keywords etc.
  27.  
  28. 2. A replacement for bibtex called, say, "newbibtex". This will read the
  29. document's .aux file for the \citation commands and search in the common
  30. bibliography file for entries which contain the citation label. Of
  31. course, this citation label needed appear as the actual citation key of
  32. the bibtex entries; it could appear in any of the entry's fields. Any
  33. entries which match are copied to a file, tmp.bib. A tmp.aux file is
  34. created which simply contains \citation commands corresponding to all
  35. the entries in tmp.bib along with the \bibstyle command from the
  36. original document's .aux file. We also write into tmp.aux a
  37. \bibdata{tmp.bib} command. We then run "bibtex tmp" and
  38. rename the resultant tmp.bbl file to <document-name>.bbl, changing
  39. the citation key of each \bibitem to match what was given the the
  40. original \citation commands. (An optional extra at this point is to
  41. write some \bibcite commands into the document's .aux file so that LaTeX
  42. will pick up the citation information the next time it is run rather
  43. than having to run it twice.)
  44.  
  45. Thus uing "newbibtex" with the merged bibliography file should yield
  46. results similar to using "bibtex" on non-merged bibliographies so we
  47. have backwards compatibility. The scheme outlined above also might
  48. allow for more flexible citation labels. Rather than having to specify
  49. a unique key, the \cite command might contain several pieces of
  50. information such as author's name and year of publication. (Certainly a
  51. lot more intuitive than something like
  52. "powerful-synchronisation-mechanism-24" which is basically what many of
  53. us currently have.) As long as "newbibtex" can find a unique entry
  54. which matches this information, this will be acceptable. If the
  55. citation information is not detailed enough to yield a unique entry
  56. then "newbibtex" can complain in some informative manner.
  57.  
  58.  
  59. Of course, we don't want to reinvent the wheel, so if anybody has tried
  60. something like this before and would be willing to share their
  61. experiences (or source code) then that would be apprecriated.
  62.  
  63.  
  64. Ciaran.
  65. -- 
  66. ---- Ciaran McHale (cjmchale@dsg.cs.tcd.ie)
  67. \bi/ Department of Computer Science, Trinity College, Dublin 2, Ireland.
  68.  \/  Telephone: +353-1-7021539 FAX: +353-1-6772204
  69.