Not sure where else to put this. Saw the post on the forum from Anna (@miaulalala?):
Additionally, strings show up all the time with zero context, and a translator can’t tell what they mean without going and reading the code. So the same string ends up getting translated two or three times, which is exactly the kind of effort small language teams don’t have lying around.
We’d rather stop accepting translation requests for new apps for a bit and actually fix this than keep adding projects nobody has the bandwidth to translate. A few language teams have already given up entirely; that’s the thing we’re trying to head off before it happens again.
We’re working on what needs to be in place first: automated checks so obvious problems in source strings get caught before a translator ever lays eyes on them, a review step before anything new goes live, and a structure that doesn’t leave people lost. We’ll post again once requests reopen.
There may be some non-LLM options for the initial obvious check, but for what it's worth I just ran a quick experiment in GHCP to see how good it can be at finding areas of the code base with less-than-ideal translation guideline compliance and to suggest concrete fixes.
It does seem to turn up bits in the code base to iterate on reasonably well. This was the proof of concept prompt:
Analyze the Nextcloud Translation guideliness (https://docs.nextcloud.com/server/latest/developer_manual/basics/translations.html#guidelines) and then pick a random area of code likely to have strings that get translated. Identify several substantive discrepancies versus the documented policy and suggest concrete code changes to make compliant with policy.
Not sure where else to put this. Saw the post on the forum from Anna (@miaulalala?):
There may be some non-LLM options for the initial obvious check, but for what it's worth I just ran a quick experiment in GHCP to see how good it can be at finding areas of the code base with less-than-ideal translation guideline compliance and to suggest concrete fixes.
It does seem to turn up bits in the code base to iterate on reasonably well. This was the proof of concept prompt: