Saltar para o conteúdo

BibTeX

Origem: Wikipédia, a enciclopédia livre.
BibTeX
Logótipo
BibTeX
Captura de tela
BibTeX
Captura de tela do KBibTeX (versão ucraniana da interface)
Desenvolvedor Oren Patashnik
Plataforma Multiplataforma
Lançamento março de 1985 (39 anos)
Versão estável 0.99d (março de 2010; há 14 anos)
Idioma(s) Inglês
Sistema operacional Linux, Windows, macOS
Gênero(s) Software gerenciador de referências
Estado do desenvolvimento Corrente
Página oficial tug.org/bibtex/

BibTeX é um software de gerenciamento de referências para formatar listas de referências. A ferramenta BibTeX é normalmente usada em conjunto com o sistema de preparação de documentos LaTeX. Dentro do sistema de composição tipográfica, seu nome é estilizado como . O nome é uma combinação da palavra "bibliografia" e do nome do software de composição tipográfica "TeX".

O objetivo do BibTeX é facilitar a citação de fontes de forma consistente, separando as informações bibliográficas da apresentação dessas informações, de forma semelhante à separação de conteúdo e apresentação/estilo suportada pelo próprio LaTeX.

Estrutura básica

[editar | editar código-fonte]

Nas palavras do autor do programa, Oren Patashnik:[1]

BibTeX funciona dessa forma: ele recebe como entrada

  • um arquivo .aux produzido pelo LaTeX em uma execução anterior;
  • um arquivo .bst (de estilo), que especifica o estilo geral da lista de referência e especifica como formatar entradas individuais, e que é escrito por um designer de estilo (...) em uma linguagem para fins específicos (...), e
  • um arquivo .bib constituindo um banco de dados de todas as entradas da lista de referência que o usuário pode esperar usar.

O BibTeX escolhe do arquivo .bib apenas as entradas especificadas pelo arquivo .aux (ou seja, aquelas fornecidas por comandos \cite ou \nocite do LaTeX) e cria como saída um arquivo .bbl contendo essas entradas junto com os comandos de formatação especificados pelo arquivo .bst (...). O LaTeX usará o arquivo .bbl, talvez editado pelo usuário, para produzir a lista de referências.

O BibTeX foi criado por en:Oren Patashnik e Leslie Lamport em 1985. Está escrito em en:WEB/Pascal.

A versão 0.98f foi lançada em março de 1985.

Com a versão 0.99c (lançada em fevereiro de 1988), um estado estacionário foi alcançado por 22 anos.

Em março de 2010, a versão 0.99d foi lançada para melhorar a impressão de URL. Mais lançamentos foram anunciados.[1]

Reimplementações

[editar | editar código-fonte]

Durante o período após a implementação do BibTeX em 1985, várias reimplementações foram publicadas:

BibTeXu
Uma reimplementação do BibTeX (por Yannis Haralambous e seus alunos) que suporta o conjunto de caracteres UTF-8. Taco Hoekwater da equipe LuaTeX criticou-o em 2010 por sua documentação pobre e por gerar erros difíceis de depurar.[2]
bibtex8
Uma reimplementação do BibTeX que suporta conjuntos de caracteres de 8 bits.
CL-BibTeX
Uma reimplementação completamente compatível do BibTeX em Common Lisp, capaz de usar arquivos BibTeX .bst diretamente ou convertê-los em arquivos Lisp .lbst legíveis por humanos. CL-BibTeX suporta Unicode em implementações Unicode Lisp, usando qualquer conjunto de caracteres que Lisp conheça.
MLBibTeX
Uma reimplementação do BibTeX com foco em recursos multilíngues, por Jean-Michel Hufflen.[3]
BibLaTeX
Uma reimplementação completa. "Ele redesenha a maneira como o LaTeX interage com o BibTeX em um nível bastante fundamental. Com o BibLaTeX, o BibTeX é usado apenas para classificar a bibliografia e gerar rótulos. Em vez de ser implementado nos arquivos de estilo do BibTeX, a formatação da bibliografia é totalmente controlada por macros TeX."[4] Ele usa o programa de processamento de bibliografia en:Biber (LaTeX) e oferece suporte completo a Unicode e temas.
Bibulous
Uma substituição de BibTeX drop-in com base em modelos de estilo, incluindo suporte completo a Unicode, escrito em Python.[5]

