使用usfm引用的工具

USFM-References的Python项目详细描述


USFM参考资料

Build StatusCoverage Status

usfm(统一标准格式标记)圣经参考的验证器

要求

此项目需要Python3.5或更高版本

安装

要安装,请使用

pip install usfm-references

用法

导入一个方法,如

from usfm_references import valid_chapter, valid_chapter_or_intro, valid_usfm, valid_verse

验证方法都是从valid_开始的。只有一个参数 它应该是usmf引用的字符串表示形式。他们都是 返回一个布尔值,该值表示字符串是否对 方法验证所依据的类型。

例如,如果您有一个字符串my_reference,其中引用了Genesis 1:1, 合适的usfm引用应该是GEN.1.1。你可以用有效的诗歌 确保其正确的方法,如

if valid_verse(my_reference):
    # do stuff

注意:这些验证器与正则表达式模式匹配。符合 通用USFM标准。它们不能确保UFM实际上存在于任何 特别的圣经版本。

当前支持的验证程序是:

  • valid_chapter-确保传递的字符串是有效的usfm章节引用
  • valid_chapter_or_intro-确保传递的字符串是有效的usfm章节 或简介
  • valid_usfm-确保传递的字符串是有效的usfm引用(可以是verse、chapter或intro)
  • valid_verse-确保传递的字符串是有效的usfm verse引用

开发

这个项目是用python 3.6编写的,在ci中用python3.5-3.6进行了测试。 其中一个必须在本地开发和测试之前安装。

在Mac上,您可以使用以下命令启动和运行。

brew install python3.6

否则运行

brew upgrade python3.6

以确保您拥有最新版本。

此项目使用pipenv进行依赖关系管理。安装pipenv

pip3 install pipenv

设置项目环境

pipenv install --three --dev

使用此示例创建.env文件

exportPYTHONPATH=`pwd`

现在加载virtualenv和任何.env文件

pipenv shell

运行测试

./linters.sh && pytest --cov=usfm_references tests/

在提交任何代码之前

我们有一个应该设置的预提交挂钩。 通过将目录更改为repo并运行,可以将其符号链接到每次提交之前运行

cd .git/hooks
ln -s ../../pre-commit pre-commit

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

推荐PyPI第三方库


热门话题
java从Struts操作的钩子更改表单值(Liferay 6.2)   java如何改变Spring MVC处理url“点”字符的行为   Clojure中使用Java接口的问题   junit如何模拟comosDB azure java集成客户端?   运行函数时发生java错误   netbeans Java。jar文件和依赖项   Eclipse中文本字段中的java输入类型   在JAVA中,将集合变量从实时批处理运行时传递到调用批处理文件   java通过Bean验证API中的自定义消息管理异常   XML到json的转换,在Java中,同时保留数据类型   根据JAVA中的列名从Excel文件中获取单元格值   在AsyncTask的doInBackground中未调用java FirebaseMessagingService   java如何在数据库中插入一行?