On 2020-02-02 11:29 p.m., Eric V. Smith wrote:
On 2/2/2020 8:28 PM, Soni L. wrote:
It'd be cool to attach metadata to string literals that doesn't end
up in the resulting string object. This metadata could be used by all
sorts of tools, everything from localization to refactoring.
In C, some localization libraries use macros for it, such as:
#define LOCALIZE(s) s
and it acts like an annotation, and then you do:
printf("%s", get_localized(locale, LOCALIZE("This string gets
extracted and used in language files")));
And I think Python could do better and have special string literals
explicitly for this purpose.
It could even be something with fstrings, like: f"{#localize}This
string gets extracted and used in language files"
Ofc, there's nothing preventing one from using something like
f"{(lambda _:'')('localize')}This string gets extracted and used in
language files" today, but I feel like having some sort of dedicated
syntax for it would be an improvement.
You might want to look at PEP 501.
Eric
Oh. No, I want it to return plain strings.
e.g. you should be able to replace an existing
MY_STRING = "This string gets extracted and used in language files"
with
MY_STRING = [uhh idk what would go here tbh]
and maintain full backwards-compatibility.
It's for external tools to consume, not for python code to consume.
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at
https://mail.python.org/archives/list/python-ideas@python.org/message/GEBY52WVQBFB7J27MRJPZZPJMWUZZJWO/
Code of Conduct: http://python.org/psf/codeofconduct/
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at
https://mail.python.org/archives/list/python-ideas@python.org/message/HY6N3CA2FEJL5EGY5QWJHBLP5KVETTD3/
Code of Conduct: http://python.org/psf/codeofconduct/