Arquivo de informação bibliográfica

[editar | editar código-fonte]

O BibTeX usa um formato de arquivo baseado em texto independente de estilo para listas de itens bibliográficos, como artigos, livros e teses. Os nomes dos arquivos de bibliografia BibTeX geralmente terminam em .bib. Um arquivo de banco de dados BibTeX é formado por uma lista de entradas, com cada entrada correspondendo a um item bibliográfico. Os tipos de entrada correspondem a vários tipos de fontes bibliográficas, como artigo (article), livro (book) ou conferência (conference).

Uma entrada de exemplo que descreve um manual de matemática seria estruturada como um nome de entrada seguido por uma lista de campos, como author e title:

@Book{abramowitz+stegun,
 author    = "Milton {Abramowitz} and Irene A. {Stegun}",
 title     = "Handbook of Mathematical Functions with
              Formulas, Graphs, and Mathematical Tables",
 publisher = "Dover",
 year      =  1964,
 address   = "New York City",
 edition   = "ninth Dover printing, tenth GPO printing"
}

Se um documento fizer referência a este manual, as informações bibliográficas podem ser formatadas de maneiras diferentes, dependendo de qual estilo de citação (estilo APA, en:The MLA style manual, en:the Chicago Manual of Style etc.) é empregado. A maneira como o LaTeX lida com isso é especificando comandos \cite e o estilo bibliográfico desejado no documento LaTeX. Se o comando \cite{abramowitz+stegun} aparecer dentro de um documento LaTeX, o programa bibtex incluirá este livro na lista de referências para o documento e gerará o código de formatação LaTeX apropriado. Ao visualizar o documento LaTeX formatado, o resultado pode ser semelhante a este:

Abramowitz, Milton and Irene A. Stegun (1964), Handbook of mathematical functions with formulas, graphs, and mathematical tables. New York: Dover.

Dependendo do arquivo de estilo, o BibTeX pode reorganizar os sobrenomes dos autores, alterar maiúsculas e minúsculas dos títulos, omitir campos presentes no arquivo .bib, formatar texto em itálico, adicionar pontuação, etc. Uma vez que o mesmo arquivo de estilo é usado para uma lista inteira de referências, todas elas são formatadas de forma consistente com o mínimo de esforço exigido dos autores ou editores.

Os tipos de entradas e campos usados em praticamente todos os estilos BibTeX estão listados abaixo.

Tipos de entradas na bibliografia

[editar | editar código-fonte]

Um banco de dados BibTeX pode conter os seguintes tipos de entradas:

article
Um artigo de um periódico ou revista
Campos obrigatórios: author, title, journal, year
Campos opcionais: volume, number, pages, month, note, key
book
Um livro com editora explícita
Campos obrigatórios: author/editor, title, publisher, year
Campos opcionais: volume/number, series, address, edition, month, note, key
booklet
Um trabalho que foi impresso e encadernado, mas que não é distribuído sob o nome de alguma editora ou instituição
Campos obrigatórios: title
Campos opcionais: author, howpublished, address, month, year, note, key
conference
O mesmo que inproceedings, incluído por compatibilidade com a linguagem de marcação en:Scribe.
inbook
Uma parte de um livro, geralmente sem título. Pode ser um capítulo (ou seção, etc.) e/ou um intervalo de páginas
Campos obrigatórios: author/editor, title, chapter/pages, publisher, year
Campos opcionais: volume/number, series, type, address, edition, month, note, key
incollection
Uma parte de um livro que possui título próprio
Campos obrigatórios: author, title, booktitle, publisher, year
Campos opcionais: editor, volume/number, series, type, chapter, pages, address, edition, month, note, key
inproceedings
Um artigo nos anais de uma conferência
Campos obrigatórios: author, title, booktitle, year
Campos opcionais: editor, volume/number, series, pages, address, month, organization, publisher, note, key
manual
Documentação técnica
Campos obrigatórios: title
Campos opcionais: author, organization, address, edition, month, year, note, key
mastersthesis
Uma dissertação de mestrado
Campos obrigatórios: author, title, school, year
Campos opcionais: type, address, month, note, key
misc
Usado quando nada mais se adequar à referência
Campos obrigatórios: none
Campos opcionais: author, title, howpublished, month, year, note, key
phdthesis
Uma tese de doutorado
Campos obrigatórios: author, title, school, year
Campos opcionais: type, address, month, note, key
proceedings
Anais de uma conferência
Campos obrigatórios: title, year
Campos opcionais: editor, volume/number, series, address, month, publisher, organization, note, key
techreport
Um relatório publicado por uma escola ou outra instituição, geralmente numerado em série
Campos obrigatórios: author, title, institution, year
Campos opcionais: type, number, address, month, note, key
unpublished
Um documento que possui um autor e um título, mas que não foi formalmente publicado
Campos obrigatórios: author, title, note
Campos opcionais: month, year, key

