Skill Tracer
Skills › Scientific Agent Skills › citation-management › bibtex_formatting.md

bibtex_formatting.md

908 lines · skills/citation-management/references/bibtex_formatting.md at 5f2bc03

Open on GitHub

Most marks come from matching words in the file, so treat them as pointers.

1# BibTeX Formatting Guide
2
3Comprehensive guide to BibTeX entry types, required fields, formatting conventions, and best practices.
4

BibTeX Formatting Guide

Comprehensive guide to BibTeX entry types, required fields, formatting conventions, and best practices.

Raw lines 1 to 4
5## Overview
6
7BibTeX is the standard bibliography format for LaTeX documents. Proper formatting ensures:
8- Correct citation rendering
9- Consistent formatting
10- Compatibility with citation styles
11- No compilation errors
13This guide covers all common entry types and formatting rules.

Overview

BibTeX is the standard bibliography format for LaTeX documents. Proper formatting ensures:

  • Correct citation rendering
  • Consistent formatting
  • Compatibility with citation styles
  • No compilation errors

This guide covers all common entry types and formatting rules.

Raw lines 5 to 14
15## Entry Types
17### @article - Journal Articles
19**Most common entry type** for peer-reviewed journal articles.
21**Required fields**:
22- `author`: Author names
23- `title`: Article title
24- `journal`: Journal name
25- `year`: Publication year
27**Optional fields**:
28- `volume`: Volume number
29- `number`: Issue number
30- `pages`: Page range
31- `month`: Publication month
32- `doi`: Digital Object Identifier
33- `url`: URL
34- `note`: Additional notes
36**Template**:
37```bibtex
38@article{CitationKey2024,
39 author = {Last1, First1 and Last2, First2},
40 title = {Article Title Here},
41 journal = {Journal Name},
42 year = {2024},
43 volume = {10},
44 number = {3},
45 pages = {123--145},
46 doi = {10.1234/journal.2024.123456},
47 month = jan
49```
51**Example**:
52```bibtex
53@article{Jumper2021,
54 author = {Jumper, John and Evans, Richard and Pritzel, Alexander and others},
55 title = {Highly Accurate Protein Structure Prediction with {AlphaFold}},
56 journal = {Nature},
57 year = {2021},
58 volume = {596},
59 number = {7873},
60 pages = {583--589},
61 doi = {10.1038/s41586-021-03819-2}
63```

@article - Journal Articles

Most common entry type for peer-reviewed journal articles.

Required fields:

  • author: Author names
  • title: Article title
  • journal: Journal name
  • year: Publication year

Optional fields:

  • volume: Volume number
  • number: Issue number
  • pages: Page range
  • month: Publication month
  • doi: Digital Object Identifier
  • url: URL
  • note: Additional notes

Template:

@article{CitationKey2024,
  author  = {Last1, First1 and Last2, First2},
  title   = {Article Title Here},
  journal = {Journal Name},
  year    = {2024},
  volume  = {10},
  number  = {3},
  pages   = {123--145},
  doi     = {10.1234/journal.2024.123456},
  month   = jan
}

Example:

@article{Jumper2021,
  author  = {Jumper, John and Evans, Richard and Pritzel, Alexander and others},
  title   = {Highly Accurate Protein Structure Prediction with {AlphaFold}},
  journal = {Nature},
  year    = {2021},
  volume  = {596},
  number  = {7873},
  pages   = {583--589},
  doi     = {10.1038/s41586-021-03819-2}
}
Raw lines 17 to 64
65### @book - Books
67**For entire books**.
69**Required fields**:
70- `author` OR `editor`: Author(s) or editor(s)
71- `title`: Book title
72- `publisher`: Publisher name
73- `year`: Publication year
75**Optional fields**:
76- `volume`: Volume number (if multi-volume)
77- `series`: Series name
78- `address`: Publisher location
79- `edition`: Edition number
80- `isbn`: ISBN
81- `url`: URL
83**Template**:
84```bibtex
85@book{CitationKey2024,
86 author = {Last, First},
87 title = {Book Title},
88 publisher = {Publisher Name},
89 year = {2024},
90 edition = {3},
91 address = {City, Country},
92 isbn = {978-0-123-45678-9}
94```
96**Example**:
97```bibtex
98@book{Kumar2021,
99 author = {Kumar, Vinay and Abbas, Abul K. and Aster, Jon C.},
100 title = {Robbins and Cotran Pathologic Basis of Disease},
101 publisher = {Elsevier},
102 year = {2021},
103 edition = {10},
104 address = {Philadelphia, PA},
105 isbn = {978-0-323-53113-9}
107```

@book - Books

For entire books.

Required fields:

  • author OR editor: Author(s) or editor(s)
  • title: Book title
  • publisher: Publisher name
  • year: Publication year

Optional fields:

  • volume: Volume number (if multi-volume)
  • series: Series name
  • address: Publisher location
  • edition: Edition number
  • isbn: ISBN
  • url: URL

Template:

@book{CitationKey2024,
  author    = {Last, First},
  title     = {Book Title},
  publisher = {Publisher Name},
  year      = {2024},
  edition   = {3},
  address   = {City, Country},
  isbn      = {978-0-123-45678-9}
}

Example:

