Note: the main Ebib page and source code have moved to Github. The Sourceforge page and source releases are no longer updated.
Ebib is a program for managing BibTeX databases. There are already quite a few such programs, but Ebib has a special property: it runs inside Emacs. If you are used to doing everything LaTeX from within Emacs, you may appreciate that you can manage your .bib
files in Emacs as well. One distinct advantage of Ebib is that you do not need to switch to another window and copy/paste a BibTeX key into your LaTeX file with the mouse. Ebib provides functions with which you can select a key from the database and have it inserted directly into your LaTeX text.
Ebib is fully keyboard-operated. Unlike other BibTeX database managers, you do not need the mouse at all. Everything Ebib can do can be accomplished with simple one-key commands. This makes using Ebib much faster than other similar programs, which are usually mouse-operated. And because Emacs does not have to run under X, Ebib can be used without X as well.
Ebib provides the standard capabilities that one would expect from a BibTeX database manager: .bib
files can be opened, modified (adding, deleting, modifying entries), searched, and saved. Apart from the basics, Ebib has quite a few extra features that make managing your BibTeX files easier.
Features
General
- visual representation distinguishing obligatory, optional and additional fields.
- copy/cut/paste mechanism for quickly copying field values. (This fully integrates with Emacs' kill ring.)
- automatic loading of
.bib
files upon start-up. - extensive user manual.
BibTeX
- format of the
.bib
file is not restricted: everything that BibTeX accepts is also accepted by Ebib. - creating and editing
@string
and@preamble
definitions is supported. - BibTeX entry and field types can be customised, allowing adaptation for non-standard and personal bibliography styles.
- automatic creation of entry keys.
- field values containing newlines are supported, allowing the creation of annotated bibliographies.
- the database can be saved with the entries in the
.bib
file sorted on user-specified fields (useful in ConTeXt). - alternatively, the database can be saved with all entries containing a
crossref
field at the top of the.bib
file, allowing you to make use of BibTeX's cross-referencing facility.
Databases
- multiple
.bib
files can be opened at the same time. - merging of a second
.bib
file with an already loaded database. - single or multiple entries can be exported to another file, or to another open database, allowing the creation of a new specialised
.bib
file from an existing one.@preamble
and@string
definitions can also be exported.
Searching
- incremental search for BibTeX keys is supported.
- simple regexp searches can be performed on a database, searching the contents of all fields of each entry.
- complex search queries with logical
and
,or
andnot
operators, built up interactively, can be performed, with the possibility of searching only specific fields.
LaTeX integration
- from within a LaTeX document, it is possible to select (using TAB-completion) and insert a BibTeX key into the document. This can also be set up for other document formats that support automatic bibliographies: support for Org mode and Pandoc markdown is included.
- inside Ebib, it is possible to push entries to a LaTeX buffer.
- quick summary of entries into a
*Help*
buffer. - creating a
.bib
file from a.bbl
file, allowing you to create a.bib
file for a LaTeX document containing only the references in the document.
Miscellaneous
- entries can be imported from text buffers or from the
*scratch*
buffer (allowing copy & paste of BibTeX entries, e.g. from the Internet). - a URL stored in a BibTeX field can be extracted and sent to a browser.
- files stored in a BibTeX field can be opened with user-configurable viewers.
- a time stamp can be added to each new entry, allowing you to keep track of new additions in the database.
- (parts of) databases can be printed, either as a list of references typeset by BibTeX, or directly as database entries.
Screenshots
Visually, Ebib is not very spectacular. But to get an impression of what it looks like, you can view the following three screenshots. The first shows Ebib's standard lay-out, with the list of entry keys in the top window and the fields of the currently highlighted entry in the bottom window. (The field values displayed in red come from the cross-referenced entry.) In the second, the string 'Reuland' is highlighted as the result of a text search. The third screenshot shows the strings buffer, where you can edit the @string
definitions in the database.
Manual
The complete user manual for Ebib is available in html format here.
Download
Tar balls of Ebib releases can be downloaded from the Sourceforge Project Page. The tar ball contains the source code, and the manual in info and html format. Installation instructions can be found in the manual.
There is also a public git repository for Ebib. From there, you can get the latest sources, provided you have git installed.
Mailing list
Ebib has a mailing list: ebib-users. Here, you can ask any questions regarding Ebib, send bug reports or feature requests.