更好的bibtex数据

betterbib的Python项目详细描述


betterbib

CircleCIcodecovCode style: blackawesomePyPi VersionGitHub starsPyPi downloads

bibtex文件通常是手动维护的,因此常常包含不一致的内容, 错误,或是信息缺失。betterbib通过以下方式帮助维护bibtex文件 将它们与在线资源进行比较,并更正发现有问题的条目。

只需运行

betterbib in.bib out.bib

使用默认设置改进bibtex文件。例如,输入bibtex

@article {krylov,
  author = {Liesen and Gaul and Nabben},
  title = {Framework Deflation Krylov Augmented}
}

转换为

@article{krylov,
 author = {Gaul, André and Gutknecht, Martin H. and Liesen, Jörg and Nabben, Reinhard},
 title = {A Framework for Deflated and Augmented {Krylov} Subspace Methods},
 doi = {10.1137/110820713},
 number = {2},
 pages = {495-518},
 source = {Crossref},
 url = {https://doi.org/10.1137/110820713},
 volume = {34},
 journal = {SIAM J. Matrix Anal. \& Appl.},
 publisher = {Society for Industrial \& Applied Mathematics (SIAM)},
 issn = {0895-4798, 1095-7162},
 year = {2013},
 month = jan,
}

工具

以下所有工具都可以从标准输入读取和写入标准输出,因此 你可以把它们连接起来得到你想要的。例如,上面的 betterbib命令等同于

betterbib-sync in.bib | betterbib-journal-abbrev | betterbib-format -b - out.bib

同步

betterbib从

所有betterbib sync命令行选项都在betterbib-sync -h中解释。

格式

工具

betterbib-format in.bib out.bib

允许您对bibtex文件应用一致的格式。参见-h/--help 选项。

(UN)日记本缩写名

工具

betterbib-journal-abbrev in.bib out.bib

允许您应用日志名称的一致缩写。参见-h/--help 选项。

自定义日记账缩写

要对日志名称使用自定义缩写,请将文件创建为json字典,然后 将其作为命令行参数与--extra-abbrev-file一起提供。例如,如果 文件correct_pnas.json是:

{"PNAS":"Proc. Natl. Acad. Sci.  U.S.A."}

你打电话给betterbib-journal-abbrev --extra-abbrev-file=correct_pnas.json,这会 用正确的缩写替换任何列有日记账“PNAS”的BIBTEX条目。

此选项包含在betterbibbetterbib-journal-abbrev命令中。

当与--long-journal-names选项组合时,这将覆盖默认选项 只有两个都有相同的缩写。

配置

在bibtex标题中,有些单词需要用花括号保护,以便 大写正确,例如{Einstein}。betterbib自动识别 它们(如果它们在默认字典中,比如Einstein),但是您可能需要添加 一些。为此,请创建配置文件

~/.config/betterbib/config.ini

并填充,例如

[DICTIONARY]
add=Arnoldi,
    Bernstein,
    Boolean,
    Chebyshev,
    Hermitian

remove=hermitian,
   boolean

安装

betterbib是available from the Python Package Index,所以只要做

pip3 install betterbib --user

安装。

测试

要运行betterbib单元测试,请签出此存储库并键入

pytest

许可证

betterbib发布在MIT license下。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
找不到足够的连续内存会导致OOM吗?   java如何计算一个矩形可以放入另一个矩形的次数?   谷歌地图api java   java Autowired批注在AuthenticationSuccessHandler中返回null   Java电话号码格式正则表达式   eclipse我希望能够同时选择多个复选框?Java SWT   java j2objc可以用于生成不适用于iOS的目标C代码吗?   使用cUrl将PHP post数组转换为java servlet   java playpac4j和Play 2.5:@requireAuthentication注释导致stacktrace   java为什么在Javamail中连接超时?   java使用SwingUtilities。main方法中的invokeLater()   如何在名为from Unity的Java插件中创建Android处理程序