@book{Kumar2021,
  author    = {Kumar, Vinay and Abbas, Abul K. and Aster, Jon C.},
  title     = {Robbins and Cotran Pathologic Basis of Disease},
  publisher = {Elsevier},
  year      = {2021},
  edition   = {10},
  address   = {Philadelphia, PA},
  isbn      = {978-0-323-53113-9}
}
Raw lines 65 to 108
109### @inproceedings - Conference Papers
111**For papers in conference proceedings**.
113**Required fields**:
114- `author`: Author names
115- `title`: Paper title
116- `booktitle`: Conference/proceedings name
117- `year`: Year
119**Optional fields**:
120- `editor`: Proceedings editor(s)
121- `volume`: Volume number
122- `series`: Series name
123- `pages`: Page range
124- `address`: Conference location
125- `month`: Conference month
126- `organization`: Organizing body
127- `publisher`: Publisher
128- `doi`: DOI
130**Template**:
131```bibtex
132@inproceedings{CitationKey2024,
133 author = {Last, First},
134 title = {Paper Title},
135 booktitle = {Proceedings of Conference Name},
136 year = {2024},
137 pages = {123--145},
138 address = {City, Country},
139 month = jun
141```
143**Example**:
144```bibtex
145@inproceedings{Vaswani2017,
146 author = {Vaswani, Ashish and Shazeer, Noam and Parmar, Niki and others},
147 title = {Attention is All You Need},
148 booktitle = {Advances in Neural Information Processing Systems 30 (NeurIPS 2017)},
149 year = {2017},
150 pages = {5998--6008},
151 address = {Long Beach, CA}
153```
155**Note**: `@conference` is an alias for `@inproceedings`.

@inproceedings - Conference Papers

For papers in conference proceedings.

Required fields:

  • author: Author names
  • title: Paper title
  • booktitle: Conference/proceedings name
  • year: Year

Optional fields:

  • editor: Proceedings editor(s)
  • volume: Volume number
  • series: Series name
  • pages: Page range
  • address: Conference location
  • month: Conference month
  • organization: Organizing body
  • publisher: Publisher
  • doi: DOI

Template:

@inproceedings{CitationKey2024,
  author    = {Last, First},
  title     = {Paper Title},
  booktitle = {Proceedings of Conference Name},
  year      = {2024},
  pages     = {123--145},
  address   = {City, Country},
  month     = jun
}

Example:

@inproceedings{Vaswani2017,
  author    = {Vaswani, Ashish and Shazeer, Noam and Parmar, Niki and others},
  title     = {Attention is All You Need},
  booktitle = {Advances in Neural Information Processing Systems 30 (NeurIPS 2017)},
  year      = {2017},
  pages     = {5998--6008},
  address   = {Long Beach, CA}
}

Note: @conference is an alias for @inproceedings.

Raw lines 109 to 156
157### @incollection - Book Chapters
159**For chapters in edited books**.
161**Required fields**:
162- `author`: Chapter author(s)
163- `title`: Chapter title
164- `booktitle`: Book title
165- `publisher`: Publisher name
166- `year`: Publication year
168**Optional fields**:
169- `editor`: Book editor(s)
170- `volume`: Volume number
171- `series`: Series name
172- `type`: Type of section (e.g., "chapter")
173- `chapter`: Chapter number
174- `pages`: Page range
175- `address`: Publisher location
176- `edition`: Edition
177- `month`: Month
179**Template**:
180```bibtex
181@incollection{CitationKey2024,
182 author = {Last, First},
183 title = {Chapter Title},
184 booktitle = {Book Title},
185 editor = {Editor, Last and Editor2, Last},
186 publisher = {Publisher Name},
187 year = {2024},
188 pages = {123--145},
189 chapter = {5}
191```
193**Example**:
194```bibtex
195@incollection{Brown2020,
196 author = {Brown, Peter O. and Botstein, David},
197 title = {Exploring the New World of the Genome with {DNA} Microarrays},
198 booktitle = {DNA Microarrays: A Molecular Cloning Manual},
199 editor = {Eisen, Michael B. and Brown, Patrick O.},
200 publisher = {Cold Spring Harbor Laboratory Press},
201 year = {2020},
202 pages = {1--45},
203 address = {Cold Spring Harbor, NY}
205```

@incollection - Book Chapters

For chapters in edited books.

Required fields:

  • author: Chapter author(s)
  • title: Chapter title
  • booktitle: Book title
  • publisher: Publisher name
  • year: Publication year

Optional fields:

  • editor: Book editor(s)
  • volume: Volume number
  • series: Series name
  • type: Type of section (e.g., "chapter")
  • chapter: Chapter number
  • pages: Page range
  • address: Publisher location
  • edition: Edition
  • month: Month

Template:

@incollection{CitationKey2024,
  author    = {Last, First},
  title     = {Chapter Title},
  booktitle = {Book Title},
  editor    = {Editor, Last and Editor2, Last},
  publisher = {Publisher Name},
  year      = {2024},
  pages     = {123--145},
  chapter   = {5}
}

Example:

@incollection{Brown2020,
  author    = {Brown, Peter O. and Botstein, David},
  title     = {Exploring the New World of the Genome with {DNA} Microarrays},
  booktitle = {DNA Microarrays: A Molecular Cloning Manual},
  editor    = {Eisen, Michael B. and Brown, Patrick O.},
  publisher = {Cold Spring Harbor Laboratory Press},
  year      = {2020},
  pages     = {1--45},
  address   = {Cold Spring Harbor, NY}
}
Raw lines 157 to 206
207### @phdthesis - Doctoral Dissertations
209**For PhD dissertations and theses**.
211**Required fields**:
212- `author`: Author name
213- `title`: Thesis title
214- `school`: Institution
215- `year`: Year
217**Optional fields**:
218- `type`: Type (e.g., "PhD dissertation", "PhD thesis")
219- `address`: Institution location
220- `month`: Month
221- `url`: URL
222- `note`: Additional notes
224**Template**:
225```bibtex
226@phdthesis{CitationKey2024,
227 author = {Last, First},
228 title = {Dissertation Title},
229 school = {University Name},
230 year = {2024},
231 type = {{PhD} dissertation},
232 address = {City, State}
234```
236**Example**:
237```bibtex
238@phdthesis{Johnson2023,
239 author = {Johnson, Mary L.},
240 title = {Novel Approaches to Cancer Immunotherapy Using {CRISPR} Technology},
241 school = {Stanford University},
242 year = {2023},
243 type = {{PhD} dissertation},
244 address = {Stanford, CA}
246```
248**Note**: `@mastersthesis` is similar but for Master's theses.

@phdthesis - Doctoral Dissertations

For PhD dissertations and theses.

Required fields:

  • author: Author name
  • title: Thesis title
  • school: Institution
  • year: Year

Optional fields:

  • type: Type (e.g., "PhD dissertation", "PhD thesis")
  • address: Institution location
  • month: Month
  • url: URL
  • note: Additional notes

Template:

@phdthesis{CitationKey2024,
  author = {Last, First},
  title  = {Dissertation Title},
  school = {University Name},
  year   = {2024},
  type   = {{PhD} dissertation},
  address = {City, State}
}

Example:

@phdthesis{Johnson2023,
  author  = {Johnson, Mary L.},
  title   = {Novel Approaches to Cancer Immunotherapy Using {CRISPR} Technology},
  school  = {Stanford University},
  year    = {2023},
  type    = {{PhD} dissertation},
  address = {Stanford, CA}
}

Note: @mastersthesis is similar but for Master's theses.

Raw lines 207 to 249
250### @mastersthesis - Master's Theses
252**For Master's theses**.
254**Required fields**:
255- `author`: Author name
256- `title`: Thesis title
257- `school`: Institution
258- `year`: Year
260**Template**:
261```bibtex
262@mastersthesis{CitationKey2024,
263 author = {Last, First},
264 title = {Thesis Title},
265 school = {University Name},
266 year = {2024}
268```

@mastersthesis - Master's Theses

For Master's theses.

Required fields:

  • author: Author name
  • title: Thesis title
  • school: Institution
  • year: Year

Template:

@mastersthesis{CitationKey2024,
  author = {Last, First},
  title  = {Thesis Title},
  school = {University Name},
  year   = {2024}
}
Raw lines 250 to 269
270### @misc - Miscellaneous
272**For items that don't fit other categories** (preprints, datasets, software, websites, etc.).
274**Required fields**:
275- `author` (if known)
276- `title`
277- `year`
279**Optional fields**:
280- `howpublished`: Repository, website, format
281- `url`: URL
282- `doi`: DOI
283- `note`: Additional information
284- `month`: Month
286**Template for preprints**:
287```bibtex
288@misc{CitationKey2024,
289 author = {Last, First},
290 title = {Preprint Title},
291 year = {2024},
292 howpublished = {bioRxiv},
293 doi = {10.1101/2024.01.01.123456},
294 note = {Preprint}
296```
298**Template for datasets**:
299```bibtex
300@misc{DatasetName2024,
301 author = {Last, First},
302 title = {Dataset Title},
303 year = {2024},
304 howpublished = {Zenodo},
305 doi = {10.5281/zenodo.123456},
306 note = {Version 1.2}
308```
310**Template for software**:
311```bibtex
312@misc{SoftwareName2024,
313 author = {Last, First},
314 title = {Software Name},
315 year = {2024},
316 howpublished = {GitHub},
317 url = {https://github.com/user/repo},
318 note = {Version 2.0}
320```

@misc - Miscellaneous

For items that don't fit other categories (preprints, datasets, software, websites, etc.).

Required fields:

  • author (if known)
  • title
  • year

Optional fields:

  • howpublished: Repository, website, format
  • url: URL
  • doi: DOI
  • note: Additional information
  • month: Month

Template for preprints:

@misc{CitationKey2024,
  author       = {Last, First},
  title        = {Preprint Title},
  year         = {2024},
  howpublished = {bioRxiv},
  doi          = {10.1101/2024.01.01.123456},
  note         = {Preprint}
}

Template for datasets:

@misc{DatasetName2024,
  author       = {Last, First},
  title        = {Dataset Title},
  year         = {2024},
  howpublished = {Zenodo},
  doi          = {10.5281/zenodo.123456},
  note         = {Version 1.2}
}

Template for software:

