使用usfm引用的工具
USFM-References的Python项目详细描述
USFM参考资料
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