Run Latex Again to Produce the Table

Contents

  • ane Advisory note
  • 2 Introduction
  • 3 Bibliography: simply a list of \bibitems
    • 3.1 A note on compilation times
  • 4 Enter \(\mathrm{Bib\TeX}\)
    • 4.1 Some notes on using \(\mathrm{Bib\TeX}\) and .bib files
  • 5 Taking another look at .bib files
    • v.i Multiple authors in \(\mathrm{Bib\TeX}\)
    • 5.2 Multiple-discussion last names
    • v.3 I tried to use % to annotate out some lines or entries in my .bib file, only I got lots of mistake messages instead?
  • 6 How/where practice I actually become those .bib files?
    • 6.ane Edit the .bib file as plain text
    • 6.2 Assistance from GUI-based .bib editors
    • half dozen.3 Export from reference library services
    • half dozen.four I've already got a reference list in a Microsoft Give-and-take/HTML/PDF file; can I somehow reuse the data without re-typing everything?
  • seven Summary and farther reading
    • 7.1 Further reading

Advisory note

If you are starting from scratch we recommend using biblatex considering that package provides localization in several languages, it'due south actively developed and makes bibliography management easier and more flexible.

Introduction

Many tutorials have been written about what \(\mathrm{Bib\TeX}\) is and how to use it. However, based on our feel of providing support to Overleaf'due south users, it'south still one of the topics that many newcomers to \(\mathrm{\LaTeX}\) observe complicated—especially when things don't go quite correct; for example: citations aren't appearing; bug with authors' names; not sorted to a required social club; URLs not displayed in the references list, and and so forth.

In this commodity we'll pull together all the threads relating to citations, references and bibliographies, besides as how Overleaf and related tools tin help users manage these.

We'll starting time with a quick recap of how \(\mathrm{Bib\TeX}\) and bibliography database (.bib) files piece of work and expect at some means to ready .bib files. This is, of course, running the risk of repeating some of the material contained in many online tutorials, only future articles will aggrandize our coverage to include bibliography styles and biblatex—the alternative bundle and bibliography processor.

Bibliography: just a list of \bibitems

Let'south first take a quick wait "under the hood" to see what a \(\mathrm{\LaTeX}\) reference list is comprised of—delight don't start coding your reference list like this because later in this article nosotros'll wait at other, more than user-friendly, ways to do this.

A reference list really just a thebibliography listing of \bibitems:

                        \begin            {thebibliography}{9}            \bibitem            {texbook}            Donald E. Knuth (1986)            \emph            {The            \TeX            {}            Book}, Addison-Wesley Professional person.            \bibitem            {lamport94}            Leslie Lamport (1994)            \emph            {            \LaTeX: a document preparation system}, Addison Wesley, Massachusetts, second ed.            \terminate            {thebibliography}          

By default, this thebibliography surround is a numbered listing with labels [1], [2] and so along. If the document class used is article, \begin{thebibliography} automatically inserts a numberless section heading with \refname (default value: References). If the document class is book or report, and then a numberless affiliate heading with \bibname (default value: Bibliography) is inserted instead. Each \bibitem takes a cite key as its parameter, which you can use with \cite commands, followed past information about the reference entry itself. So if y'all at present write

                        \LaTeX            {}            \cite            {lamport94}            is a set of macros built atop            \TeX            {}            \cite            {texbook}.          

together with the thebibliography cake from before, this is what gets rendered into your PDF when y'all run a \(\mathrm{\LaTeX}\) processor (i.e. whatsoever of latex, pdflatex, xelatex or lualatex) on your source file:

Citing entries from a thebibliography list

Figure 1: Citing entries from a thebibliography list.

Notice how each \bibitem is automatically numbered, and how \cite so inserts the corresponding numerical label.

\brainstorm{thebibliography} takes a numerical argument: the widest characterization expected in the list. In this example we only have two entries, so 9 is plenty. If yous have more than than ten entries, though, you may discover that the numerical labels in the list start to go misaligned:

