跳转到主要内容

引用和文献格式化工具

项目描述

PyPI Build status Code coverage

citeproc-py 是一个用于 Python 的 CSL 处理器。它旨在实现 CSL 1.0.1 规范。citeproc-py 可以输出多种不同格式的格式化引用和文献目录。目前支持纯文本、reStructuredText 和 HTML。其他格式可以轻松添加。

citeproc-py 使用 语义版本控制。目前,其主版本号仍为 0,这意味着 API 还不稳定。然而,您不应该期待 API 出现任何重大变化。

需求

citeproc-py 支持 Python 3.6 及以上版本。它依赖于 lxml 来解析和导航 CSL 风格和区域设置文件。

安装

安装 citeproc-py 的推荐方法是使用 pip

pip install citeproc-py

如果 lxml 没有安装,pip 将尝试为您安装它。

如果您坚持,可以从 PyPI 上的发行版软件包手动安装 citeproc-py。请忽略 GitHub 提供的发布存档。

入门

要开始使用 citeproc-py,请查看 examples/ 下的示例。提供了两个示例,一个是从支持 citeproc-js 的参考 JSON 表示中解析引用,另一个是从 BibTeX 文件中解析引用。这两个示例都展示了如何引用引用并渲染文献目录。

CSL 兼容性

目前,citeproc-py 通过了 citeproc-test 测试套件 中几乎 60% 的(相关)测试。然而,它已经超过 60% 完成,因为 citeproc-py 还没有处理双空格和重复标点符号,导致大量测试失败。此外,以下功能尚未实现(可能还有一些我忘记的)

  • 区分/年后缀

  • et-al-subsequent-min/et-al-subsequent-use-first

  • 合并

  • 引用中的标点符号

  • 显示

此外,一些 citeproc-js 功能(尚未)支持,这些功能不是 CSL 规范的一部分

  • 原始日期

  • 静态排序

  • 文本名称

运行测试

首先克隆 citeproc-test 测试套件,使其位于 citeproc-py 目录旁边。现在您可以运行 citeproc-test.py(在 tests 目录中)。运行 citeproc-test.py --help 来查看其用法信息。

变更日志

发布 0.6.0(2021-05-27)

错误修复

  • Windows 上的各种问题:测试、显式 utf-8 编码

  • 未转义的声明为 r”raw” 的字符串

其他更改

  • 移除了对 Python 2.7、3.5 的支持,并添加了对 3.9 的支持

  • 移除了 Travis CI,以支持 GitHub actions 在所有 3 个主要操作系统(MacOS、Windows、GNU/Linux Ubuntu)上的测试

  • CSL 测试套件从 5779a8c 进展到 c3db429

发布 0.5.1(2020-03-06)

错误修复

  • 避免安装 citeproc-py 时中断 rnc2rng 2.6.2

发布 0.5.0(2020-02-09)

增强

  • 在功能风格中处理逗号和和符号

  • 数字:处理逗号和和符号

  • 添加了 textquotesingle 的符号

  • 指定 fr-CA 和 es-CL 的回退区域设置

  • 改进了页码和范围的解析

错误修复

  • 在空页码范围内不会失败 (#90)(bbm)

  • 在解析不正确的 bib 时检测到文件末尾 (#59)(John Vandenberg)

其他更改

  • 移除了 3.2-3.4 并添加了 3.7、3.8 到支持的 Python

  • 重构区域设置处理

发布 0.4.0(2017-06-23)

新功能

  • 允许指定 BibTeX 数据库文件的编码 (#20 和 #25)

  • BibTeX 'month' 字段:支持整数和 “<month> <day>” 值

  • BibTeX 'pages' 字段:支持 “10”、“10+”、“10-12” 和 “10–12” 格式

  • BibTeX 条目类型:映射非标准 'thesis' 和 'report' 条目

  • 更新 CSL 架构到版本 1.0.1 (#5)

  • 更新 CSL 地区设置到提交 49bf3fc0

错误修复

  • 当没有可附加内容时避免崩溃(David Lesieur)

  • 修复 BibTeX 月份到 CSL 月份的映射 (#24)

  • 从 BibTeX 值中删除前导/尾随空格 (#37)

发布 0.3.0 版本(2014-11-07)

BibTeX 解析器的主要改进

  • 将姓名拆分为部分,并将它们分配给相应的 CSL 姓名部分

  • 修复了处理重音宏和转义字符的问题

  • 在一般情况下(但仍然基础)具有更多兼容性(La)TeX 宏处理

  • 处理标准 Computer Modern 连字符,如 –、— 和 <<

  • 为 BibTeX 和 LaTeX 解析器添加了单元测试

其他更改

  • 默认情况下禁用 CSL 风格的 RelaxNG 验证(API 变更)

发布 0.2.0 版本(2014-10-25)

  • 坏的引用回调函数可以确定坏引用的显示方式(hetsch)

  • 添加了禁用 RelaxNG 验证的功能(Jasper Op de Coul)

  • distutils 被替换为 setuptools(Joshua Carp)

  • 错误修复(Yaroslav Halchenko,David Lesieur)

  • CitationStylesBibliography.bibliography() 现在返回条目列表

项目详情


下载文件

下载适合您平台的应用程序。如果您不确定要选择哪一个,请了解更多关于 安装包 的信息。

源分布

citeproc-py-0.6.0.tar.gz (140.6 kB 查看散列)

上传时间

构建分布

citeproc_py-0.6.0-py3-none-any.whl (179.9 kB 查看散列)

上传时间 Python 3

支持者

AWSAWS 云计算和安全赞助商 DatadogDatadog 监控 FastlyFastly CDN GoogleGoogle 下载分析 MicrosoftMicrosoft PSF赞助商 PingdomPingdom 监控 SentrySentry 错误日志 StatusPageStatusPage 状态页面