我想知道如何阻止 Discourse 覆盖我已经自定义的翻译。我们的 UI/UX 进行了一些定制,并不完全遵循 Discourse 当前的默认设置。
在西班牙语中,有些用户不理解 在编辑器中输入时启用智能列表,而更习惯 编写消息时自动显示列表,许多其他字符串也存在同样的问题。
我发现自己不得不多次修改文本,因为主分支进行了更新。以前,我可以忽略这些“新”翻译,但几个月来,它们总是覆盖我的自定义内容。
我欢迎任何建议、变通方法,或者需要检查的管理配置项。谢谢 ![]()
我想知道如何阻止 Discourse 覆盖我已经自定义的翻译。我们的 UI/UX 进行了一些定制,并不完全遵循 Discourse 当前的默认设置。
在西班牙语中,有些用户不理解 在编辑器中输入时启用智能列表,而更习惯 编写消息时自动显示列表,许多其他字符串也存在同样的问题。
我发现自己不得不多次修改文本,因为主分支进行了更新。以前,我可以忽略这些“新”翻译,但几个月来,它们总是覆盖我的自定义内容。
我欢迎任何建议、变通方法,或者需要检查的管理配置项。谢谢 ![]()
你是如何编辑它们的?通常,如果你从 /admin/customize/site_texts 编辑翻译字符串,更新时不应覆盖它们。
我在这个管理路径上进行编辑,几个月前它们开始被覆盖。我不记得确切的日期了,但它们在多年里都没有被覆盖过。
奇怪……你提到的那个示例,在编辑器中键入时激活智能列表,是不是那个反复出现问题的字符串之一?
所有从核心更新的字符串都会恢复为默认值。
我希望找到解决方案;维护起来真的很难。我可以调试和测试任何需要的内容。
好的,我想我明白了,这种情况只发生在我在 Discourse 发布其翻译之前更新的字符串中。
如果我将
Cancel(Resenha)更改为cancelar,当 Discourse 发布翻译时,我最初的字符串就会丢失。
你的意思是,对于那些(可能是新的)还没有西班牙语翻译的字符串,你创建了一个翻译,然后当官方团队添加西班牙语字符串时,你的翻译就被覆盖了?如果是这样,(在不看代码的情况下)插入新字符串并忽略你的翻译似乎是有道理的,不过这也完全可以被认为是一个 bug(不过,对于这两种情况,我都能理解各自的理由)。
这里的情况正是如此。我不确定这算不算一个 bug,但更准确地说,这是我们需要小心对待的一个问题。
我的意思是,翻译所有未翻译的实验性功能会占用我们的时间,而一个简单的更新就会瞬间将这些工作全部丢弃。
你为什么不用那段时间为所有人翻译 Discourse 呢?
实话实说:因为我在翻译俚语,故意避开了很多规则……而且 Discourse 使用的翻译系统有点让人望而却步。
如果我们几个月或几年后还在这里,我会把精力投入到翻译到世界语上。
希望我们能拥有更简单的工具 ![]()
不幸的是,我不断丢失翻译,这真的非常令人沮丧。
有没有办法防止在 Discourse 更新期间,翻译文件中的本地更改被覆盖?
我真的不希望收到这些更新。 在我看来,来自 Crowdin 的西班牙语非常平淡且冗长。从 UI/UX 的角度来看,我更喜欢尽可能少的描述。在我们的社区中,我们也使用一种自定义的语言/美学风格,包含俚语,并且在菜单或大多数消息中不使用大写字母。
Discourse 在其最新更新中进行了大量创新,我希望能够继续更新,同时不丢失在翻译覆盖(overrides)上投入的工作。这一切都是手动的,真的非常耗时。
欢迎提出建议或变通方法。
也许我该去查查,但我相当确定,我自己的芬兰语译文从来不会被覆盖。
如果你更新了最近发布的 Voice 插件的翻译,然后等待核心部分的官方芬兰语翻译,会发生什么?
通常的行为是会将所有更改回滚,但这可能只是与我自己的实例有关。我想真正解决这个问题,并考虑使用 rake 任务来自动备份我的 JSON 覆盖文件。
这可能不太优雅,甚至有点“核武器”式的做法,但在“覆盖覆盖”的行为下,维护起来确实是最糟糕的。
嗯,我只能看到什么时候能升级我的实例
之后我还得等官方翻译。不过我以前在获得翻译之前就已经在我的实例上翻译过新功能了——但我不能确定那些翻译是否保留了下来,我只有这种感觉。