diff --git a/python/src/com/jetbrains/python/inspections/PyPep8NamingInspection.java b/python/src/com/jetbrains/python/inspections/PyPep8NamingInspection.java index 14b6286d140a..54f29e1a2fcb 100644 --- a/python/src/com/jetbrains/python/inspections/PyPep8NamingInspection.java +++ b/python/src/com/jetbrains/python/inspections/PyPep8NamingInspection.java @@ -44,6 +44,10 @@ import java.util.regex.Pattern; public class PyPep8NamingInspection extends PyInspection { public boolean ignoreOverriddenFunctions = true; public boolean ignoreTestFunctions = false; + private static Pattern LOWERCASE_REGEX = Pattern.compile("[_\\p{javaLowerCase}][_\\p{javaLowerCase}0-9]*"); + private static Pattern UPPERCASE_REGEX = Pattern.compile("[_\\p{javaUpperCase}][_\\p{javaUpperCase}0-9]*"); + private static Pattern MIXEDCASE_REGEX = Pattern.compile("_?[\\p{javaUpperCase}][\\p{javaLowerCase}\\p{javaUpperCase}0-9]*"); + @NotNull @Override public PsiElementVisitor buildVisitor(@NotNull ProblemsHolder holder, @@ -55,10 +59,6 @@ public class PyPep8NamingInspection extends PyInspection { } public class Visitor extends PyInspectionVisitor { - Pattern LOWERCASE_REGEX = Pattern.compile("[_a-z][_a-z0-9]*"); - Pattern UPPERCASE_REGEX = Pattern.compile("[_A-Z][_A-Z0-9]*"); - Pattern MIXEDCASE_REGEX = Pattern.compile("_?[A-Z][a-zA-Z0-9]*"); - private final Map myHasSupers = new HashMap(); public Visitor(@NotNull final ProblemsHolder holder, LocalInspectionToolSession session) { diff --git a/python/testData/inspections/PyPep8NamingInspection/scandinavian.py b/python/testData/inspections/PyPep8NamingInspection/scandinavian.py new file mode 100644 index 000000000000..f942fb767488 --- /dev/null +++ b/python/testData/inspections/PyPep8NamingInspection/scandinavian.py @@ -0,0 +1,2 @@ +def åäö(): + pass \ No newline at end of file diff --git a/python/testSrc/com/jetbrains/python/inspections/PyPep8NamingInspectionTest.java b/python/testSrc/com/jetbrains/python/inspections/PyPep8NamingInspectionTest.java index 348a343c1425..e522af7aa9bb 100644 --- a/python/testSrc/com/jetbrains/python/inspections/PyPep8NamingInspectionTest.java +++ b/python/testSrc/com/jetbrains/python/inspections/PyPep8NamingInspectionTest.java @@ -61,6 +61,9 @@ public class PyPep8NamingInspectionTest extends PyTestCase { public void testClassAttributes() { doTest(); } + public void testScandinavian() { + doTest(); + } public void testTest() { doTest();