Skip to main content

Replace arxiv links in markdowns by their corresponding bibliography.

Project description

A2B (Arxiv to Bibliography)

Replace arXiv links (or doi links) by their corresponding bibliography in markdowns. Inspired by Mu Li.

demo

This repo provides a tool to replace arXiv/DOI links saved in

with their corresponding bibliographic information, which intends to create a more convenient experience for users in needs of searching, collecting, and taking notes of literatures. The script uses the Semantic Scholar API to retrieve information such as authors, title, journal, year, and citation count for a given arXiv paper.

Installation

To install a2b, make sure you have pip installed and run:

>> pip install a2b

Usage

The tool can be run from the command line, e.g. to check the installed version of a2b,

>> a2b --version

Markdown

1. Generate markdown from a single arXiv link or DOI

For example:

>> a2b --arXiv https://arXiv.org/abs/1912.08957

## __Optimization for deep learning: theory and algorithms.__ *Ruoyu Sun.* __ArXiv, 2019__ [(Arxiv)](https://arXiv.org/abs/1912.08957) 
## [(S2)](https://www.semanticscholar.org/paper/c23173e93f1db79a422e2af881a40afb96b8cb92) (Citations __114__)

Here you can use the link of pdf https://arXiv.org/pdf/1912.08957.pdf, instead of the link of arXiv page.

>> a2b --doi https://doi.org/10.1007/BF00133570

## __Snakes: Active contour models.__ *M. Kass et al.* __International Journal of Computer Vision, 2004__ 
## [(Link)](https://doi.org/10.1007/BF00133570) [(S2)](https://www.semanticscholar.org/paper/9394a5d5adcb626128b6a42c8810b9505a3c6487)
## (Citations __15860__)

One can simply provide the DOI 10.1007/BF00133570 without adding the hyperlink prefix to generate bibilography from DOI.

2. Replace arXiv links in a single markdown file

>> a2b path/to/markdown.md

3. Replace arXiv links in all markdown files within a directory

Run the following command to replace all arXiv links found in the given directory and its subdirectories.

>> a2b path/to/directory

To replace arXiv links in the markdown files ONLY within the directory (subdirectories excluded), use arguments --no-recursive or -nr:

>> a2b -nr path/to/directory

Notion Database

To generate bibliography from links saved in a Notion database, follow the instructions below

  1. Create a new Notion integration and keep the Notion API key obtained from the integration
  2. Go to the Notion database and
    • Connect the Notion database to the integration you just created
    • Create these columns (with data type matched) in the Notion database
      • Title (title)
      • Author (rich_text)
      • Year (number)
      • Journal (rich_text)
      • Arxiv (url)
      • Link (url)
      • S2 (url)
      • Citations (number)
  3. Paste Arxiv links or doi links in the column Title and run the following command to activate the conversion
>> a2b --notion notion_database_id --key notion_api_key
# or
>> a2b --notion notion_database_url --key notion api_key

You can choose to save your Notion API key as a environment variable NOTION_API_KEY, and then you can simply run without manually providing the key in command:

>> a2b --notion notion_database_id
# or
>> a2b --notion notion_database_url

Changelog

  • Version 1.0.5
    • Support Notion database
    • Fix version command
  • Version 1.0.4
    • Support creating bibliography from DOI links
    • Support querying a single arXiv link from terminal

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

a2b-1.0.6.tar.gz (9.0 kB view details)

Uploaded Source

Built Distribution

a2b-1.0.6-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file a2b-1.0.6.tar.gz.

File metadata

  • Download URL: a2b-1.0.6.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.4

File hashes

Hashes for a2b-1.0.6.tar.gz
Algorithm Hash digest
SHA256 1ec4ada92102784ad154d0dc1a83302f826f3458e2283776058d27c8cde5b7e8
MD5 ddbb7523c596294b5fd1623870b02710
BLAKE2b-256 0597bd95f47042ac319b518c8f238cbbde41c38629194accad7ad9c25918ece2

See more details on using hashes here.

File details

Details for the file a2b-1.0.6-py3-none-any.whl.

File metadata

  • Download URL: a2b-1.0.6-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.4

File hashes

Hashes for a2b-1.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 541bba55e3268854d13d2e91abea3b106927a08e94b15faf7452fb91f166e22a
MD5 8e659ed4ef7e46c260ad4d0affd56b64
BLAKE2b-256 489069d6eebd5ce34fb49d20398c8030f2d3a95c2a6f4ed083e50fd94341ca9d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page