[PATCH 5 of 6] check-code: detect "missing _() in ui message" more exactly
Yuya Nishihara
yuya at tcha.org
Wed Jun 1 14:56:10 UTC 2016
On Tue, 31 May 2016 14:57:52 -0400, timeless wrote:
> FUJIWARA Katsunori wrote:
> > This patch also applies "()" instead of "_()" on messages below to
> > hide false-positives:
>
> I'd really rather have a function for this. See the other thread where
> you wanted to remove `_()`.
I don't get it. Why do we need a function for py3k? Can you elaborate?
> + (r'ui\.(status|progress|write|note|warn)\('
> + # any strings might precede a string, which contains translatable message
> + '[ \t\n]*(([\'"]|\'\'\'|""")[^\'"]*([\'"]|\'\'\'|""")[ \t\n]+)*'
> + # sequence consisting of below might precede translatable message
> + # - formatting string ("% 10s", "%05d", "% -3.2f", "%*s" and so on)
> + # - escaped character ("\\", "\n", "\0", and so on)
> + # - character other than '%', 'b' (as '\') and 'x' (as alphabet)
> + # (this can't use [^...] style, because _preparepats() forcibly
> + # adds '\n' to such pattern )
> + '([\'"]|\'\'\'|""")'
> + '((%([ n]?[PM]?([0-9p]+|A))?x)|b[bnx]|[ \nnpqAPMo])*x',
r'' prefix is necessary for all string fragments. You might be interested in
extended format (?x).
https://docs.python.org/2.7/library/re.html#re.X
More information about the Mercurial-devel
mailing list