thebibliography with a label that's too short

Effigy 2: thebibliography with a label that'due south too short.

We'll have to make it \begin{thebibliography}{99} instead, and so that the longest label is wide enough to accommodate the longer labels, similar this:

thebibliography with a longer label width

Effigy iii: thebibliography with a longer label width.

If y'all compile this example lawmaking snippet on a local computer yous may notice that later the first fourth dimension yous run pdflatex (or another \(\mathrm{\LaTeX}\) processor), the reference listing appears in the PDF equally expected, just the \cite commands just show upwards as question marks [?].

This is because after the first \(\mathrm{\LaTeX}\) run the cite keys from each \bibitem (texbook, lamport94) are written to the .aux file and are not notwithstanding available for reading by the \cite commands. Simply on the second run of pdflatex are the \cite commands able to look up each cite key from the .aux file and insert the corresponding labels ([i], [2]) into the output.

On Overleaf, though, you don't have to worry almost re-running pdflatex yourself. This is considering Overleaf uses the latexmk build tool, which automatically re-runs pdflatex (and another processors) for the requisite number of times needed to resolve \cite outputs. This likewise accounts for other cross-referencing commands, such every bit \ref and \tableofcontents.

A note on compilation times

Processing \(\mathrm{\LaTeX}\) reference lists or other forms of cantankerous-referencing, such as indexes, requires multiple runs of software—including the \(\mathrm{\TeX}\) engine (e.k., pdflatex) and associated programs such equally \(\mathrm{Bib\TeX}\), makeindex, etc. Equally mentioned above, Overleaf handles all of these mulitple runs automatically, then you don't have to worry about them. Every bit a consequence, when the preview on Overleaf is refreshing for documents with bibliographies (or other cross-referencing), or for documents with large image files (equally discussed separately hither), these essential compilation steps may sometimes make the preview refresh appear to take longer than on your ain automobile. We do, of course, aim to keep it as curt every bit possible! If you feel your document is taking longer to compile than you'd wait, hither are some further tips that may assist.

Enter \(\mathrm{Bib\TeX}\)

There are, of grade, some inconveniences with manually preparing the thebibliography list:

  • It'southward up to y'all to accurately format each \bibitem based on the reference mode you're asked to utilize—which bits should exist in bold or italic? Should the yr come immediately after the authors, or at the terminate of the entry? Given names get-go, or last names first?
  • If y'all're writing for a reference way which requires the reference listing to exist sorted by the final names of showtime authors, you'll need to sort the \bibitems yourself.
  • For unlike manuscripts or documents that employ different reference styles you'll need to rewrite the \bibitem for each reference.

This is where \(\mathrm{Bib\TeX}\) and bibliography database files (.bib files) are extremely useful, and this is the recommended approach to manage citations and references in most journals and theses. The biblatex arroyo, which is slightly dissimilar and gaining popularity, also requires a .bib file but we'll talk well-nigh biblatex in a future postal service.

