diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/nonAsciiCharacters/Groovy.groovy b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/nonAsciiCharacters/Groovy.groovy
index 42c434cce987..6b81f6869e01 100644
--- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/nonAsciiCharacters/Groovy.groovy
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/nonAsciiCharacters/Groovy.groovy
@@ -1,6 +1,6 @@
class X {
int Ж = 0;
- class InnerП {}
+ class InnerП {}
// commentжп 234
String s = "12л3орыва0";
void жжж() {
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/nonAsciiCharacters/Simple.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/nonAsciiCharacters/Simple.java
index 42c434cce987..816a2eb2c236 100644
--- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/nonAsciiCharacters/Simple.java
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/nonAsciiCharacters/Simple.java
@@ -1,9 +1,12 @@
class X {
int Ж = 0;
- class InnerП {}
+ class InnerП {}
// commentжп 234
String s = "12л3орыва0";
void жжж() {
жжж();
+ String s = "Сore";
+ System.out.println("Сore");
+ String u = "\5\0\51\2\3\0\136\2\21\0\33\2\65\0\20\2\u0200\0\u19b6\2"; // ignore slash u
}
}
\ No newline at end of file
diff --git a/java/java-tests/testSrc/com/intellij/java/codeInsight/daemon/NonAsciiCharactersTest.java b/java/java-tests/testSrc/com/intellij/java/codeInsight/daemon/NonAsciiCharactersTest.java
index beb811beeee1..0aed65e10aff 100644
--- a/java/java-tests/testSrc/com/intellij/java/codeInsight/daemon/NonAsciiCharactersTest.java
+++ b/java/java-tests/testSrc/com/intellij/java/codeInsight/daemon/NonAsciiCharactersTest.java
@@ -30,6 +30,7 @@ public class NonAsciiCharactersTest extends DaemonAnalyzerTestCase {
protected LocalInspectionTool @NotNull [] configureLocalInspectionTools() {
NonAsciiCharactersInspection inspection = new NonAsciiCharactersInspection();
inspection.CHECK_FOR_DIFFERENT_LANGUAGES_IN_IDENTIFIER_NAME = true;
+ inspection.CHECK_FOR_DIFFERENT_LANGUAGES_IN_STRING = true;
inspection.CHECK_FOR_NOT_ASCII_IDENTIFIER_NAME = true;
inspection.CHECK_FOR_NOT_ASCII_COMMENT = true;
inspection.CHECK_FOR_NOT_ASCII_STRING_LITERAL = true;
diff --git a/platform/lang-api/resources/messages/CodeInsightBundle.properties b/platform/lang-api/resources/messages/CodeInsightBundle.properties
index ef38c55985b1..9929f8878c9f 100644
--- a/platform/lang-api/resources/messages/CodeInsightBundle.properties
+++ b/platform/lang-api/resources/messages/CodeInsightBundle.properties
@@ -578,7 +578,9 @@ label.non.ascii.chars.example.characters.in.comments=E.g.: // hello
label.non.ascii.chars.example.characters.in.identifiers=E.g.: int \u041F\u043E\u043B\u0435 = 0;
label.non.ascii.chars.example.characters.in.strings=E.g.: println("\u0E29 \u0E24\u0E45\u0E29\u0E35")
label.non.ascii.chars.example.different.languages.in.identifiers=E.g.: void print\u0415\u0440\u0443\u043D\u0434\u0430()
+label.non.ascii.chars.example.different.languages.in.string=E.g.: foo("\u0421ore"); //cyrillic \u0421
checkbox.non.ascii.option.different.languages.in.identifiers=Different languages in identifiers
+checkbox.non.ascii.option.different.languages.in.string=Different languages in strings
checkbox.non.ascii.option.files.containing.bom=Files containing BOM
checkbox.non.ascii.option.characters.in.identifiers=Non-ASCII characters in Identifiers
checkbox.non.ascii.option.characters.in.comments=Non-ASCII characters in comments
diff --git a/platform/lang-api/resources/messages/LangBundle.properties b/platform/lang-api/resources/messages/LangBundle.properties
index cc0a911396c9..b560cc35d4b6 100644
--- a/platform/lang-api/resources/messages/LangBundle.properties
+++ b/platform/lang-api/resources/messages/LangBundle.properties
@@ -129,7 +129,7 @@ popup.advertisement.press.or.to.replace=Press {0} or {1} to replace
inspection.message.file.contains.bom=File contains BOM: ''{0}''{1}
inspection.message.charset.signature=\ (charset ''{0}'' signature)
inspection.message.non.ascii.characters.in=Non-ASCII characters in {0}
-inspection.message.identifier.contains.symbols.from.different.languages=Identifier contains symbols from different languages: {0}
+inspection.message.symbols.from.different.languages.found=Symbols from different languages found: {0}
hint.text.unfortunately.currently.available.for.batch.mode=Unfortunately ''{0}'' is currently not available for batch mode\n User interaction is required for each problem found
progress.title.inspect.code=Inspect Code...
hint.text.can.t.modify.decompiled.code=Can't modify decompiled code
diff --git a/platform/lang-impl/src/com/intellij/codeInspection/NonAsciiCharactersInspection.form b/platform/lang-impl/src/com/intellij/codeInspection/NonAsciiCharactersInspection.form
index f808520208b4..2cc4808a2aaf 100644
--- a/platform/lang-impl/src/com/intellij/codeInspection/NonAsciiCharactersInspection.form
+++ b/platform/lang-impl/src/com/intellij/codeInspection/NonAsciiCharactersInspection.form
@@ -1,6 +1,6 @@