{"id":15936905,"url":"https://github.com/zimmerrol/eagerbib","last_synced_at":"2025-04-03T19:44:06.294Z","repository":{"id":171872370,"uuid":"648529978","full_name":"zimmerrol/eagerbib","owner":"zimmerrol","description":"Updating and normalizing your BibTex bibliography.","archived":false,"fork":false,"pushed_at":"2024-07-17T16:06:37.000Z","size":2931,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-09T08:16:57.360Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zimmerrol.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-06-02T07:26:00.000Z","updated_at":"2024-07-17T16:06:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"c08575e9-c592-4fef-8294-3067c2eb5588","html_url":"https://github.com/zimmerrol/eagerbib","commit_stats":null,"previous_names":["zimmerrol/eagerbib"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zimmerrol%2Feagerbib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zimmerrol%2Feagerbib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zimmerrol%2Feagerbib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zimmerrol%2Feagerbib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zimmerrol","download_url":"https://codeload.github.com/zimmerrol/eagerbib/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247070780,"owners_count":20878581,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-07T04:41:18.025Z","updated_at":"2025-04-03T19:44:06.270Z","avatar_url":"https://github.com/zimmerrol.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# eagerbib: Updating and normalizing your BibTex bibliography.\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/zimmerrol/eagerbib/master/etc/logo-small.png\" /\u003e\n\u003c/p\u003e\n\n## What is eagerbib?\neagerbib is a command line tool to update and normalize your BibTeX bibliography.\nSpecifically, you can use eagerbib to:\n- Update references in your BibTeX file to their latest versions (e.g., \n  replace pre-prints with the final version)\n- Normalize your bibliography (e.g., shorten conference names, remove duplicates, etc.)\n\nFor this, eagerbib uses a combination of offline and online methods. While the \n_offline_ methods are fully automatic and do not require any manual work or supervision,\nthe _online_ methods are only semi-automatic. That is, eagerbib will suggest possible\nupdates to you, but you have to manually confirm them. To make this process as comfortable\nas possible, eagerbib features an easy to use interactive command line interface:\n\n![eagerbib demo](etc/demo.gif)  \n\n\n## Installation\n\nInstall eagerbib via pip:\n```bash\npip install git+https://github.com/zimmerrol/eagerbib.git\n```\n\nTo use the automated reference updater, you need to install a package of offline \ncandidate bibliography files.\nYou can either compile your own list of bibliography files using `eagerbib-crawler` \n(for advanced users) or rely on the precompiled list of bibliography files provided by\n[eagerbib-data](https://github.com/zimmerrol/eagerbib-data).\n\nFor example, to install the package containing bibliography information of machine\nlearning \u0026 computer vision conferences, run:\n```bash\neagerbib-updater -b mlcv\n```\n\nAlternatively, you can also pass a URL to a tar.gz file containing the bibliography:\n```bash\neagerbib-updater -b https://github.com/zimmerrol/eagerbib-data/raw/data/data/mlcv.tar.gz\n```\n\n## Usage\n\n```bash\nusage: eagerbib [-h] [--config CONFIG] --input INPUT --output OUTPUT [--bibliography-folder BIBLIOGRAPHY_FOLDER] [--online-updater.enable ONLINE_UPDATER.ENABLE] [--online-updater.n-suggestions ONLINE_UPDATER.N_SUGGESTIONS]\n                [--online-updater.services ONLINE_UPDATER.SERVICES] [--online-updater.n-parallel-requests ONLINE_UPDATER.N_PARALLEL_REQUESTS] [--output-processor.name-normalizations OUTPUT_PROCESSOR.NAME_NORMALIZATIONS]\n                [--output-processor.deduplicate OUTPUT_PROCESSOR.DEDUPLICATE] [--output-processor.shorten OUTPUT_PROCESSOR.SHORTEN] [--output-processor.sort OUTPUT_PROCESSOR.SORT] [--output-processor.remove-fields OUTPUT_PROCESSOR.REMOVE_FIELDS]\n                [--output-processor.normalize-preprints OUTPUT_PROCESSOR.NORMALIZE_PREPRINTS]\n\noptional arguments:\n  -h, --help            show this help message and exit\n  --config CONFIG, -c CONFIG\n                        The config yaml file to use.\n  --input INPUT, -i INPUT\n                        The input bib file.\n  --output OUTPUT, -o OUTPUT\n                        The output bib file.\n  --bibliography-folder BIBLIOGRAPHY_FOLDER, -l BIBLIOGRAPHY_FOLDER\n                        Folder to load offline candidate bibliography files from.\n  --online-updater.enable ONLINE_UPDATER.ENABLE\n                        True to enable the online/semi-automated reference updater.\n  --online-updater.n-suggestions ONLINE_UPDATER.N_SUGGESTIONS\n                        Number of suggestions per service to show.\n  --online-updater.services ONLINE_UPDATER.SERVICES\n                        The services to use.\n  --online-updater.n-parallel-requests ONLINE_UPDATER.N_PARALLEL_REQUESTS\n                        Number of parallel requests. Higher values may lead to to less buffering while updating references but this requires sufficiently high network bandwidth.\n  --output-processor.name-normalizations OUTPUT_PROCESSOR.NAME_NORMALIZATIONS\n                        The list of conference name data.\n  --output-processor.deduplicate OUTPUT_PROCESSOR.DEDUPLICATE\n                        True to remove entries that are duplicates based oneither their properties or their ID.\n  --output-processor.shorten OUTPUT_PROCESSOR.SHORTEN\n                        True to shorten the conference names.\n  --output-processor.sort OUTPUT_PROCESSOR.SORT\n                        True to sort the output BibTeX entries alphabetically by ID.\n  --output-processor.remove-fields OUTPUT_PROCESSOR.REMOVE_FIELDS\n                        A list of fields to remove from the output entries.\n  --output-processor.normalize-preprints OUTPUT_PROCESSOR.NORMALIZE_PREPRINTS\n                        True to normalize preprints (e.g., arXiv) to the same format.\n```\n\n### Configuring eagerbib\nInstead of passing command line arguments, you can also control everything in eagerbib\nvia a config yaml file. For an example, refer to the [default config file](default_config.yaml).\n\nTo use a custom config file, simply pass it to eagerbib via the `--config` argument.\n\n\n## Acknowledgements\nThis project was inspired by [rebiber](https://github.com/yuchenlin/rebiber).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzimmerrol%2Feagerbib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzimmerrol%2Feagerbib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzimmerrol%2Feagerbib/lists"}