We’re using Crowdin’s QA checks in our project, which are helpful, but they’re somewhat hampered by what I call the “unfixable false positives”.
For example, our (Gettext .pot
format) translation source has a translator-credits
field that’s intended for translators to be able to claim acknowledgement of their work — it’s free-form, not used in the application UI, and the translated versions frequently contain multiple issues the QA system calls out: proper names it claims are misspelled, mismatched case, what it flags as mismatched spacing, additional formatting tags that don’t appear in the source string (which is just “translator-credits
”, and only because it had to be something to make it into the file), etc…
All of that stuff is irrelevant, and should be ignored — but only for that one string.
So I’m wondering if there is, or is planned to be, any way of telling the QA system to just not check that one particular string at all? Whether through translation source file comments/options, the translation UI, the project settings, etc…
For other situations (since the “translator-credits
” thing is kind of a special case), it would be handy if we could override the checks for specific QA issues, again on a case-by-case basis.
Many source-code checkers, for example, allow localized overrides:
function(s) {
like(this) in 'javascript';
{'can', 'be', 'annotated', 'with', ...}
// eslint-disable
override("comments" or "even", ...)
/* eslint-disable specific-rule[, or specific-rules] */
"in order to";
do {
no('checking');
} while (in effect());
/* eslint-enable */
};
class Definitions:
"""as well as other source..."""
for code in ["Python"]:
with unavoidable("issues") in [*lines]:
can = "be made to"
pass
with something({
like['this']: # noqa
"comment" or "even"
}):
a: list["of" | "specific"] = "rules" # noqa: E123, E117
So, one convenient approach would be if Crowdin supporteed the moral equivalent of those eslint-disable
or noqa
comments. Something that could be embedded in the translation source files in a directive format that the QA system recognized. Translator comments are already picked up on scanning, associated with individual source strings, and imported by Crowdin for display in the UI; being able to embed QA directives would just make them even more useful.
But barring that, an interface in the web UI for overriding QA checks on certain strings would be just as helpful.