@misc{SoftwareName2024,
  author       = {Last, First},
  title        = {Software Name},
  year         = {2024},
  howpublished = {GitHub},
  url          = {https://github.com/user/repo},
  note         = {Version 2.0}
}
Raw lines 270 to 321
322### @techreport - Technical Reports
324**For technical reports**.
326**Required fields**:
327- `author`: Author name(s)
328- `title`: Report title
329- `institution`: Institution
330- `year`: Year
332**Optional fields**:
333- `type`: Type of report
334- `number`: Report number
335- `address`: Institution location
336- `month`: Month
338**Template**:
339```bibtex
340@techreport{CitationKey2024,
341 author = {Last, First},
342 title = {Report Title},
343 institution = {Institution Name},
344 year = {2024},
345 type = {Technical Report},
346 number = {TR-2024-01}
348```

@techreport - Technical Reports

For technical reports.

Required fields:

  • author: Author name(s)
  • title: Report title
  • institution: Institution
  • year: Year

Optional fields:

  • type: Type of report
  • number: Report number
  • address: Institution location
  • month: Month

Template:

@techreport{CitationKey2024,
  author      = {Last, First},
  title       = {Report Title},
  institution = {Institution Name},
  year        = {2024},
  type        = {Technical Report},
  number      = {TR-2024-01}
}
Raw lines 322 to 349
350### @unpublished - Unpublished Work
352**For unpublished works** (not preprints - use @misc for those).
354**Required fields**:
355- `author`: Author name(s)
356- `title`: Work title
357- `note`: Description
359**Optional fields**:
360- `month`: Month
361- `year`: Year
363**Template**:
364```bibtex
365@unpublished{CitationKey2024,
366 author = {Last, First},
367 title = {Work Title},
368 note = {Unpublished manuscript},
369 year = {2024}
371```

@unpublished - Unpublished Work

For unpublished works (not preprints - use @misc for those).

Required fields:

  • author: Author name(s)
  • title: Work title
  • note: Description

Optional fields:

  • month: Month
  • year: Year

Template:

@unpublished{CitationKey2024,
  author = {Last, First},
  title  = {Work Title},
  note   = {Unpublished manuscript},
  year   = {2024}
}
Raw lines 350 to 372
373### @online/@electronic - Online Resources
375**For web pages and online-only content**.
377**Note**: Not standard BibTeX, but supported by many bibliography packages (biblatex).
379**Required fields**:
380- `author` OR `organization`
381- `title`
382- `url`
383- `year`
385**Template**:
386```bibtex
387@online{CitationKey2024,
388 author = {{Organization Name}},
389 title = {Page Title},
390 url = {https://example.com/page},
391 year = {2024},
392 note = {Accessed: 2024-01-15}
394```

@online/@electronic - Online Resources

For web pages and online-only content.

Note: Not standard BibTeX, but supported by many bibliography packages (biblatex).

Required fields:

  • author OR organization
  • title
  • url
  • year

Template:

@online{CitationKey2024,
  author = {{Organization Name}},
  title  = {Page Title},
  url    = {https://example.com/page},
  year   = {2024},
  note   = {Accessed: 2024-01-15}
}
Raw lines 373 to 395
396## Formatting Rules

Formatting Rules

Raw lines 396 to 397
398### Citation Keys
400**Convention**: `FirstAuthorYEARkeyword`
402**Examples**:
403```bibtex
404Smith2024protein
405Doe2023machine
406JohnsonWilliams2024cancer % Multiple authors, no space
407NatureEditorial2024 % No author, use publication
408WHO2024guidelines % Organization author
409```
411**Rules**:
412- Alphanumeric plus: `-`, `_`, `.`, `:`
413- No spaces
414- Case-sensitive
415- Unique within file
416- Descriptive
418**Avoid**:
419- Special characters: `@`, `#`, `&`, `%`, `$`
420- Spaces: use CamelCase or underscores
421- Starting with numbers: `2024Smith` (some systems disallow)

Citation Keys

Convention: FirstAuthorYEARkeyword

Examples:

Smith2024protein
Doe2023machine
JohnsonWilliams2024cancer  % Multiple authors, no space
NatureEditorial2024        % No author, use publication
WHO2024guidelines          % Organization author

Rules:

  • Alphanumeric plus: -, _, ., :
  • No spaces
  • Case-sensitive
  • Unique within file
  • Descriptive

Avoid:

  • Special characters: @, #, &, %, $
  • Spaces: use CamelCase or underscores
  • Starting with numbers: 2024Smith (some systems disallow)
Raw lines 398 to 422
423### Author Names
425**Recommended format**: `Last, First Middle`
427**Single author**:
428```bibtex
429author = {Smith, John}
430author = {Smith, John A.}
431author = {Smith, John Andrew}
432```
434**Multiple authors** - separate with `and`:
435```bibtex
436author = {Smith, John and Doe, Jane}
437author = {Smith, John A. and Doe, Jane M. and Johnson, Mary L.}
438```
440**Many authors** (10+):
441```bibtex
442author = {Smith, John and Doe, Jane and Johnson, Mary and others}
443```
445**Special cases**:
446```bibtex
447% Suffix (Jr., III, etc.)
448author = {King, Jr., Martin Luther}
450% Organization as author
451author = {{World Health Organization}}
452% Note: Double braces keep as single entity
454% Multiple surnames
455author = {Garc{\'i}a-Mart{\'i}nez, Jos{\'e}}
457% Particles (van, von, de, etc.)
458author = {van der Waals, Johannes}
459author = {de Broglie, Louis}
460```
462**Wrong formats** (don't use):
463```bibtex
464author = {Smith, J.; Doe, J.} % Semicolons (wrong)
465author = {Smith, J., Doe, J.} % Commas (wrong)
466author = {Smith, J. & Doe, J.} % Ampersand (wrong)
467author = {Smith J} % No comma
468```

Author Names

Recommended format: Last, First Middle

Single author:

author = {Smith, John}
author = {Smith, John A.}
author = {Smith, John Andrew}

Multiple authors - separate with and:

author = {Smith, John and Doe, Jane}
author = {Smith, John A. and Doe, Jane M. and Johnson, Mary L.}

Many authors (10+):

author = {Smith, John and Doe, Jane and Johnson, Mary and others}

Special cases:

% Suffix (Jr., III, etc.)
author = {King, Jr., Martin Luther}

% Organization as author
author = {{World Health Organization}}
% Note: Double braces keep as single entity

% Multiple surnames
author = {Garc{\'i}a-Mart{\'i}nez, Jos{\'e}}

% Particles (van, von, de, etc.)
author = {van der Waals, Johannes}
author = {de Broglie, Louis}

Wrong formats (don't use):

author = {Smith, J.; Doe, J.}  % Semicolons (wrong)
author = {Smith, J., Doe, J.}  % Commas (wrong)
author = {Smith, J. & Doe, J.} % Ampersand (wrong)
author = {Smith J}             % No comma
Raw lines 423 to 469
470### Title Capitalization
472**Protect capitalization** with braces:
474```bibtex
475% Proper nouns, acronyms, formulas
476title = {{AlphaFold}: Protein Structure Prediction}
477title = {Machine Learning for {DNA} Sequencing}
478title = {The {Ising} Model in Statistical Physics}
479title = {{CRISPR-Cas9} Gene Editing Technology}
480```
482**Reason**: Citation styles may change capitalization. Braces protect.
484**Examples**:
485```bibtex
486% Good
487title = {Advances in {COVID-19} Treatment}
488title = {Using {Python} for Data Analysis}
489title = {The {AlphaFold} Protein Structure Database}
491% Will be lowercase in title case styles
492title = {Advances in COVID-19 Treatment} % covid-19
493title = {Using Python for Data Analysis} % python
494```
496**Whole title protection** (rarely needed):
497```bibtex
498title = {{This Entire Title Keeps Its Capitalization}}
499```

Title Capitalization

Protect capitalization with braces:

% Proper nouns, acronyms, formulas
title = {{AlphaFold}: Protein Structure Prediction}
title = {Machine Learning for {DNA} Sequencing}
title = {The {Ising} Model in Statistical Physics}
title = {{CRISPR-Cas9} Gene Editing Technology}

Reason: Citation styles may change capitalization. Braces protect.

Examples:

% Good
title = {Advances in {COVID-19} Treatment}
title = {Using {Python} for Data Analysis}
title = {The {AlphaFold} Protein Structure Database}

% Will be lowercase in title case styles
title = {Advances in COVID-19 Treatment}  % covid-19
title = {Using Python for Data Analysis}  % python

Whole title protection (rarely needed):

title = {{This Entire Title Keeps Its Capitalization}}
Raw lines 470 to 500
501### Page Ranges
503**Use en-dash** (double hyphen `--`):
505```bibtex
506pages = {123--145} % Correct
507pages = {1234--1256} % Correct
508pages = {e0123456} % Article ID (PLOS, etc.)
509pages = {123} % Single page
510```
512**Wrong**:
513```bibtex
514pages = {123-145} % Single hyphen (don't use)
515pages = {pp. 123-145} % "pp." not needed
516pages = {123–145} % Unicode en-dash (may cause issues)
517```

Page Ranges

Use en-dash (double hyphen --):

pages = {123--145}     % Correct
pages = {1234--1256}   % Correct
pages = {e0123456}     % Article ID (PLOS, etc.)
pages = {123}          % Single page

Wrong:

pages = {123-145}      % Single hyphen (don't use)
pages = {pp. 123-145}  % "pp." not needed
pages = {123–145}      % Unicode en-dash (may cause issues)
Raw lines 501 to 518
519### Month Names
521**Use three-letter abbreviations** (unquoted):
523```bibtex
524month = jan
525month = feb
526month = mar
527month = apr
528month = may
529month = jun
530month = jul
531month = aug
532month = sep
533month = oct
534month = nov
535month = dec
536```
538**Or numeric**:
539```bibtex
540month = {1} % January
541month = {12} % December
542```
544**Or full name in braces**:
545```bibtex
546month = {January}
547```
549**Standard abbreviations work without quotes** because they're defined in BibTeX.

Month Names

Use three-letter abbreviations (unquoted):

month = jan
month = feb
month = mar
month = apr
month = may
month = jun
month = jul
month = aug
month = sep
month = oct
month = nov
month = dec

Or numeric:

month = {1}   % January
month = {12}  % December

Or full name in braces:

month = {January}

Standard abbreviations work without quotes because they're defined in BibTeX.

Raw lines 519 to 550
551### Journal Names
553**Full name** (not abbreviated):
555```bibtex
556journal = {Nature}
557journal = {Science}
558journal = {Cell}
559journal = {Proceedings of the National Academy of Sciences}
560journal = {Journal of the American Chemical Society}
561```
563**Bibliography style** will handle abbreviation if needed.
565**Avoid manual abbreviation**:
566```bibtex
567% Don't do this in BibTeX file
568journal = {Proc. Natl. Acad. Sci. U.S.A.}
570% Do this instead
571journal = {Proceedings of the National Academy of Sciences}
572```
574**Exception**: If style requires abbreviations, use full abbreviated form:
575```bibtex
576journal = {Proc. Natl. Acad. Sci. U.S.A.} % If required by style
577```

Journal Names

Full name (not abbreviated):

journal = {Nature}
journal = {Science}
journal = {Cell}
journal = {Proceedings of the National Academy of Sciences}
journal = {Journal of the American Chemical Society}

Bibliography style will handle abbreviation if needed.

Avoid manual abbreviation:

% Don't do this in BibTeX file
journal = {Proc. Natl. Acad. Sci. U.S.A.}

% Do this instead
journal = {Proceedings of the National Academy of Sciences}

Exception: If style requires abbreviations, use full abbreviated form:

journal = {Proc. Natl. Acad. Sci. U.S.A.}  % If required by style
Raw lines 551 to 578
579### DOI Formatting
581**Bare identifier** in the `doi` field:
583```bibtex
584doi = {10.1038/s41586-021-03819-2}
585```
587**Not**:
588```bibtex
589doi = {https://doi.org/10.1038/s41586-021-03819-2} % Don't include URL
590doi = {doi:10.1038/s41586-021-03819-2} % Don't include prefix
591```
593**LaTeX** will format as URL automatically.
595**Note**: No period after DOI field!

DOI Formatting

Bare identifier in the doi field:

doi = {10.1038/s41586-021-03819-2}

Not:

doi = {https://doi.org/10.1038/s41586-021-03819-2}  % Don't include URL
doi = {doi:10.1038/s41586-021-03819-2}              % Don't include prefix

LaTeX will format as URL automatically.

Note: No period after DOI field!

Raw lines 579 to 596
597### URL Formatting
599```bibtex
600url = {https://www.example.com/article}
601```
603**Use**:
604- When DOI not available
605- For web pages
606- For supplementary materials
608**Don't duplicate**:
609```bibtex
610% Don't include both if DOI URL is same as url
611doi = {10.1038/nature12345}
612url = {https://doi.org/10.1038/nature12345} % Redundant!
613```

URL Formatting

url = {https://www.example.com/article}

Use:

  • When DOI not available
  • For web pages
  • For supplementary materials

Don't duplicate:

% Don't include both if DOI URL is same as url
doi = {10.1038/nature12345}
url = {https://doi.org/10.1038/nature12345}  % Redundant!
Raw lines 597 to 614
615### Special Characters
617**Accents and diacritics**:
618```bibtex
619author = {M{\"u}ller, Hans} % ü
620author = {Garc{\'i}a, Jos{\'e}} % í, é
621author = {Erd{\H{o}}s, Paul} % ő
622author = {Schr{\"o}dinger, Erwin} % ö
623```
625**Or use UTF-8** (with proper LaTeX setup):
626```bibtex
627author = {Müller, Hans}
628author = {García, José}
629```
631**Mathematical symbols**:
632```bibtex
633title = {The $\alpha$-helix Structure}
634title = {$\beta$-sheet Prediction}
635```
637**Chemical formulas**:
638```bibtex
639title = {H$_2$O Molecular Dynamics}
640% Or with chemformula package:
641title = {\ce{H2O} Molecular Dynamics}
642```

Special Characters

Accents and diacritics:

author = {M{\"u}ller, Hans}        % ü
author = {Garc{\'i}a, Jos{\'e}}    % í, é
author = {Erd{\H{o}}s, Paul}       % ő
author = {Schr{\"o}dinger, Erwin}  % ö

Or use UTF-8 (with proper LaTeX setup):

author = {Müller, Hans}
author = {García, José}

Mathematical symbols:

title = {The $\alpha$-helix Structure}
title = {$\beta$-sheet Prediction}

Chemical formulas:

title = {H$_2$O Molecular Dynamics}
% Or with chemformula package:
title = {\ce{H2O} Molecular Dynamics}
Raw lines 615 to 643
644### Field Order
646**Recommended order** (for readability):
648```bibtex
649@article{Key,
650 author = {},
651 title = {},
652 journal = {},
653 year = {},
654 volume = {},
655 number = {},
656 pages = {},
657 doi = {},
658 url = {},
659 note = {}
661```
663**Rules**:
664- Most important fields first
665- Consistent across entries
666- Use formatter to standardize

Field Order

Recommended order (for readability):

@article{Key,
  author  = {},
  title   = {},
  journal = {},
  year    = {},
  volume  = {},
  number  = {},
  pages   = {},
  doi     = {},
  url     = {},
  note    = {}
}

Rules:

  • Most important fields first
  • Consistent across entries
  • Use formatter to standardize
Raw lines 644 to 667
668## Best Practices

Best Practices

Raw lines 668 to 669
670### 1. Consistent Formatting
672Use same format throughout:
673- Author name format
674- Title capitalization
675- Journal names
676- Citation key style

1. Consistent Formatting

Use same format throughout:

  • Author name format
  • Title capitalization
  • Journal names
  • Citation key style
Raw lines 670 to 677
678### 2. Required Fields
680Always include:
681- All required fields for entry type
682- DOI when assigned, regardless of publication year
683- Volume and pages or article number when assigned
684- Publisher for books

2. Required Fields

Always include:

  • All required fields for entry type
  • DOI when assigned, regardless of publication year
  • Volume and pages or article number when assigned
  • Publisher for books
Raw lines 678 to 685
686### 3. Protect Capitalization
688Use braces for:
689- Proper nouns: `{AlphaFold}`
690- Acronyms: `{DNA}`, `{CRISPR}`
691- Formulas: `{H2O}`
692- Names: `{Python}`, `{R}`

3. Protect Capitalization

Use braces for:

  • Proper nouns: {AlphaFold}
  • Acronyms: {DNA}, {CRISPR}
  • Formulas: {H2O}
  • Names: {Python}, {R}
Raw lines 686 to 693
694### 4. Complete Author Lists
696Include all authors when possible:
697- Preserve the full verified author list
698- Let the bibliography style truncate the display when required
699- Don't abbreviate to "et al." manually

4. Complete Author Lists

Include all authors when possible:

  • Preserve the full verified author list
  • Let the bibliography style truncate the display when required
  • Don't abbreviate to "et al." manually
Raw lines 694 to 700
701### 5. Use Standard Entry Types
703Choose correct entry type:
704- Journal article → `@article`
705- Book → `@book`
706- Conference paper → `@inproceedings`
707- Preprint → `@misc`

5. Use Standard Entry Types

Choose correct entry type:

  • Journal article → @article
  • Book → @book
  • Conference paper → @inproceedings
  • Preprint → @misc
Raw lines 701 to 708
709### 6. Validate Syntax
711Check for:
712- Balanced braces
713- Commas after fields
714- Unique citation keys
715- Valid entry types

6. Validate Syntax

Check for:

  • Balanced braces
  • Commas after fields
  • Unique citation keys
  • Valid entry types
Raw lines 709 to 716
717### 7. Use Formatters
719Use automated tools:
720```bash
721python scripts/format_bibtex.py references.bib
722```
724Benefits:
725- Consistent formatting
726- Catch syntax errors
727- Standardize field order
728- Fix common issues

7. Use Formatters

Use automated tools:

python scripts/format_bibtex.py references.bib

Benefits:

  • Consistent formatting
  • Catch syntax errors
  • Standardize field order
  • Fix common issues
Raw lines 717 to 729
Runs code python scripts/format_bibtex.py :721
730## Common Mistakes

Common Mistakes

Raw lines 730 to 731
732### 1. Wrong Author Separator
734**Wrong**:
735```bibtex
736author = {Smith, J.; Doe, J.} % Semicolon
737author = {Smith, J., Doe, J.} % Comma
738author = {Smith, J. & Doe, J.} % Ampersand
739```
741**Correct**:
742```bibtex
743author = {Smith, John and Doe, Jane}
744```

1. Wrong Author Separator

Wrong:

author = {Smith, J.; Doe, J.}    % Semicolon
author = {Smith, J., Doe, J.}    % Comma
author = {Smith, J. & Doe, J.}   % Ampersand

Correct:

author = {Smith, John and Doe, Jane}
Raw lines 732 to 745
746### 2. Missing Commas
748**Wrong**:
749```bibtex
750@article{Smith2024,
751 author = {Smith, John} % Missing comma!
752 title = {Title}
754```
756**Correct**:
757```bibtex
758@article{Smith2024,
759 author = {Smith, John}, % Comma after each field
760 title = {Title}
762```

2. Missing Commas

Wrong:

@article{Smith2024,
  author = {Smith, John}    % Missing comma!
  title = {Title}
}

Correct:

@article{Smith2024,
  author = {Smith, John},   % Comma after each field
  title = {Title}
}
Raw lines 746 to 763
764### 3. Unprotected Capitalization
766**Wrong**:
767```bibtex
768title = {Machine Learning with Python}
769% "Python" will become "python" in title case
770```
772**Correct**:
773```bibtex
774title = {Machine Learning with {Python}}
775```

3. Unprotected Capitalization

Wrong:

title = {Machine Learning with Python}
% "Python" will become "python" in title case

Correct:

title = {Machine Learning with {Python}}
Raw lines 764 to 776
777### 4. Single Hyphen in Pages
779**Wrong**:
780```bibtex
781pages = {123-145} % Single hyphen
782```
784**Correct**:
785```bibtex
786pages = {123--145} % Double hyphen (en-dash)
787```

4. Single Hyphen in Pages

Wrong:

pages = {123-145}   % Single hyphen

Correct:

pages = {123--145}  % Double hyphen (en-dash)
Raw lines 777 to 788
789### 5. Redundant "pp." in Pages
791**Wrong**:
792```bibtex
793pages = {pp. 123--145}
794```
796**Correct**:
797```bibtex
798pages = {123--145}
799```

5. Redundant "pp." in Pages

Wrong:

pages = {pp. 123--145}

Correct:

pages = {123--145}
Raw lines 789 to 800
801### 6. DOI with URL Prefix
803**Wrong**:
804```bibtex
805doi = {https://doi.org/10.1038/nature12345}
806doi = {doi:10.1038/nature12345}
807```
809**Correct**:
810```bibtex
811doi = {10.1038/nature12345}
812```

6. DOI with URL Prefix

Wrong:

doi = {https://doi.org/10.1038/nature12345}
doi = {doi:10.1038/nature12345}

Correct:

doi = {10.1038/nature12345}
Raw lines 801 to 813
814## Example Complete Bibliography
816```bibtex
817% Journal article
818@article{Jumper2021,
819 author = {Jumper, John and Evans, Richard and Pritzel, Alexander and others},
820 title = {Highly Accurate Protein Structure Prediction with {AlphaFold}},
821 journal = {Nature},
822 year = {2021},
823 volume = {596},
824 number = {7873},
825 pages = {583--589},
826 doi = {10.1038/s41586-021-03819-2}
829% Book
830@book{Kumar2021,
831 author = {Kumar, Vinay and Abbas, Abul K. and Aster, Jon C.},
832 title = {Robbins and Cotran Pathologic Basis of Disease},
833 publisher = {Elsevier},
834 year = {2021},
835 edition = {10},
836 address = {Philadelphia, PA},
837 isbn = {978-0-323-53113-9}
840% Conference paper
841@inproceedings{Vaswani2017,
842 author = {Vaswani, Ashish and Shazeer, Noam and Parmar, Niki and others},
843 title = {Attention is All You Need},
844 booktitle = {Advances in Neural Information Processing Systems 30 (NeurIPS 2017)},
845 year = {2017},
846 pages = {5998--6008}
849% Book chapter
850@incollection{Brown2020,
851 author = {Brown, Peter O. and Botstein, David},
852 title = {Exploring the New World of the Genome with {DNA} Microarrays},
853 booktitle = {DNA Microarrays: A Molecular Cloning Manual},
854 editor = {Eisen, Michael B. and Brown, Patrick O.},
855 publisher = {Cold Spring Harbor Laboratory Press},
856 year = {2020},
857 pages = {1--45}
860% PhD thesis
861@phdthesis{Johnson2023,
862 author = {Johnson, Mary L.},
863 title = {Novel Approaches to Cancer Immunotherapy},
864 school = {Stanford University},
865 year = {2023},
866 type = {{PhD} dissertation}
869% Preprint
870@misc{Zhang2024,
871 author = {Zhang, Yi and Chen, Li and Wang, Hui},
872 title = {Novel Therapeutic Targets in {Alzheimer}'s Disease},
873 year = {2024},
874 howpublished = {bioRxiv},
875 doi = {10.1101/2024.01.001},
876 note = {Preprint}
879% Dataset
880@misc{AlphaFoldDB2021,
881 author = {{DeepMind} and {EMBL-EBI}},
882 title = {{AlphaFold} Protein Structure Database},
883 year = {2021},
884 howpublished = {Database},
885 url = {https://alphafold.ebi.ac.uk/},
886 doi = {10.1093/nar/gkab1061}
888```

Example Complete Bibliography

% Journal article
@article{Jumper2021,
  author  = {Jumper, John and Evans, Richard and Pritzel, Alexander and others},
  title   = {Highly Accurate Protein Structure Prediction with {AlphaFold}},
  journal = {Nature},
  year    = {2021},
  volume  = {596},
  number  = {7873},
  pages   = {583--589},
  doi     = {10.1038/s41586-021-03819-2}
}

% Book
@book{Kumar2021,
  author    = {Kumar, Vinay and Abbas, Abul K. and Aster, Jon C.},
  title     = {Robbins and Cotran Pathologic Basis of Disease},
  publisher = {Elsevier},
  year      = {2021},
  edition   = {10},
  address   = {Philadelphia, PA},
  isbn      = {978-0-323-53113-9}
}

% Conference paper
@inproceedings{Vaswani2017,
  author    = {Vaswani, Ashish and Shazeer, Noam and Parmar, Niki and others},
  title     = {Attention is All You Need},
  booktitle = {Advances in Neural Information Processing Systems 30 (NeurIPS 2017)},
  year      = {2017},
  pages     = {5998--6008}
}

% Book chapter
@incollection{Brown2020,
  author    = {Brown, Peter O. and Botstein, David},
  title     = {Exploring the New World of the Genome with {DNA} Microarrays},
  booktitle = {DNA Microarrays: A Molecular Cloning Manual},
  editor    = {Eisen, Michael B. and Brown, Patrick O.},
  publisher = {Cold Spring Harbor Laboratory Press},
  year      = {2020},
  pages     = {1--45}
}

% PhD thesis
@phdthesis{Johnson2023,
  author  = {Johnson, Mary L.},
  title   = {Novel Approaches to Cancer Immunotherapy},
  school  = {Stanford University},
  year    = {2023},
  type    = {{PhD} dissertation}
}

% Preprint
@misc{Zhang2024,
  author       = {Zhang, Yi and Chen, Li and Wang, Hui},
  title        = {Novel Therapeutic Targets in {Alzheimer}'s Disease},
  year         = {2024},
  howpublished = {bioRxiv},
  doi          = {10.1101/2024.01.001},
  note         = {Preprint}
}

% Dataset
@misc{AlphaFoldDB2021,
  author       = {{DeepMind} and {EMBL-EBI}},
  title        = {{AlphaFold} Protein Structure Database},
  year         = {2021},
  howpublished = {Database},
  url          = {https://alphafold.ebi.ac.uk/},
  doi          = {10.1093/nar/gkab1061}
}
Raw lines 814 to 889
890## Summary
892BibTeX formatting essentials:
894✓ **Choose correct entry type** (@article, @book, etc.)
895✓ **Include all required fields**
896✓ **Use `and` for multiple authors**
897✓ **Protect capitalization** with braces
898✓ **Use `--` for page ranges**
899✓ **Include DOI** for modern papers
900✓ **Validate syntax** before compilation
902Use formatting tools to ensure consistency:
903```bash
904python scripts/format_bibtex.py references.bib
905```
907Properly formatted BibTeX ensures correct, consistent citations across all bibliography styles!

Summary

BibTeX formatting essentials:

✓ Choose correct entry type (@article, @book, etc.) ✓ Include all required fields ✓ **Use and for multiple authors ✓ Protect capitalization with braces ✓ Use -- for page ranges ✓ Include DOI for modern papers ✓ Validate syntax** before compilation

Use formatting tools to ensure consistency:

python scripts/format_bibtex.py references.bib

Properly formatted BibTeX ensures correct, consistent citations across all bibliography styles!

Raw lines 890 to 908
Runs code python scripts/format_bibtex.py :904