自动检索bibtex条目的工具

caleb的Python项目详细描述


caleb

PyPI versionCoverage StatusBuild StatusLanguage grade: PythonGitHubcode style

概述

caleb是自动填写乳胶引用的工具。它假设 你的tex文件中的引文格式是\cite{author:title:year} 或者\cite{author:title}caleb然后从aux中提取引文键 并将从 https://www.crossref.org/(默认)或https://mathscinet.ams.org/mrlookup。 默认情况下,这些条目会附加到bib文件中。如果 --dry-run选项被传递,然后打印条目。

用法示例

查看caleb正在做什么的最快方法是使用--get-this-key 旗帜。

$ caleb --get-this-key 'mazur:eisenstein' --method 'ams'
@article {mazur:eisenstein,
    AUTHOR = {Mazur, B.},
     TITLE = {Modular curves and the {E}isenstein ideal},
      NOTE = {With an appendix by Mazur and M. Rapoport},
   JOURNAL = {Inst. Hautes \'{E}tudes Sci. Publ. Math.},
  FJOURNAL = {Institut des Hautes \'{E}tudes Scientifiques. Publications
              Math\'{e}matiques},
    NUMBER = {47},
      YEAR = {1977},
     PAGES = {33--186 (1978)},
      ISSN = {0073-8301},
   MRCLASS = {14G25 (10D05)},
  MRNUMBER = {488287},
MRREVIEWER = {M. Ohta},
       URL = {http://www.numdam.org/item?id=PMIHES_1977__47__33_0},
}

以下示例出现在examples目录中。

  • 首先运行pdflatex an_example.tex生成an_example.auxcaleb 现在将解析an_example.aux以生成适当的书目 文件。
$ caleb an_example
  • 第一个重要的命令行选项是--take-first。当做一个 查询时,可能有多个结果。默认情况下,caleb 不会采取任何行动。但是,如果传递了--take-first标志, caleb将获取第一个条目。
$ caleb --take-first an_example
$ caleb --method ams an_example

工作流集成

晚些时候

  • 最好的方法可能是集成到latexmk-pdflatex标志 允许我们在每次调用后运行caleb
latexmk -pdf -pdflatex='pdflatex %O %S; caleb -t -m ams %B' an_example
  • 我们可以在.latexmkrc文件中设置-pdflatex标志。这个可以进去 您的tex项目文件夹或在主目录中。所以在.latexmkrc 文件,包括以下行(参见示例目录中的示例):
$pdflatex='pdflatex %O %S; caleb %B'

赤骨

  • 赤裸裸的方法是在运行bibtex之前运行caleb
pdflatex an_example
caleb an_example
bibtex an_example
pdflatex an_example
pdflatex an_example

cocalc

http://cocalc.com包含一个协作乳胶编辑器,允许您使用 自定义生成命令。我们可以将caleb更改为

latexmk -pdf -pdflatex='pdflatex %O %S; caleb -t -m ams %B' -f -g -bibtex -synctex=1 -interaction=nonstopmode an_example.tex

帮助

caleb带有一些命令行参数。

$ caleb --help
usage: caleb [-h] [-t] [-v] [--version] [-m {crossref,ams}] [-g GET_THIS_KEY]
             [-dr]
             [input_name]

positional arguments:
  input_name

optional arguments:
  -h, --help            show this help message and exit
  -t, --take-first      Take first result if multiple results
  -v, --verbose         Increase verbosity of output
  --version             Outputs the version
  -m {crossref,ams}, --method {crossref,ams}
                        Specify a method for retrieving citations
  -g GET_THIS_KEY, --get-this-key GET_THIS_KEY
                        Print the first entry with this key
  -dr, --dry-run        Write the changes to stdout instead of the bibtex

安装

依赖性

测试和开发依赖性

pip

建议的方法是从其PyPI repository中获取caleb

pip3 install caleb --user

setup.py

或者,使用以下命令自动生成setup.py文件 dephell。如果出了什么事就告诉我 错了!

python setup.py install --user

项目目标

  • []实现与IRL的功能对等 Caleb按版本2.13.1995。

主页

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

推荐PyPI第三方库


热门话题
java ProcessBuilder在使用多个参数时运行不正常   java如何使用Spring数据ORM/JPA创建EntityManagerFactory?   将Velocity宏转换为Java指令   internet上的Java TCP/IP服务器客户端通信   java为什么JDK 8允许一个局部内部类(在方法内部)访问封闭方法的非最终局部变量?   基于Java的比率算法   java应用程序在选择列表首选项时出错   java保存对象以供以后使用   java如何使用MySQL JDBC驱动程序连接Android和MySQL   java Zipkin可以用于控制台应用程序   java单击刷新Servlet页面显示重复内容   java如何递归地反转字符串数组?   java如何使用inputStream作为outputStream的文本?   java扩展令牌选择操作符   java在映射中使用通用枚举类   arraylist如何使用JAVA流从对象列表中查找平均值   windows将FileInputStream和FileOutputStream传递给ffmpeg进行转码(使用JAVEJava音频视频编码)   java Ant脚本在执行CVS签出后找不到目标   重复值情况下的java插入排序,双链表ADT   java如何在Accumulo中获取数据库查询计数