Tipos de campos

[editar | editar código-fonte]

Uma entrada BibTeX pode conter vários tipos de campos. Os seguintes tipos são reconhecidos pelos estilos de bibliografia padrão; alguns estilos de terceiros podem aceitar estilos adicionais:

address
Endereço da editora (geralmente apenas a cidade, mas pode ser o endereço completo para editoras menos conhecidas)
annote
Uma anotação para estilos de bibliografia anotada (atípico)
author
Nome(s) do(s) autor(es) (no caso de mais de um autor, separados por and)
booktitle
O título do livro, se apenas parte dele estiver sendo citado
Email
E-mail do(s) autor(es)
chapter
O número do capítulo
crossref
A chave da entrada da referência cruzada
doi
Identificador de Objeto Digital
edition
A edição de um livro, formato longo (como "Primeiro" ou "Segundo")
editor
O(s) nome(s) do(s) editor(es)
howpublished
Como foi publicado, se o método de publicação não for padrão
institution
A instituição que esteve envolvida na publicação, mas não necessariamente a editora
journal
Jornal ou revista em que o trabalho foi publicado
key
Um campo oculto usado para especificar ou substituir a ordem alfabética das entradas (quando os campos "autor" e "editor" estão ausentes). Observe que isso é muito diferente da chave (mencionada logo após esta lista) que é usada para citar ou fazer referência cruzada à entrada.
month
O mês da publicação (ou, se não publicado, o mês da criação)
note
Informações extras diversas
number
O "número (da edição)" de um periódico, revista ou relatório técnico, se aplicável. Observe que este não é o "número do artigo" atribuído por alguns periódicos.
organization
O patrocinador da conferência
pages
Números de página, separados por vírgulas ou hífens duplos.
publisher
Nome da editora
school
A escola onde a tese foi escrita
series
A série de livros em que o livro foi publicado (por exemplo, "The Hardy Boys" ou "en:Lecture Notes in Computer Science")
title
O título da obra
type
O campo que substitui o tipo de publicação padrão (por exemplo, "Research Note" para techreport, "{PhD} dissertação" para phdthesis, "Section" para inbook/incollection)
volume
O volume de um jornal ou livro de vários volumes
year
O ano de publicação (ou, se não publicado, o ano de criação)

Além disso, cada entrada contém uma chave (Bibtexkey) que é usada para citar ou fazer referência cruzada à entrada. Esta chave é o primeiro item em uma entrada BibTeX e não faz parte de nenhum campo.

Arquivos de estilo

[editar | editar código-fonte]

O BibTeX formata itens bibliográficos de acordo com um arquivo de estilo, geralmente gerando comandos de formatação TeX ou LaTeX. No entanto, também existem arquivos de estilo para gerar a saída HTML. Arquivos de estilo BibTeX, para os quais o sufixo .bst é comum, são escritos em uma linguagem de programação simples baseada em pilha (apelidada de "BibTeX Anonymous Forth-Like Language" ou "BAFLL", por Drew McDermott ) que descreve como os itens bibliográficos devem ser formatados. Existem alguns pacotes que podem gerar arquivos .bst automaticamente (como custom-bib ou Bib-it).

