{ "info": { "author": "Austin Clements", "author_email": "colour-science@googlegroups.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 3", "Topic :: Database", "Topic :: Text Processing" ], "description": "Biblib\n------\n\nThis repository was forked from [Austin Clements\nrepository](https://github.com/aclements/biblib) to create\na [PyPi package](https://pypi.org/project/biblib-simple/).\n\nBiblib provides a simple, standalone Python3 package for parsing\nBibTeX bibliographic databases, as well as algorithms for manipulating\nBibTeX entries in BibTeX-y ways.\n\nThere are a lot of BibTeX parsers out there. Most of them are\ncomplete nonsense based on some imaginary grammar made up by the\nmodule's author that is almost, but not quite, entirely unlike\nBibTeX's actual grammar. *BibTeX has a grammar*. It's even pretty\nsimple, though it's probably not what you think it is. The hardest\npart of BibTeX's grammar is that it's only written down in one place:\nthe BibTeX source code.\n\nBiblib's parser is derived directly from the WEB source code for\nBibTeX and hence (barring bugs in translation) should be fully\ncompatible with BibTeX's own parser.\n\n\nFeatures\n--------\n\n* BibTeX-compatible `.bib` file parser\n\n* BibTeX-compatible name parser for fields like `author`\n\n* Crossref resolution\n\n* BibTeX-compatible title casing\n\n* Translator for common TeX markup (like accents) to Unicode (which\n can, in turn, be used in HTML and other formats).\n\n\nInstallation\n------------\n\nSince biblib has no external dependencies or C modules, you can use\nbiblib in your project by simply unpacking it under your source tree\nand adding\n\n sys.path.append('biblib')\n\nbefore importing it.\n\nBiblib can also be installed system-wide with\n\n python3 setup.py install\n\n\nExamples\n--------\n\nThere are a few simple examples of biblib's use in `examples/`. To\nrun these dircetly from the source tree, use, for example\n\n PYTHONPATH=$PWD ./examples/bibparse test.bib\n\n\nRecognized grammar\n------------------\n\nFor reference, the `.bib` parser implements a grammar equivalent to\nthe following PEG. All literals are matched case-*insensitively*.\n\n bib_db = comment (command_or_entry comment)*\n\n comment = [^@]*\n\n ws = [ \\t\\n]*\n\n ident = ![0-9] (![ \\t\"#%'(),={}] [\\x20-\\x7f])+\n\n command_or_entry = '@' ws (comment / preamble / string / entry)\n\n comment = 'comment'\n\n preamble = 'preamble' ws ( '{' ws preamble_body ws '}'\n / '(' ws preamble_body ws ')' )\n\n preamble_body = value\n\n string = 'string' ws ( '{' ws string_body ws '}'\n / '(' ws string_body ws ')' )\n\n string_body = ident ws '=' ws value\n\n entry = ident ws ( '{' ws key ws entry_body? ws '}'\n / '(' ws key_paren ws entry_body? ws ')' )\n\n key = [^, \\t}\\n]*\n\n key_paren = [^, \\t\\n]*\n\n entry_body = (',' ws ident ws '=' ws value ws)* ','?\n\n value = piece (ws '#' ws piece)*\n\n piece\n = [0-9]+\n / '{' balanced* '}'\n / '\"' (!'\"' balanced)* '\"'\n / ident\n\n balanced\n = '{' balanced* '}'\n / [^{}]\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/colour-science/biblib", "keywords": "bibtex,tex", "license": "", "maintainer": "", "maintainer_email": "", "name": "biblib-simple", "package_url": "https://pypi.org/project/biblib-simple/", "platform": "", "project_url": "https://pypi.org/project/biblib-simple/", "project_urls": { "Homepage": "https://github.com/colour-science/biblib" }, "release_url": "https://pypi.org/project/biblib-simple/0.1.1/", "requires_dist": null, "requires_python": "", "summary": "Simple, correct BibTeX parser and algorithms", "version": "0.1.1" }, "last_serial": 4972240, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "5501699657a33c03ec5b54822a2eb0b2", "sha256": "e2d8c6d871c3a0bdfb4a0e40bf5d2f7de278424b686e0a686089b7bff4cb31b3" }, "downloads": -1, "filename": "biblib_simple-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "5501699657a33c03ec5b54822a2eb0b2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 20136, "upload_time": "2019-03-22T09:44:45", "url": "https://files.pythonhosted.org/packages/91/8d/a1edac81b163ccc75a4e9c7167a2987c2fc8b04cd292eeb744c6535e6be7/biblib_simple-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c10b2bcb27d4c776b07af3c5d6abb568", "sha256": "a45b93f530111c3afcc488e14c5c58d57530bc76e5ee16317637ed0d763eea8c" }, "downloads": -1, "filename": "biblib-simple-0.1.0.tar.gz", "has_sig": false, "md5_digest": "c10b2bcb27d4c776b07af3c5d6abb568", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19613, "upload_time": "2019-03-22T09:44:12", "url": "https://files.pythonhosted.org/packages/46/0e/cdc08119b4f58757c3b9d158a78362fd263df3cde78ebe331c3c69d4ff4f/biblib-simple-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "9596284c95234a03d1e1062be6f04087", "sha256": "37a33fd15701ff2efb9e17b75ebbb53f9169c05b6d1adc80461025de8f307a9b" }, "downloads": -1, "filename": "biblib_simple-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "9596284c95234a03d1e1062be6f04087", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 20131, "upload_time": "2019-03-22T10:00:26", "url": "https://files.pythonhosted.org/packages/78/40/1a563e30658c2ebfe6f674bb94f341ebbf74b3f7e40fea319c8ee1c213ed/biblib_simple-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5c02df78a7053ac2571e123281838786", "sha256": "6dca5c4dff448935f0f4baa78bdfe22ae692d34e40dcd8c017ced8b643c816bf" }, "downloads": -1, "filename": "biblib-simple-0.1.1.tar.gz", "has_sig": false, "md5_digest": "5c02df78a7053ac2571e123281838786", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19625, "upload_time": "2019-03-22T10:00:40", "url": "https://files.pythonhosted.org/packages/51/6b/851ed1a0a57544d5ac767b1a403794898d198bd8e7836d450ab1605e18be/biblib-simple-0.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9596284c95234a03d1e1062be6f04087", "sha256": "37a33fd15701ff2efb9e17b75ebbb53f9169c05b6d1adc80461025de8f307a9b" }, "downloads": -1, "filename": "biblib_simple-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "9596284c95234a03d1e1062be6f04087", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 20131, "upload_time": "2019-03-22T10:00:26", "url": "https://files.pythonhosted.org/packages/78/40/1a563e30658c2ebfe6f674bb94f341ebbf74b3f7e40fea319c8ee1c213ed/biblib_simple-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5c02df78a7053ac2571e123281838786", "sha256": "6dca5c4dff448935f0f4baa78bdfe22ae692d34e40dcd8c017ced8b643c816bf" }, "downloads": -1, "filename": "biblib-simple-0.1.1.tar.gz", "has_sig": false, "md5_digest": "5c02df78a7053ac2571e123281838786", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19625, "upload_time": "2019-03-22T10:00:40", "url": "https://files.pythonhosted.org/packages/51/6b/851ed1a0a57544d5ac767b1a403794898d198bd8e7836d450ab1605e18be/biblib-simple-0.1.1.tar.gz" } ] }