babel icon indicating copy to clipboard operation
babel copied to clipboard

Allow extractors to provide message flags

Open ljodal opened this issue 3 years ago • 3 comments

This adds a sixth value to the tuple returned by the extractor functions which should be a set of flags.

Which flags should be applied to a message should be determined by the extractor, as it depends on e.g. the file format being parsed. For example "%s" should have the python-format flag if it was parsed from a Python file and the c-format flag if it was extracted from a C file.

The logic of detecting python-format flags is also moved to the Python extractor in this PR.

NOTE:

This is partially a breaking change. Backwards compability is maintained with extractors that return 5-tuples instead of 6-tuples, but the interface Babel exposes for extracting messages always returns 6-tuples. I don't see a good way around this.

Removing the python-format detection from Message.init is also a breaking change, but that could potentially be put back for now.

Fixes #35

ljodal avatar Jan 31 '22 20:01 ljodal