Instead of formatting cited reference entries in a thebibliography listing, we maintain a bibliography database file (let's name it refs.bib for our example) which contains format-independent information about our references. So our refs.bib file may look like this:

            @book{texbook,   writer =            {Donald Eastward. Knuth},   year =            {1986},   title =            {The            {            \TeX            }            Book},   publisher =            {Addison-Wesley Professional}            }            @book{latex:companion,   author =            {Frank Mittelbach and Michel Gossens             and Johannes Braams and David Carlisle             and Chris Rowley},   year =            {2004},   championship =            {The            {            \LaTeX            }            Companion},   publisher =            {Addison-Wesley Professional},   edition =            {2}            }            @book{latex2e,   author =            {Leslie Lamport},   year =            {1994},   title =            {{            \LaTeX            }: a Document Preparation System},   publisher =            {Addison Wesley},   address =            {Massachusetts},   edition =            {ii}            }            @article{knuth:1984,   title={Literate Programming},   author={Donald E. Knuth},   journal={The Computer Journal},   volume={27},   number={ii},   pages={97--111},   twelvemonth={1984},   publisher={Oxford University Press}            }            @inproceedings{lesk:1977,   title={Reckoner Typesetting of Technical Journals on            {UNIX}},   author={Michael Lesk and Brian Kernighan},   booktitle={Proceedings of American Federation of              Information Processing Societies: 1977              National Computer Briefing},   pages={879--888},   year={1977},   address={Dallas, Texas}            }          

Yous can find more than information about other \(\mathrm{Bib\TeX}\) reference entry types and fields here—in that location's a huge tabular array showing which fields are supported for which entry types. We'll talk more about how to prepare .bib files in a later department.

Now we can use \cite with the cite keys as earlier, simply now we replace thebibliography with a \bibliographystyle{...} to choose the reference mode, besides every bit \bibliography{...} to betoken \(\mathrm{Bib\TeX}\) at the .bib file where the cited references should exist looked-upwardly.

                        \LaTeX            {}            \cite            {latex2e}            is a ready of macros built atop            \TeX            {}            \cite            {texbook}.            \bibliographystyle            {plain}            % We cull the "plain" reference fashion            \bibliography            {refs}            % Entries are in the refs.bib file          

This is candy with the following sequence of commands, assuming our \(\mathrm{\LaTeX}\) document is in a file named main.tex (and that we are using pdflatex):

  1. pdflatex chief
  2. bibtex main
  3. pdflatex principal
  4. pdflatex main

and nosotros become the following output:

BibTeX output with plain bibliography style

Figure 4: \(\mathrm{Bib\TeX}\) output using the plain bibliography style.

Whoah! What'south going on here and why are all those (repeated) processes required? Well, hither's what happens.

  1. During the starting time pdflatex run, all pdflatex sees is a \bibliographystyle{...} and a \bibliography{...} from chief.tex. It doesn't know what all the \cite{...} commands are well-nigh! Consequently, within the output PDF, all the \cite{...} commands are simply rendered as [?], and no reference list appears, for now. But pdflatex writes data about the bibliography style and .bib file, as well every bit all occurrences of \cite{...}, to the file principal.aux.

  2. It's actually primary.aux that \(\mathrm{Bib\TeX}\) is interested in! It notes the .bib file indicated by \bibliography{...}, and so looks up all the entries with keys that friction match the \cite{...} commands used in the .tex file. \(\mathrm{Bib\TeX}\) so uses the style specified with \bibliographystyle{...} to format the cited entries, and writes a formatted thebibliography list into the file principal.bbl. The production of the .bbl file is all that's achieved in this step; no changes are made to the output PDF.

  3. When pdflatex is run again, it now sees that a main.bbl file is available! And so it inserts the contents of primary.bbl i.due east. the \begin{thebibliography}....\end{thebibliography} into the \(\mathrm{\LaTeX}\) source, where \bibliography{...} is. After this step, the reference list appears in the output PDF formatted according to the chosen \bibliographystyle{...}, but the in-text citations are still [?].

  4. pdflatex is run again, and this fourth dimension the \cite{...} commands are replaced with the corresponding numerical labels in the output PDF!

As before, the latexmk build tool takes intendance of triggering and re-running pdflatex and bibtex as necessary, and then you don't take to worry almost this chip.

Some notes on using \(\mathrm{Bib\TeX}\) and .bib files

A few further things to note nearly using \(\mathrm{Bib\TeX}\) and .bib files:

  • You may have noticed that although refs.bib independent five \(\mathrm{Bib\TeX}\) reference entries, only two are included in the reference list in the output PDF. This is an important point nigh \(\mathrm{Bib\TeX}\): the .bib file's role is to store bibliographic records, and but entries that have been cited (via \cite{...}) in the .tex files will appear in the reference listing. This is similar to how only cited items from an EndNote database volition exist displayed in the reference list in a Microsoft Give-and-take document. If you do want to include all entries—to be displayed but without actually citing all of them—you tin write \nocite{*}. This as well means you can reuse the same .bib file for all your \(\mathrm{\LaTeX}\) projects: entries that are non cited in a particular manuscript or report volition exist excluded from the reference list in that certificate.
  • \(\mathrm{Bib\TeX}\) requires one \bibliographystyle{...} and ane \bibliography{...} to function correctly—in hereafter posts we'll see how to create multiple bibliographies in the same document. If you keep getting "undefined citation" warnings, cheque that you lot have indeed included those two commands, and that the names are spelled correctly. File extensions are not usually required, but behave in mind that file names are case sensitive on some operating systems—including on Overleaf! Therefore, if you typed \bibliographystyle{IEEetran} (notation the typo: "due east") instead of \bibliographystyle{IEEEtran}, or wrote \bibliography{refs} when the actual file proper name is Refs.bib, you'll get the dreaded [?] every bit citations.
  • In the same vein, treat your cite keys as instance-sensitive, ever. Use the exact same case or spelling in your \cite{...} as in your .bib file.
  • The gild of references in the .bib file does not have whatever effect on how the reference list is ordered in the output PDF: the sorting guild of the reference list is adamant by the \bibliographystyle{...}. For example, some readers might have noticed that, within my earlier example, the first commendation in the text latex2e is numbered [2], while the second citation in the text (texbook) is numbered [1]! Have \(\mathrm{\LaTeX}\) and \(\mathrm{Bib\TeX}\) lost the plot? Not at all: this is really because the obviously way sorts the reference listing by alphabetical order of the first author's last name. If you prefer a scheme where the numerical citation labels are numbered sequentially throughout the text, you'll have to cull a bibliography fashion which implements this. For case, if instead nosotros had used \bibliographystyle{IEEEtran} for that case, we'd get the following output. Notice as well how the formatting of each cited item in the reference list has automatically updated to suit the IEEE's manner:

IEEEtran bibliography style output

Figure 5: IEEEtran bibliography way output.

We'll talk more than about different bibliography styles, including writer–year citation schemes, in a future article. For now, allow's turn our attending to .bib file contents, and how we can make the task of preparing .bib files a bit easier.

Taking another look at .bib files

As you lot may have noticed earlier, a .bib file contains \(\mathrm{Bib\TeX}\) bibliography entries that start with an entry type prefixed with an @. Each entry has a some cardinal–value \(\mathrm{Bib\TeX}\) fields, placed within a pair of braces ({...}). The cite key is the get-go piece of information given within these braces, and every field in the entry must be separated past a comma:

            @article{knuth:1984,   championship={Literate Programming},   author={Donald East. Knuth},   journal={The Computer Journal},   volume={27},   number={2},   pages={97--111},   year={1984},   publisher={Oxford University Press}            }          

As a general rule, every bibliography entry should take an author, year and title field, no matter what the type is. There are about a dozen entry types although some bibliography styles may recognise/define more; notwithstanding, it is likely that you will most frequently utilise the following entry types:

  • @commodity for journal articles (see example higher up).
  • @inproceedings for conference proceeding articles:
            @inproceedings{FosterEtAl:2003,   writer =            {George Foster and Simona Gandrabur and Philippe Langlais and Pierre     Plamondon and Graham Russell and Michel Simard},   championship =            {Statistical Auto Translation: Rapid Development with Limited Resources},   booktitle =            {Proceedings of            {MT Acme IX}},   year =            {2003},   pages =            {110--119},   accost =            {New Orleans, USA},            }          
  • @volume for books (see examples above).
  • @phdthesis, @masterthesis for dissertations and theses:
            @phdthesis{Alsolami:2012,     title    =            {An test of keystroke dynamics                 for continuous user authentication},     school   =            {Queensland University of Technology},     author   =            {Eesa Alsolami},     twelvemonth     =            {2012}            }          
  • @inbook is for a book chapter where the entire book was written past the same writer(s): the chapter of interest is identified past a chapter number:
            @inbook{peyret2012:ch7,   title={Computational Methods for Fluid Menses},   edition={2},   writer={Peyret, Roger and Taylor, Thomas D},   year={1983},   publisher={Springer-Verlag},   address={New York},   affiliate={7, fourteen}            }          
  • @incollection is for a contributed chapter in a volume, and then would have its ain writer and title. The actual championship of the entire book is given in the booktitle field; information technology is probable that an editor field will also be present:
            @incollection{Mihalcea:2006,   author =            {Rada Mihalcea},   championship =            {Knowledge-Based Methods for            {WSD}},   booktitle =            {Word Sense Disambiguation: Algorithms                and Applications},   publisher =            {Springer},   year =            {2006},   editor =            {Eneko Agirre and Philip Edmonds},   pages =            {107--132},   address =            {Dordrecht, the Netherlands}            }          
  • @misc is for whatsoever doesn't quite fit whatever other entry blazon. Information technology tin can exist especially useful for web pages—by writing note = \url{http://...} or url = {http://...}:
    • you will often find it useful to add \usepackage{url} or \usepackage{hyperref} in your .tex files' preamble (for more robust handling of URLs);
    • not all bibliography styles back up the url field: plain doesn't, simply IEEEtran does. All styles support notation. More than on this in a futurity post;
    • you should be mindful that even web pages and @misc entries should have an author, a year and a title field:
            @misc{spider web:lang:stats,   author =            {W3Techs},   championship =            {Usage Statistics of Content Languages            for Websites},   twelvemonth =            {2017},   note =            {Last accessed 16 September 2017},   url =            {http://w3techs.com/technologies/overview/content_linguistic communication/all}            }          

In a .bib file, commas are only used to separate the last name from the first proper name of an author—if the last name is written kickoff. Individual author names are separated by and. Then these are correct:

            author =            {Jane Doe and John Goodenough and Foo Bar}          

or

            writer =            {Doe, Jane and Goodenough, John and Bar, Foo}          

Only none of the post-obit will piece of work correctly—you'll get weird output, or even error messages from \(\mathrm{Bib\TeX}\)! So take extra care if you lot are copying author names from a paper or from a spider web page.

            author =            {Jand Doe, John Goodneough, Foo Bar}            author =            {Jand Doe, John Goodneough and Foo Bar}            author =            {Jand Doe, John Goodneough, and Foo Bar}          

Multiple-word last names

If an writer's last name is made upwards of multiple words separated by spaces, or if it's actually an organisation, place an actress pair of braces around the last proper name so that \(\mathrm{Bib\TeX}\) volition recognise the grouped words every bit the final name:

            author =            {{Globe Health Organisation}}            author =            {Geert            {Van der Plas}            and John Doe}          

Alternatively, y'all can use the Lastname, Firstname format; some users find that clearer and more readable:

            author =            {Van der Plas, Geert and Doe, John}          

Remember: Whether the first or last name appears first in the output ("John Doe" vs "Doe, John"), or whether the showtime proper name is automatically abbreviated "J. Doe" or "Doe, J." vs "John Doe" "J. Doe"), all such details are controlled past the \bibliographystyle.

% is actually not a comment character in .bib files! And then, inserting a % in .bib files not only fails to annotate out the line, it also causes some \(\mathrm{Bib\TeX}\) errors. To go \(\mathrm{Bib\TeX}\) to ignore a particular field we just need to rename the field to something that \(\mathrm{Bib\TeX}\) doesn't recognise. For example, if you want to keep a date field around but prefer that information technology's ignored (perhaps because you desire \(\mathrm{Bib\TeX}\) to use the year field instead) write Tdate = {...} or the more man-readable IGNOREdate = {...}.

To become \(\mathrm{Bib\TeX}\) to ignore an entire entry you can remove the @ earlier the entry type. A valid reference entry always starts with a @ followed by the entry type; without the @ character \(\mathrm{Bib\TeX}\) skips the lines until information technology encounters another @.

How/where do I actually get those .bib files?

Edit the .bib file as plain text

Because .bib files are plain text y'all can certainly write them past hand—once you're familiar with \(\mathrm{Bib\TeX}\)'s required syntax. Just make sure that you save it with a .bib extension, and that your editor doesn't surreptitiously add a .txt or another suffix. On Overleaf y'all can click on the "Files…" link at the peak of the file list console, then on "Add bare file" to create a fresh .bib file to work on.

Pro tip: Did you know that Google Scholar search results can be exported to a \(\mathrm{Bib\TeX}\) entry? Click on the "Cite" link below each search result, so on the "\(\mathrm{Bib\TeX}\)" option search. Yous can and then re-create the \(\mathrm{Bib\TeX}\) entry generated. Hither'south a video that demonstrates the process. Notation that you should always double-cheque the fields presented in the entry, as the automatically populated information isn't always comprehensive or accurate!

Help from GUI-based .bib editors

Many users adopt to use a dedicated \(\mathrm{Bib\TeX}\) bibliography database editor/manager, such as JabRef or BibDesk to maintain, edit and add together entries to their .bib files. Using a GUI can indeed help reduce syntax and spelling errors whilst creating bibliography entries in a \(\mathrm{Bib\TeX}\) file. If you prefer, you can prepare your .bib file on your own automobile using JabRef, BibDesk or some other utility, and then upload it to your Overleaf.

Pro tip: If you'd like to use the same .bib for multiple Overleaf projects, take a look at this assist article to gear up upwardly a "master project", or this one for sharing files from Google Drive (the instructions apply to other deject-based storage solutions, such as Dropbox).

Export from reference library services

If y'all click on the Upload files button above the file list panel, yous'll discover some options: Import from Mendeley, and Import from Zotero. If y'all're already using one of those reference library management services, Overleaf can now hook into the Web exporter APIs provided by those services to import the .bib file (generated from your library) into your Overleaf project. For more information, run into the Overleaf article How to link your Overleaf account to Mendeley and Zotero.

For other reference library services that don't have a public API, or are not yet directly integrated with Overleaf, such as EndNote or Paperpile, await for an "export to .bib" pick in the awarding or service. One time yous have a .bib file, you tin can then add it to your Overleaf projection.

I've already got a reference listing in a Microsoft Discussion/HTML/PDF file; can I somehow reuse the data without re-typing everything?

It used to be that you would have to hand-code each line into a \bibitem or an @commodity{...} entry (or another entry type) in a .bib file. As you tin imagine, it'southward non exactly a task that many people look forward to. Fortunately, these days some tools are available to aid. They typically take a plain text file, e.g.

            [1] J. Smith, J. Doe and F. Bar (2001) A ground-breaking study. Journal of Amazing Research 5(xi), pp. 29-34.  [2] ...          

and attempt to parse the lines, converting it into a structured bibliography as a \(\mathrm{Bib\TeX}\) .bib file. For example, take a expect at text2bib or Edifix. Be certain to get through the options of these tools advisedly, so that they work well with your existing unstructured bibliography in plain text.

Summary and further reading

We've had a quick wait at how \(\mathrm{Bib\TeX}\) processes a .bib bibliography database file to resolve \cite commands and produce a formatted reference listing, likewise equally how to prepare .bib files.

Happy \(\mathrm{Bib\TeX}\)ing!

Further reading

For more information see:

  • Bibtex bibliography styles
  • Bibliography management with natbib
  • Bibliography management with biblatex
  • BibTeX documentation at CTAN web site
  • tocbind package documentation
  • Table of contents
  • Management in a big project
  • Multi-file LaTeX projects

wardtrook1947.blogspot.com

Source: https://www.overleaf.com/learn/latex/Bibliography_management_with_bibtex

Belum ada Komentar untuk "Run Latex Again to Produce the Table"

Posting Komentar

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel