Am 22.11.19 um 17:03 schrieb Kai Köhne:
From: Development<development-boun...@qt-project.org> On Behalf Of
Joerg Bornemann
On 11/22/19 7:21 AM, Kai Pastor, DG0YT wrote:
Given the Qt Creator example, would it be feasible to make explicit
declaration of a file's context mandatory, at least for the existing
("fast") parser? If not mandatory, an explicit declaration could at
least disable all automatic detection for the rest of the file, making
it possible to use modern C++ without surprises.
That's certainly a possibility. With an explicit context declaration (that's
easy
to detect) on file level we can use an even simpler parser/extractor that
doesn't have to know much C++ at all.
Keep in mind that you need this context available both at runtime and
at lupdate time. That is, the only setup how this IMO would reliably work
is if we make the context a part of the tr() call - effectively calling
QCoreApplication::translate(context, string). This is already possible right
now.
I admit I didn't think about the runtime perspective. But
QCoreApplication::translate("Context", string)
is much more verbose then
Context::tr(string)
or, with a declared and defined Context for the translation unit, just
tr(string)
I wonder if an anonymous namespace couldn't be used to safely implement
the latter for the proposed explicit declaration per translation unit.
Kai.
_______________________________________________
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development