# BibTeX

BibT$_E$X, scritto anche BibTeX in testo normale, è uno strumento utilizzato per la formattazione di liste di riferimenti bibliografici utilizzato dal software di scrittura
$\mathrm {L\!\!^{_{\scriptstyle A}}\!\!\!\!\!\;\;T\!_{\displaystyle E}\!X}$ (LaTeX).
Creato inizialmente da Oren Patashnik e Leslie Lamport nel 1985, BibTeX semplifica la citazione di riferimenti bibliografici in maniera consistente, separando l'informazione bibliografica dalla modalità di presentazione. Si tratta di un principio fondamentale dello standard SGML, già utilizzato dallo stesso LaTeX, ma anche da XML, XHTML, CSS, ecc.

## Il file di informazione bibliografica (suffisso .bib)

BibTeX utilizza un formato di file di tipo testuale, senza informazioni sullo stile di presentazione, contenente un elenco di voci bibliografiche che spazia dai libri, agli articoli di riviste, a tesi, ecc. Di solito questo database bibliografico testuale è contenuto in un file con il suffisso .bib.
* address : Indirizzo dell'editore. Di solito solo la città, ma può essere l'indirizzo completo per editori meno noti.
* annote : Una annotazione per gli stili bibliografici con annotazioni (non tipico).
* author : Il nome dell'autore (o degli autori).
* booktitle : Il titolo del libro.
* chapter : Il numero di capitolo.
* edition : L'edizione del libro, nella forma lunga (come "prima" o "seconda").
* editor : Il nome degli editor.
* howpublished : Come è stato pubblicato, se il modo di pubblicazione non è standard.
* institution : L'istituzione che è stata coinvolta nella pubblicazione, ma non necessariamente l'editore.
* journal : La rivista o pubblicazione nel quale è stata pubblicata.
* key : Un campo nascosto per modificare l'ordinamento alfabetico degli elementi della bibliografia.
* month : Il mese di pubblicazione (o, se inedito, il mese di creazione).
* note : Informazioni extra.
* number : Il numero del giornale, rivista o resoconto tecnico, se applicabile.
* organization : Lo sponsor della conferenza.
* pages : Numero di pagine, separato da virgole o da doppi trattini (--).
* publisher : Il nome della casa editrice.
* school : L'istituto presso il quale è stata scritta la tesi.
* series : La collana di libri all'interno della quale è stato pubblicato.
* title : Il titolo del lavoro.
* type : Il tipo di resoconto tecnico, per esempio, "Appunto di ricerca".
* url : Un indirizzo internet.
* volume : Il volume del giornale oppure del libro (se multivolume).
* year : L'anno di pubblicazione (o, se inedito, l'anno di creazione).
Gli elementi della bibliografia vengono inclusi in un file con estensione .bib, e vengono divisi per tipo. I seguenti tipi sono compresi virtualmente in ogni stile di BibTeX:

### article

    Un articolo da un giornale o da una rivista. Campi richiesti:author, title, journal, year Campi opzionali: volume, number, pages, month, note, key

### book

    Un libro con un esplicito editore. Campi richiesti: author/editor, title, publisher, year Campi opzionali: volume, series, address, edition, month, note, key, pages

### booklet

    Un lavoro che è stampato e rilegato, ma senza un editore o un'istituzione che lo sponsorizzi. Campi richiesti: title Campi opzionali: author, howpublished, address, month, year, note, key

### conference

    Lo stesso che in inproceedings, incluso per compatibilità con Scribe. Campi richiesti: author, title, booktitle, year Campi opzionali: editor, pages, organization, publisher, address, month, note, key

