Skip to content

Commit f6769a8

Browse files
author
Jürgen Hermann
committed
Added warning for non-string _() markup (which is also ignored)
1 parent b47c37a commit f6769a8

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

tools/pygettext.py

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
import fintl
1010
_ = fintl.gettext
1111
except ImportError:
12-
def _(s): return s
12+
_ = lambda s: s
1313

1414

1515
__doc__ = _("""pygettext -- Python equivalent of xgettext(1)
@@ -138,6 +138,7 @@ def _(s): return s
138138
import sys
139139
import time
140140
import getopt
141+
import token
141142
import tokenize
142143

143144
__version__ = '1.1'
@@ -274,7 +275,12 @@ def __openseen(self, ttype, tstring, lineno):
274275
self.__state = self.__waiting
275276
elif ttype == tokenize.STRING:
276277
self.__data.append(safe_eval(tstring))
277-
# TBD: should we warn if we seen anything else?
278+
elif ttype not in [tokenize.COMMENT, token.INDENT, token.DEDENT,
279+
token.NEWLINE, tokenize.NL]:
280+
# warn if we seen anything else than STRING or whitespace
281+
print >>sys.stderr, _('*** %(file)s:%(lineno)s: Seen unexpected token "%(token)s"') % {
282+
'token': tstring, 'file': self.__curfile, 'lineno': self.__lineno}
283+
self.__state = self.__waiting
278284

279285
def set_filename(self, filename):
280286
self.__curfile = filename
@@ -459,3 +465,6 @@ class Options:
459465
main()
460466
# some more test strings
461467
_(u'a unicode string')
468+
_('*** Seen unexpected token "%(token)s"' % {'token': 'test'})
469+
_('more' 'than' 'one' 'string')
470+

0 commit comments

Comments
 (0)