Plugins/CheckerPlugins/SyntaxChecker/pyflakes/translations.py

branch
Py2 comp.
changeset 3484
645c12de6b0c
parent 3229
c8bbf88ae439
child 3544
431c842fd09a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Plugins/CheckerPlugins/SyntaxChecker/pyflakes/translations.py	Thu Apr 03 23:05:31 2014 +0200
@@ -0,0 +1,77 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (c) 2014 Detlev Offenbach <detlev@die-offenbachs.de>
+#
+
+"""
+Module implementing message translations for pyflakes warning messages.
+"""
+
+from __future__ import unicode_literals
+
+from PyQt4.QtCore import QCoreApplication
+
+__all__ = ["getTranslatedFlakesMessage"]
+
+_messages = {
+    'F01': QCoreApplication.translate(
+        'pyFlakes',
+        '{0!r} imported but unused.'),
+    'F02': QCoreApplication.translate(
+        'pyFlakes',
+        'Redefinition of unused {0!r} from line {1!r}.'),
+    'F03': QCoreApplication.translate(
+        'pyFlakes',
+        'Import {0!r} from line {1!r} shadowed by loop variable.'),
+    'F04': QCoreApplication.translate(
+        'pyFlakes',
+        "'from {0} import *' used; unable to detect undefined names."),
+    'F05': QCoreApplication.translate(
+        'pyFlakes',
+        'Undefined name {0!r}.'),
+    'F06': QCoreApplication.translate(
+        'pyFlakes',
+        'Undefined name {0!r} in __all__.'),
+    'F07': QCoreApplication.translate(
+        'pyFlakes',
+        "Local variable {0!r} (defined in enclosing scope on line {1!r})"
+        " referenced before assignment."),
+    'F08': QCoreApplication.translate(
+        'pyFlakes',
+        'Duplicate argument {0!r} in function definition.'),
+    'F09': QCoreApplication.translate(
+        'pyFlakes',
+        'Redefinition of {0!r} from line {1!r}.'),
+    'F10': QCoreApplication.translate(
+        'pyFlakes',
+        'Future import(s) {0!r} after other statements.'),
+    'F11': QCoreApplication.translate(
+        'pyFlakes',
+        'Local variable {0!r} is assigned to but never used.'),
+    'F12': QCoreApplication.translate(
+        'pyFlakes',
+        'List comprehension redefines {0!r} from line {1!r}.'),
+    'F13': QCoreApplication.translate(
+        'pyFlakes',
+        'Syntax error detected in doctest.'),
+}
+
+
+def getTranslatedFlakesMessage(message_id, message_args):
+    """
+    Module function to get a translated and formatted message for a
+    given pyflakes message ID.
+    
+    @param message_id message ID (string)
+    @param message_args arguments for a formatted message (list)
+    @return translated and formatted message (string)
+    """
+    if message_id in _messages:
+        # Avoid leading "u" at Python2 unicode strings
+        msg = _messages[message_id].replace("{0!r}", "'{0}'")
+        msg = msg.replace("{1!r}", "'{1}'")
+        return msg.format(*message_args)
+    else:
+        return QCoreApplication.translate(
+            "pyFlakes", "no message defined for code '{0}'")\
+            .format(message_id)

eric ide

mercurial