This repository hosts simple tools I've developed for working with BibTeX bibliography files. They help sharing references with co-authors and navigating to bibliography entries from the editor. See also the advice for working with LaTeX repository.
Run make install to install the files in the /usr/local/bin directory.
If you lack administrator privileges or want to install the files
in a different directory, specify it as the PREFIX variable
when running make, e.g. make PREFIX=$HOME or make PREFIX=/usr to
install the files in $HOME/bin or /usr/bin, respectively.
To execute the programs ensure that the installation directory
is in your PATH.
The bibget tool will process LaTeX .aux or .bcf files,
and use the data found there to output the required BibTeX records into
its standard output.
It is useful for extracting the (typically few) records required for
collaborating on a particular document from a (typically large)
personal collection of BibTeX records.
Here is how the same LaTeX file can use both the personal BibTeX files and the shared generated one.
Use the following in place of the \bibliography command.
\ifx\mypubs\relax
\bibliography{mybibfile1,mybibfile2,mybibfile3,...}
\else
\bibliography{shared-refs,other-refs}
\fi % mypubsBy default this will cause the document to load and use the shared
BibTeX references.
To (re)generate the shared references run the following commands,
where file is the name of your LaTeX file.
latex '\let\mypubs\relax \include{file}'
bibget file.aux >shared-refs.bibUse the following in place of the \addbibresource commands.
\ifx\mypubs\relax
\addbibresource{myfile1.bib}
\addbibresource{myfile2.bib}
\addbibresource{....bib}
\else
\addbibresource{shared-refs.bib}
\addbibresource{other-refs.bib}
\fi % mypubsBy default this will cause the document to load and use the shared
BibTeX references.
To (re)generate the shared references run the following commands,
where file is the name of your LaTeX file.
latex '\let\mypubs\relax \include{file}'
biber file
bibget file.bcf >shared-refs.bib(Under the Windows cmd32 shell replace the single quotes with double quotes.)
Note that under Biber it may also be possible to achieve a similar result, just by
running Biber with the --output-format=bibtex option.
See this comment.
The bibtags tool will process the specified .bib files,
and will create in the current directory a file named tags.
Example:
bibtags $HOME/share/bib/*.bib local.bibThe generated file allows the quick navigation to bibliography entry from
your editor.
For example, in vim you can navigate to the definition
of a bibliography citation by pressing ^] when the cursor
lies on the entry's citation name.