{ "info": { "author": "Rui Xue", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Science/Research", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Operating System :: MacOS :: MacOS X", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Scientific/Engineering :: Astronomy" ], "description": "ADS to BibDesk :sup:`API edition` (ads2bibdesk)\n==============================================================\n\n**ads2bibdesk** helps you add astrophysics articles listed on NASA/ADS to your `BibDesk `_ database using the *new* `ADS Developer API `_.\n\nThe program is loosely based on the original `ads_bibdesk `_ from J. Sick et al.\n*However*, the query is handled with a python client for the ADS API (`ads `_, maintained by A. Casey).\nObsolete codes are replaced in favor of newer built-in Python modules with a simplified code structure.\nThe MacOS workflow building process have been updated.\nThe project packaging now follows the new PyPA `guideline `_.\n\nDue to the API usage, **ads2bibdesk** requires the user to specify a personal API key, per the new NASA/ADS policy.\nThe instruction on how to obtain a key can be found on this official github repo: `adsabs-dev-api `_.\nIn short, to obtain access to the ADS Developer API, one must do two things:\n\n- `Create an account `_ and log in to the latest version of the ADS\n- Push the \u201cGenerate a new key\u201d button under `Customize Settings -> Account Settings -> API Token `_\n\nThe API key can be written into your **ads2bibdesk** preference file ``~/.ads/ads2bibdesk.cfg`` (see the `template `_).\nFollowing the Python/ads package's `instruction `_, one can also save the key to ``~/.ads/dev_key`` or as an environment variable named ``ADS_DEV_KEY``.\n\n\n* Repo: https://github.com/r-xue/ads2bibdesk\n* PyPI: https://pypi.python.org/pypi/ads2bibdesk\n\nQuickstart\n============\n\nInstallation\n~~~~~~~~~~~~\nThe command line script can be installed via::\n\n python setup.py install --user # from a local copy\n pip install --user ads2bibdesk # or, from PyPI\n pip install --user -e . # or, \"Editable\" install\n\nTo have the MacOS `service `_ (`workflow `_) installed at the same time, run one of the following options instead::\n\n python setup.py install --user --service # from a local copy\n pip install --user --install-option=\"--service\" ads2bibdesk # from PyPI\n\nThe option \"--service\" will copy the optional MacOS workflow file ``Add to BibDesk.workflow`` to ``~/Library/Services/``, with an updated command-line script path specific for your installation.\n\nNote: Only Python >=3.7 is supported (see below_). If installing using the option \"--user\", you must add the user-level bin directory (e.g., ``~/Library/Python/3.X/bin``) to your PATH environment variable in order to launch **ads2bibdesk**.\n\n\nUsage\n~~~~~\n\nAdd or update a new article from ADS::\n\n ads2bibdesk \"1807.04291\"\n ads2bibdesk \"2018ApJ...864L..11X\"\n ads2bibdesk \"2013ARA&A..51..105C\"\n ads2bibdesk \"10.3847/2041-8213/aaf872\"\n\n**ads2bibdesk** accepts three kinds of article identifier at this moment\n\n- ADS bibcode (e.g. ``1998ApJ...500..525S``, ``2019arXiv190404507R``)\n- arXiv id (e.g. ``0911.4956``).\n- doi (e.g. ``10.3847/1538-4357/aafd37``)\n\nA full summary of **ads2bibdesk** commands is available via::\n\n ads2bibdesk --help\n\n\nCompatibility and Dependency\n============================\n.. _below:\n\nI've only tested the program on the following MacOS setup:\n\n* MacOS (>=10.14)\n* Python (>=3.7.3)\n* BibDesk (>=1.7.1)\n\nWhile the program likely works on slightly older software versions, I don't focus on the backward compatibility.\nConsidering that Python 2.7 will be deprecated at the end of 2019 and `Python will not even be shipped with MacOS 10.15 (Catalina) by Apple `_ (so the users can do whatever you want), the decision looks appropriate and will reduce the required maintenance/development efforts in longer-term.\nOn my working machine (Mojave), I have Python 3.7 from MacPorts as default::\n\n sudo port install python37 py37-pip py37-ipython\n sudo port select python python37\n sudo port select ipython py37-ipython\n sudo port select pip pip37\n\nStatus\n==============================\n\nThe following functions have *already* been implemented in the package:\n\n- query the article metadata (title, abstract, BibTeX, etc.) with the new API by article identifiers (no more in-house ADS/arxiv HTML parsing functions)\n- download article PDFs using the ADS gateway links\n- use an authorized on-campus ``ssh`` proxy machine (with your public key) to download PDFs behind the journal paywall\n- add/update the BibDesk database and attach downloaded PDFs (largely borrowing the `AppleScript `_ method from the original `ads_bibdesk `_)\n\nOther changes from the original `ads_bibdesk `_ include:\n\n- clean up the dependency requirements (let setup.py do the check)\n- replace obsolete Python syntax/functions/modules with newer ones, e.g. optparser->argparser, f-string formatting, and use configparser()\n- The MacOS Automator workflow is running the installed console script rather than an embedded Python program\n\nSome less-used features from the original `ads_bibdesk `_ are gone: notably, the \"ingest\" and \"preprint-update\" modes.\nBut I plan to at least add back the \"preprint-update\" option, by scanning/updating ``article_bibcode`` associated with arXiv). My improvement proposal can be found `here `_.\n\n\n", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/r-xue/ads2bibdesk", "keywords": "bibtex astronomy ADS", "license": "", "maintainer": "", "maintainer_email": "", "name": "ads2bibdesk", "package_url": "https://pypi.org/project/ads2bibdesk/", "platform": "", "project_url": "https://pypi.org/project/ads2bibdesk/", "project_urls": { "Bug Reports": "https://github.com/r-xue/ads2bibdesk/issues", "Homepage": "https://github.com/r-xue/ads2bibdesk", "Source": "https://github.com/r-xue/ads2bibdesk/" }, "release_url": "https://pypi.org/project/ads2bibdesk/0.1.dev6/", "requires_dist": [ "ads", "requests", "pyobjc" ], "requires_python": ">=3.6, <4", "summary": "Add articles from the new NASA/SAO ADS to your BibDeskbibliography (based on ads_bibdesk from J. Sick et al.).", "version": "0.1.dev6" }, "last_serial": 5612141, "releases": { "0.1.dev5": [ { "comment_text": "", "digests": { "md5": "d421d4876bace053914f23d3cc4f2fbd", "sha256": "0bc9d95066c6b7f594b3cdb75a3ba64bf660e040a954d92c405e020fa8a65c4a" }, "downloads": -1, "filename": "ads2bibdesk-0.1.dev5-py3-none-any.whl", "has_sig": false, "md5_digest": "d421d4876bace053914f23d3cc4f2fbd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6, <4", "size": 22856, "upload_time": "2019-06-21T12:50:33", "url": "https://files.pythonhosted.org/packages/25/1a/40b652850297b2d95f171287af66ba09f9911ba6dc00aac695850ae7eadd/ads2bibdesk-0.1.dev5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e45ee0cd5857d9fc052b2a7389df07ef", "sha256": "0a70cded82b35389334cca1b91ab8463782241a19366840c4f5738e7038c4b9c" }, "downloads": -1, "filename": "ads2bibdesk-0.1.dev5.tar.gz", "has_sig": false, "md5_digest": "e45ee0cd5857d9fc052b2a7389df07ef", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6, <4", "size": 26455, "upload_time": "2019-06-21T12:50:35", "url": "https://files.pythonhosted.org/packages/e5/d0/cc79c8fb21ab2ea09e47c224029485b1d26d80651b678a09f1db2a7cb6d4/ads2bibdesk-0.1.dev5.tar.gz" } ], "0.1.dev6": [ { "comment_text": "", "digests": { "md5": "29e7e76abf1396ba85c1d00d2bd5dc0e", "sha256": "9167d8d92c6427ecc9fd73bf562fa477760b1cf7f9d2d9f143f970645eba7f99" }, "downloads": -1, "filename": "ads2bibdesk-0.1.dev6-py3-none-any.whl", "has_sig": false, "md5_digest": "29e7e76abf1396ba85c1d00d2bd5dc0e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6, <4", "size": 23478, "upload_time": "2019-07-31T07:57:36", "url": "https://files.pythonhosted.org/packages/1c/2c/8ad9cbf19a17b9eaf6b40be8b7c0678f4369ac724c26117e646249c8751c/ads2bibdesk-0.1.dev6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d7be38ff913c97650649ecc99e6eb9f5", "sha256": "479bda1c4a24b0701361d76df005d2d76b0af3e2e47a565320a9db40d30007b9" }, "downloads": -1, "filename": "ads2bibdesk-0.1.dev6.tar.gz", "has_sig": false, "md5_digest": "d7be38ff913c97650649ecc99e6eb9f5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6, <4", "size": 26832, "upload_time": "2019-07-31T07:57:37", "url": "https://files.pythonhosted.org/packages/1b/14/66e488635b82e59e91372c394abbc3a8cdf08d017269253cc82967446991/ads2bibdesk-0.1.dev6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "29e7e76abf1396ba85c1d00d2bd5dc0e", "sha256": "9167d8d92c6427ecc9fd73bf562fa477760b1cf7f9d2d9f143f970645eba7f99" }, "downloads": -1, "filename": "ads2bibdesk-0.1.dev6-py3-none-any.whl", "has_sig": false, "md5_digest": "29e7e76abf1396ba85c1d00d2bd5dc0e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6, <4", "size": 23478, "upload_time": "2019-07-31T07:57:36", "url": "https://files.pythonhosted.org/packages/1c/2c/8ad9cbf19a17b9eaf6b40be8b7c0678f4369ac724c26117e646249c8751c/ads2bibdesk-0.1.dev6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d7be38ff913c97650649ecc99e6eb9f5", "sha256": "479bda1c4a24b0701361d76df005d2d76b0af3e2e47a565320a9db40d30007b9" }, "downloads": -1, "filename": "ads2bibdesk-0.1.dev6.tar.gz", "has_sig": false, "md5_digest": "d7be38ff913c97650649ecc99e6eb9f5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6, <4", "size": 26832, "upload_time": "2019-07-31T07:57:37", "url": "https://files.pythonhosted.org/packages/1b/14/66e488635b82e59e91372c394abbc3a8cdf08d017269253cc82967446991/ads2bibdesk-0.1.dev6.tar.gz" } ] }