babel
babel copied to clipboard
Fix extracted lineno with nested calls
When a gettext call had a nested function call on a new line, the extract function would use that nested call's line number when extracting the terms for the gettext call.
The reason is that we set the line number on any encounter of an opening parenthesis after a gettext keyword. This does not work if either we have a nested call, or our first term starts on a new line.
This commit fixes that by only setting the line number when we encounter the first argument inside a gettext call.
Existing tests were adapted to work according to xgettext
with regards to the line numbers.
Fixes https://github.com/python-babel/babel/issues/1123