Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time
adsTeX (c) Tom Hands 2015 -
ADSTeX is a utility that looks in LaTeX documents for citations, then searches
the NASA ADS database for matching papers, and outputs a .bbl (or bib) file
with your completed bibliography in. It's super-super alpha right now (as of
writing this I've done maybe 6 hours work on it), but you can try running it
on the example.tex file to see what it does. And please excuse the messy code
- I wrote this in the middle of job applications, so good python practice
wasn't the first thing on my mind...

First thing: you're going to need an ADS API key. This key lets adsTeX access
the ADS API to do searches for citations. Go to the new ADS beta
( and sign up. Then follow this link to get your
API key: Now replace the
contents of the file "apikey" in the adstex directory with your key.

To compile the example document:
- You'll need python3.0 or above
- In the adstex directory, run 
> latex example
- Now run
> python3 example
to generate a bibliography
- Re run latex twice to generate a final document.

If you prefer to use BiBTex, adsTeX can generate a .bib file for you. Just run
adsTeX in this way:
> python3 example bibtex
and it will generate a .bib file.

That's it for now. If using in your own document, either of the following citation styles will work:

Where A is the first initial of Author A, B is the first initial of Author B,
2015 is the year and JRNL is the ADS abbreviation of the journal name
(eg. MNRAS, ApJ). You can skip the first initials and/or journal code entirely
if you like, as long as each separate surname starts with a capital
letter. Look in example.tex for more examples and pick a style you like. Do
bear in mind that searches may sometimes be degenerate and the script will
warn you of this - always check you are referencing the correct paper!

If your citation is degenerate, the script will let you know what the other
options are and how to cite them. For instabnce, attempting to cite the paper AGualandris2012MNRAS will throw a
warning and suggest that you may have meant the alternative citation,
AGualandris2012MNRAS1. Simply replace your \cite{AGualandris2012MNRAS} with
\cite{AGualandris2012MNRAS1} and you'll be referencing the other paper. Though do bear in mind that you can often break
degeneracy by specifying more authors.

If you want to avoid degeneracy altogether, you can always cite the ADS ID: 
Where the number can be any one of the hugely long ADS IDs.

The format of bibliography items is currently provided in the file
"customcitationformat". This is identical to the format documented on the ADS
website here: , so you
can construct your own format with ease.

The journal codes seem to be a little hard to come by, so
I'll keep a list below of ones I've found:
- Astronomy & Astrophysics - A&A
- MNRAS - MNRAS (Obviously)
- IAU Symposium - IAUS
- ApJ
- Natur - Nature

Have fun!


A tool to pull latex document reference from ADS






No releases published


No packages published