问题标签 [weblate]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
271 浏览

pluralize - 如何为 weblate 翻译文件添加复数形式?

我正在尝试使用 weblate 自托管包(MaxOs Docker,以对其进行测试)来管理我的 iOS 和 Android 应用程序的翻译。我看到多元化是可能的,但我还没有找到将这些添加到项目中的方法。

单击开始新翻译时,我看不到将翻译更改为复数形式的选项。那么如何添加翻译并可以选择更改它呢?

将翻译导出为 android xml 文件时,我正在寻找类似的东西。

在旁注中,我也在寻找一种方法来设置一个键集以在 android 和 iOS 组件之间共享。似乎我必须两次定义所有键和翻译。我以为我读过可以合并的文档,但不清楚如何做到这一点。

0 投票
1 回答
19 浏览

weblate - 有没有限制组件的语言数量?

在 Weblate 中,我们有一个项目,它下面有几个组件。我知道我们可以在组件设置中禁用添加新语言,但是有没有办法限制组件的语言?

0 投票
1 回答
136 浏览

python-sphinx - Weblate 与 Wiki.js 和 git 的集成情况如何?

Weblate 对“使用 Sphinx 翻译文档”有详细的解释。目前,我正在使用wiki.js和 Github。Localize与 Wiki.js 集成得很好,但我更喜欢 Weblate,它是一个开源和自托管的应用程序。

我喜欢 Wiki.js 结构文件和文件夹的方式。Wiki.js 有一个很好的内置编辑器,它们还以 md 格式存储文件。

尽管 Sphinx 与 Weblate 无缝集成,但我想知道 Sphinx 是否可以使用 md 文件而不是 rst 文件格式。

我们也可以将 Sphinx 用于内部文档或保存草稿吗?

Sphinx 是否具有用户、组和权限功能?

我对 Wiki.js 的其他替代方案持开放态度,但它应该具有 git 集成。

0 投票
1 回答
180 浏览

git - 合并冲突的 Weblate 问题

我是一名初级网络开发人员。我正在做一个项目翻译。我们使用与 gitlab repo 链接的 weblate。我在“test-localisation-back”分支中做了一些事情。然后我推送到同一个远程分支当 weblate 尝试自动合并时,他失败了,然后出现了这条消息:“由于以下警报,翻译被自动锁定:无法合并存储库。” 我尝试推送、拉取或变基,但消息并不顺利:“无法将远程分支合并到 Poplab - 后端/API。”(weblate 组件名称)

在本地我的分支是最新的回购

weblate repo details 上有这条消息:在分支 test-localisation-weblate 你的分支和 'origin/test-localisation-weblate' 已经分歧,分别有 2 和 4281 个不同的提交。(使用“git pull”将远程分支合并到你的)

没什么可提交的,工作树干净

我不知道该怎么办。我害怕重置或清理 weblate repo 管理面板

0 投票
0 回答
35 浏览

gitlab - 无法使用 gitlab 帐户登录 weblate

我想使用我的 gitlab 帐户登录 Weblate。

所以我按照GitLab OAuth 2 的说明,将AUTHENTICATION_BACKENDS, SOCIAL_AUTH_GITLAB_KEY, SOCIAL_AUTH_GITLAB_SECRET, SOCIAL_AUTH_GITLAB_SCOPE, 和SOCIAL_AUTH_GITLAB_API_URLvariables 设置到environment文件中。(我使用docker -compose来设置一个自托管的 Weblate 服务。)

我还在https://gitlab.my-company.com/oauth/applications/.

设置好上述所有变量后。我运行docker-compose down && docker-compose up -d以重新启动 Weblate 服务。

但后来我找不到 gitlab 登录选项https://weblate.my-company.com:1443/accounts/login/

图片

我还需要配置什么才能使 gitlab 登录选项出现吗?

我在 docker 容器的日志中找不到任何错误消息。(我docker logs -f <container_id>用来查看日志)

这是我添加到environment文件中的内容:

0 投票
1 回答
43 浏览

localization - 如何告诉 Weblate 一个特定的字符串是复数

我正在使用 ini 文件进行本地化。实际上几乎是Joomla!格式。我搜索了 Weblate 文档并阅读了有关不同语言的 Gettext 复数公式的所有信息。我找不到的是如何“告诉”Weblate 一个特定的字符串 id 是复数形式。我基本上扩展了 ini 以包含以下内容:

我需要知道如何告诉 Weblate APPLE[NUMBER] 是一个复数字符串。

知道怎么做吗?

问候, 拉德克

0 投票
1 回答
117 浏览

git - 如何将 git 子模块集成到 git 工作流

这是我的情况:我的团队和我有一个使用前端框架的项目。它工作得很好,并且使用典型的 git 工作流正确组织,带有master,developfeatures/fixes分支。

我们现在越来越需要向我们的项目添加大量翻译(翻译位于单个文件夹中)。我们决定尝试使用 Weblate 来管理它们。现在,Weblate 可以完全访问我们的整个 git 存储库来推送翻译。

出于安全原因,我们只想Weblate访问我们的翻译文件夹。我们认为我们可以为翻译创建一个 git 子模块并提供weblate对它的访问权限。

不幸的是,我不确定我们如何能够轻松地将子模块集成到我们当前的工作流程中。

我想到了一个解决方案,但我不确定是否可行:我想创建一个子模块,其工作流程类似于主项目。当开发人员(或 weblate)想要更新翻译时,他必须在主项目和子模块上创建一个特性分支,然后在特性完成后合并两个分支。

我不熟悉 git 子模块,可能有更聪明的方法可以做到这一点,因此非常感谢您对此的想法:)

0 投票
1 回答
44 浏览

django - 如何仅使用 django manage.py makemessages 创建 .pot 文件

Weblate 有一个名为“更新 PO 文件以匹配 POT (msgmerge)”的附加组件。我想将文件的创建委托.po给 Weblate,并且仅用于manage.py makemessages创建.pot文件。

manage.py makemessages有一个--keep-pot选项,它将.pot文件添加到输出中。不幸的是,没有选择保留.pot文件。

0 投票
1 回答
34 浏览

api - 如何添加 Weblate REST 翻译文件上传所需的权限?

我正在编写 Weblate(4.3.2 版)安装脚本,我已经成功地从 Weblate REST API 获取现有本地化,curl并使用Authorization TokenWeblate 配置文件设置(登录,从右上角打开配置文件菜单,选择Settings-API Access并复制-粘贴“个人 API 密钥”)。

简而言之,该GET /api/translations/(string:project)/(string:component)/(string:language)/file/请求根据https://docs.weblate.org/en/weblate-4.3.2/api.html#get--api-translations-(string-project)-(string-component)上的文档工作-(string-language)-file-并且我得到了预期的结果,性能非常好。

但是,POST /api/translations/(string:project)/(string:component)/(string:language)/file/请求记录在https://docs.weblate.org/en/weblate-4.3.2/api.html#post--api-translations-(string-project)-(string-component)-(string- language)-file-总是失败并导致以下响应:

与响应主体

我正在尝试使用 Weblate 安装的默认管理员帐户,因此我希望它具有所有必需的权限。如果令牌不正确,我会收到不同的错误,所以我很确定这与令牌错误无关。响应中的 HTTP/2 状态是由我们的反向代理引起的,我假设 Weblate 通常只提供 HTTP/1.1 流量。

我还授予了项目中所有可能的权限-浏览器所有项目-(项目名称)-管理(菜单)-用户;即“管理”、“词汇表”、“语言”、“内存”、“屏幕截图”、“来源”、“翻译”、“VCS”。

此外,我还使用了后端 Django 管理界面,可通过右上角的扳手图标访问,并选择工具和 Django 管理界面。我已授予所有我认为可能会影响权限的组。实际上,此用户帐户对“用户组”具有以下值:

并且它启用了“活动”和“超级用户状态”的状态。

你能建议其他什么尝试吗?我似乎很清楚权限问题,但我错过了什么?

0 投票
1 回答
39 浏览

api - Weblate 组件发现 API 不起作用

weblate当我使用 REST创建插件(组件发现)时API

weblate不会自动获取我推git送到存储库中的文件。

为了使它工作,我首先需要手动

  1. 转到网络浏览器中的发现插件网页,
  2. 将插件保存在网络浏览器中
  3. 接受与 Web 浏览器中的模板匹配的文件列表。

一旦完成了一次,我推git送到存储库中的所有文件都会被weblate.

但是,我们希望使用 REST 自动执行 1)、2) 和 3) 步骤API

我尝试将我们CURL请求的确认和预览字段设置为 false,但它不起作用。

有没有办法配置CURL请求,以便weblate在没有任何手动步骤的情况下发现文件?

温暖的问候。