Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork34.1k
Description
Feature or enhancement
Proposal:
pygettext already allows specifying custom keywords in a limited fashion. For example, specifying--keyword=foo will
look for functions namedfoo in addition to the default keywords (gettext, etc..).
However, the CLI currently only allows specifying single-argument functions (i.e.gettext('foo')). It is not possible to add
keywords that takemsgid_plural ormsgctxt or both.
Both xgettext and babel support this with asimple keywordspec syntax that defines the function name and argument positions ofmsgid,msgid_plural andmsgctxt.
For example,--keyword:foo:1c,2 defines apgettext-like function where themsgctxt is the first argument andmsgid is the second argument, e.g.foo('context', 'message').
It is also possible to uset to only match functions with that exact number of arguments. For example,foo:1,1t only matchesfoo('bar') but notfoo('bar', 'baz').
I propose to support this in pygettext as well. For that we will need to:
- Support the keyword spec syntax when specifying keywords. I suggest skipping the
tspecifier for now. - Support specifying multiple
--keywordarguments with the same function name (this will require some internal changes, as those are stored in a dictionary with the function name as the key). - Support the
tspecifier.
Has this already been discussed elsewhere?
This is a minor feature, which does not need previous discussion elsewhere
Links to previous discussion of this feature:
No response
Linked PRs
Metadata
Metadata
Assignees
Labels
Projects
Status