A maioria dos periódicos ou editores que suportam LaTeX tem um arquivo de estilo bibliográfico personalizado para conveniência dos autores. Isso garante que o estilo bibliográfico atenda às diretrizes do editor com o mínimo de esforço.

  • Astrophysics Data System – O NASA ADS é um banco de dados online com mais de oito milhões de artigos de astronomia e física e fornece citações no formato BibTeX.
  • en:BibDesk – Aplicativo de software de código aberto para MacOS para criar, editar, gerenciar e pesquisar arquivos BibTeX.
  • en:BibSonomy – Um marcador social e sistema de gerenciamento de publicação baseado em BibTeX.
  • Citavi – Gerenciador de referências. Funciona com vários editores TeX e suporta entrada e saída BibTeX.
  • CiteSeerX – Um banco de dados online de publicações de pesquisa que pode produzir citações no formato BibTeX.
  • en:CiteULike (descontinuado) – Um banco de dados bibliográfico baseado na comunidade que tinha entrada e saída BibTeX.
  • en:The Collection of Computer Science Bibliographies – usa o BibTeX como formato interno de dados, resultados de pesquisa e contribuições principalmente no BibTeX.
  • en:Connotea – Sistema de gerenciamento de publicação de estilo de marcador social de código aberto.
  • Digital Bibliography & Library Project – Um site de bibliografia que lista mais de 910.000 artigos na área de ciência da computação.
  • Google Livros – As informações bibliográficas de cada livro podem ser exportadas no formato BibTeX por meio do recurso 'Export Citation'.
  • Google Scholar – O sistema do Google para pesquisar literatura acadêmica fornece citações no formato BibTeX se a opção estiver habilitada em 'Preferências do acadêmico'.
  • Google AI – Instalada na divisão inteligência artificial do Google, é uma compilação de publicações da equipe do Google com links de citação BibTeX.
  • en:HubMed – Uma interface PubMed versátil, incluindo saída BibTeX.
  • en:INSPIRE-HEP – O banco de dados de literatura INSPIRE High-Energy Physics fornece citações no formato BibTeX para mais de um milhão de artigos sobre física de alta energia.
  • JabRef – Aplicativo de software multiplataforma de código aberto para criar, editar, gerenciar e pesquisar arquivos BibTeX e BibLaTeX.
  • MathSciNet – Banco de dados da American Mathematical Society (assinatura), escolha BibTeX na caixa "Selecionar formato alternativo"
  • en:Mendeley – Gerenciador de referências, para coleta de artigos. Ele suporta a exportação de coleções para arquivos bib e os mantém sincronizados com seu próprio banco de dados.[6]
  • en:Paperpile – Gerenciador de referências, suporta entrada e saída BibTeX. A saída BibTeX pode ser personalizada.
  • Pandoc – Conversor de documentos de código aberto que pode ler um arquivo BibTeX e produzir citações formatadas em qualquer estilo bibliográfico especificado em um arquivo en:citation style language (CSL).
  • en:Qiqqa – Aplicativo de software para Windows que inclui um editor e validador BibTeX completo, juntamente com ferramentas para preencher automaticamente os registros BibTeX para PDFs.
  • en:refbase – Gerenciador de referências de código aberto para repositórios institucionais e autoarquivamento com entrada e saída BibTeX.
  • Gerenciador de referências baseado em en:RefTeXEmacs.
  • en:Wikindx – Gerenciador de bibliografia aprimorado / en:virtual research environment (ambiente de pesquisa virtual) de código aberto, incluindo entrada e saída BibTeX.
  • Wikipédia – Pressionar citar esta página ao lado de um artigo fornece uma citação no formato BibTeX.
  • Zentralblatt MATH – Base de dados da European Mathematical Society, FIZ Karlsruhe e Heidelberg Academy (assinatura, 3 entradas gratuitas); escolha o botão ou formato BibTeX.
  • Zotero – Gerenciador de referência de código aberto com recursos avançados, como sincronização entre diferentes computadores, bookmarking social, pesquisa dentro de PDFs salvos e saída BibTeX.
  1. a b PATASHNIK, Oren. Tex.ac.uk, 27 de setembro de 2011.
  2. HOEKWATER, Taco. BibTeXU. Permalink.gmane.org, 01 de Junho de 2010.
  3. HUFFLEN, Jean-Michel. MlBibTeX's Architecture. Zeeba.tv.
  4. Descrição do pacote BibLaTeX da distribuição Debian Wheezy de maio de 2011.
  5. Bibulous documentation. Nzhagen.github.io.
  6. VIDAL, Ricardo. HOWTO: Use Mendeley to create citations using LaTeX and BibTeX. Mendeley Blog, 25 de Outubro de 2011.

Ligações externas

[editar | editar código-fonte]