From bc1782bcbde2c258ef3069271c2c3cbf8955a076 Mon Sep 17 00:00:00 2001 From: Dmitry Avdeev Date: Thu, 11 Aug 2016 12:15:04 +0300 Subject: [PATCH] IDEA-156380 Spellchecker marks `` and `` as typos in .jsp files --- .../xml/XmlSpellcheckingStrategy.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/spellchecker/src/com/intellij/spellchecker/xml/XmlSpellcheckingStrategy.java b/spellchecker/src/com/intellij/spellchecker/xml/XmlSpellcheckingStrategy.java index 47478266656d..96ca42e13c64 100644 --- a/spellchecker/src/com/intellij/spellchecker/xml/XmlSpellcheckingStrategy.java +++ b/spellchecker/src/com/intellij/spellchecker/xml/XmlSpellcheckingStrategy.java @@ -2,7 +2,12 @@ package com.intellij.spellchecker.xml; import com.intellij.codeInspection.SuppressQuickFix; import com.intellij.psi.PsiElement; +import com.intellij.psi.PsiFile; +import com.intellij.psi.templateLanguages.TemplateLanguage; +import com.intellij.psi.xml.XmlToken; +import com.intellij.psi.xml.XmlTokenType; import com.intellij.spellchecker.tokenizer.SuppressibleSpellcheckingStrategy; +import com.intellij.spellchecker.tokenizer.Tokenizer; import com.intellij.util.xml.DomElement; import com.intellij.util.xml.DomUtil; import org.jetbrains.annotations.NotNull; @@ -12,6 +17,17 @@ import org.jetbrains.annotations.NotNull; */ public class XmlSpellcheckingStrategy extends SuppressibleSpellcheckingStrategy { + @NotNull + @Override + public Tokenizer getTokenizer(PsiElement element) { + if (element instanceof XmlToken && ((XmlToken)element).getTokenType() == XmlTokenType.XML_DATA_CHARACTERS) { + PsiFile file = element.getContainingFile(); + if (file == null || file.getLanguage() instanceof TemplateLanguage) + return EMPTY_TOKENIZER; + } + return super.getTokenizer(element); + } + @Override public boolean isSuppressedFor(@NotNull PsiElement element, @NotNull String name) { DomElement domElement = DomUtil.getDomElement(element); -- 2.32.0