### inbook

    La parte di un libro, che può essere un capitolo, (o una sezione o quant'altro) o un breve intervallo di pagine. Campi richiesti: author/editor, title, chapter/pages, publisher, year Campi opzionali: volume, series, address, edition, month, note, key

### incollection

    La parte di un libro avente il proprio titolo. Campi richiesti: author, title, booktitle, year Campi opzionali: editor, pages, organization, publisher, address, month, note, key

### inproceedings

    Un articolo negli atti di una conferenza. Campi richiesti: author, title, booktitle, year Campi opzionali: editor, pages, organization, publisher, address, month, note, key

### manual

    Documentazione tecnica. Campi richiesti: title Campi opzionali: author, organization, address, edition, month, year, note, key

### mastersthesis

    Una tesi di laurea. Campi richiesti: author, title, school, year Campi opzionali: address, month, note, key

### misc

    Da usare quando non va bene nient'altro. Campi richiesti: none Campi opzionali: author, title, howpublished, month, year, note, key

### phdthesis

    Una tesi di dottorato. Campi richiesti: author, title, school, year Campi opzionali: address, month, note, key

### proceedings

    Gli atti di una conferenza. Campi richiesti: title, year Campi opzionali: editor, publisher, organization, address, month, note, key

### techreport

    Un resoconto pubblicato da una scuola o da un'altra istituzione, solitamente all'interno di una serie. Campi richiesti: author, title, institution, year Campi opzionali: type, number, address, month, note, key

### unpublished

    Un documento con un autore ed un titolo, ma non formalmente pubblicato. Campi richiesti: author, title, note Campi opzionali: month, year, key

## Fogli di stile bibliografici (suffisso .bst)

Il documento LaTeX deve specificare uno stile per la bibliografia. Questo viene fatto con il comando: \bibliographystyle. Valori comuni sono \bibliographystyle{plain} e \bibliographystyle{abbrv}.
I file di stile BibTeX, per i quali è comune l'estensione .bst, vengono scritti in un semplice file separato che descrive come gli oggetti in bibliografia vadano formattati. Il programma BibTeX formatta allora gli oggetti in bibliografia secondo lo stile specificato nel file, tipicamente generando comandi TeX o LaTeX per la formattazione; esistono comunque fogli di stile per generare come output un documento HTML.
Fogli di stile personalizzati possono essere facilmente generati tramite il comando latex makebst.

## Esempi

Un file .bib può contenere la seguente referenza, che descrive un manuale matematico:
Se il documento fa riferimento a questo manuale, l'informazione bibliografica può essere formattata in modi diversi a seconda dello stile di citazione adottato (ad esempio, APA, MLA, Chicago). Il modo in cui LaTeX gestisce questo è dato dall'uso del comando \cite e dallo stile bibliografico nel documento LaTeX. Se il comando \cite{abramowitz+stegun} appare all'interno di un documento LaTeX, il programma bibtex includerà questo libro nella lista di riferimenti del documento e genererà l'appropriato codice di formattazione LaTeX. Guardando il documento LaTeX formattato, il risultato dovrebbe sembrare:
    Abramowitz, Milton and Irene A. Stegun (1964), Handbook of mathematical functions with formulas, graphs, and mathematical tables. New York: Dover.
A seconda del foglio di stile, BibTeX potrà spostare i cognomi degli autori, cambiare maiuscole e minuscole, omettere campi inseriti nel file .bib, formattare testo in corsivo, aggiungere punteggiatura, eccetera. Poiché lo stesso foglio di stile viene utilizzato per intere liste di citazioni, queste vengono formattate in modo consistente, con minimo sforzo degli autori e degli editori.
I prefissi per i cognomi, come von, van, e der sono gestiti automaticamente, purché siano minuscoli per distinguerli dai secondi nomi. Cognomi con più parole sono distinti da primi e secondi nomi ponendo il cognome per primo, poi una virgola, quindi il primo ed il secondo nome. I suffissi come Jr., Sr., e III sono generalmente gestiti usando due virgole come separatori, come nell'esempio seguente:
L'autore può non usare una virgola per separare il suffisso del nome dal cognome, usando invece parentesi graffe come in {Hicks III}.

### Uso di più file in input

Se si hanno a disposizione più file .bib, è necessario includerli utilizzando un solo comando \bibliography: i file vanno quindi inseriti all'interno delle parentesi graffe separati da una virgola e nessuno spazio. Per esempio:
\bibliography{bibliography_1,bibliography_2,bibliography_3}

## Stili per usi diversi

Ci sono molti fogli di stile predefiniti per riviste differenti. Se si ha bisogno di personalizzare lo stile di citazione, si possono usare i pacchetti natbib o jurabib oppure makebst

## Software
### Programmi

* Aigaion - Un sistema basato sul web per bibliografie, capace di maneggiare BibTeX, implementato in PHP/MySQL. (GPL)
* Bib-it - Un'applicazione Java libera per gestire citazioni in formato BibTeX, con incluso un generatore di stile bibliografico (.bst). (GPL)
* JabRef - Un'applicazione Java libera per gestire citazioni in formato BibTeX, con inclusa interfaccia di ricerca PubMed e CiteSeer. (GPL)
* Pybliographer - Un'applicazione Python libera per gestire citazioni nel formato BibTeX. (GPL)
* Referencer - Software per GNOME
* RefTeX - Un pacchetto per la gestione delle bibliografie scritto per lavorare con Emacs e BibTeX. Può lavorare con il popolare AUCTeX. (GPL)
* BibDesk - Un'applicazione macOS per gestire bibliografie in formato BibTeX. (GPL)
* Zotero - è una estensione di Firefox e per Chrome, programma Windows ed applicazione Web, per organizzare, collezionare e gestire le citazioni direttamente dal browser mentre si effettuano le ricerche; le citazioni raccolte in su un repository condiviso, possono essere utilizzate nei principali word processor e nelle pagine web, od essere esportate nei principali standard

### Database di bibliografie

* Amatex - Usa Amazon.(com, co.uk, de) per generare oggetti in BibTeX automaticamente.
* Lead2Amazon - Usa Amazon.(com, ca, co.uk, de, fr, co.jp) per generare oggetti in BibTeX automaticamente.
* The Collection of Computer Science Bibliographies Archiviato il 7 giugno 2011 in Internet Archive. - usa BibTeX come formato dati interno.
* CiteSeer - Un database online di pubblicazioni di ricerca che può produrre citazioni in formato BibTeX.
* CiteULike - Un database di bibliografie che ammette BibTeX come input ed output.
* HubMed - Una versatile interfaccia per PubMed che include l'output in BibTeX.
* TeXMed - Un'interfaccia BibTeX per PubMed.
* BibSonomy.