基于Git的翻译服务集成Wagtail Localize
项目描述
wagtail-localize-git
此插件通过git仓库中的PO文件实现Wagtail内容的翻译。
它通过将源内容提交到仓库并轮询更新来实现。当PO文件被翻译时,这将自动在Wagtail中创建翻译后的页面。
这对于您使用外部翻译工具翻译Wagtail内容非常有用。目前,此插件支持Mozilla的Pontoon,但欢迎其他翻译工具的PR!
安装
此插件需要Wagtail >= 5.2,且已启用国际化和Wagtail Localize。
安装wagtail-localize
和wagtail-localize-git
,然后将其添加到您的INSTALLED_APPS
# settings.py
INSTALLED_APPS = [
# ...
"wagtail_localize",
"wagtail_localize.locales", # Replaces 'wagtail.locales'
"wagtail_localize_git",
# ...
]
然后设置以下设置
WAGTAILLOCALIZE_GIT_URL
- 这是wagtail-localize-git
将推送到并从其中获取翻译的空git仓库的URL。WAGTAILLOCALIZE_GIT_CLONE_DIR
- git仓库将被检出到的本地目录。
默认情况下,wagtail-localize-git
将尝试检出并使用main
分支。要更改此设置,将WAGTAILLOCALIZE_GIT_DEFAULT_BRANCH
设置为您的仓库的默认分支(例如,master
)
同步
配置完成后,您可以使用sync_git
管理命令来推送/拉取更改。应将此管理命令设置在服务器的crontab中,以便经常运行(最好是每10分钟一次)。
工作原理
此插件使用wagtail-localize
将页面转换为段,并从翻译的段中构建新页面。wagtail-localize
提供Web界面,用于在Wagtail本身中翻译这些段,此插件与该界面配合良好(翻译也可以从Wagtail端进行)。
当页面/片段从默认区域设置提交以进行翻译时,它们会被提交到git仓库。目前不支持在其他区域设置中编写的页面。
贡献
欢迎所有贡献!
安装
要对此项目进行更改,首先克隆此仓库
git clone git@github.com:wagtail/wagtail-localize-git.git
cd wagtail-localize-git
使用您首选的虚拟环境激活后,安装测试依赖项
pip install -e .[testing] -U
pre-commit
请注意,此项目使用pre-commit。要本地设置
# if you don't have it yet, globally
$ pip install pre-commit
# go to the project directory
$ cd wagtail-localize-git
# initialize pre-commit
$ pre-commit install
# Optional, run all checks once for this, then the checks will run only on the changed files
$ pre-commit run --all-files
如何运行测试
现在您可以按照以下方式运行测试
tox
或者,您可以针对特定环境运行它们 tox -e py3.11-django4.2-wagtail5.2
或特定测试 tox -e py3.11-django4.2-wagtail5.2-sqlite -- tests.test_git.TestRepository
要交互式运行测试应用,使用 tox -e interactive
,访问 http://127.0.0.1:8020/admin/
并使用 admin
/changeme
登录。
项目详情
下载文件
下载适合您平台的应用程序。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源代码分发
构建分发
wagtail_localize_git-0.14.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ad03cb9feb456e2205d9fc21aa14f2248ee7ca6cb03799d9541f19afbd9ee538 |
|
MD5 | 4503b402595efa651b1043c533cd6d58 |
|
BLAKE2b-256 | f1f79b9ad9d31f43633b39332725496469fe6a7306049b1c2c12f174921f51d0 |
wagtail_localize_git-0.14.1-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 274206c58365a5bb5887d767a7c80afbf0517320b4064617bd7804a3e8a01c80 |
|
MD5 | 3f3c10b918990f00f34e73174e7bf3b3 |
|
BLAKE2b-256 | ddde54ff6db6bcb7ccabb9982d56cd28b4c6e7a1cf04e9d84b9158dc9510c971 |