mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
better doctype detection
This commit is contained in:
@@ -17,7 +17,6 @@ package com.intellij.xml.util;
|
||||
|
||||
import com.intellij.codeInspection.InspectionProfile;
|
||||
import com.intellij.codeInspection.htmlInspections.XmlEntitiesInspection;
|
||||
import com.intellij.html.RelaxedHtmlNSDescriptor;
|
||||
import com.intellij.ide.highlighter.HtmlFileType;
|
||||
import com.intellij.ide.highlighter.XHtmlFileType;
|
||||
import com.intellij.javaee.ExternalResourceManagerEx;
|
||||
@@ -49,8 +48,8 @@ import com.intellij.xml.XmlElementDescriptor;
|
||||
import com.intellij.xml.XmlNSDescriptor;
|
||||
import com.intellij.xml.impl.schema.XmlAttributeDescriptorImpl;
|
||||
import com.intellij.xml.impl.schema.XmlElementDescriptorImpl;
|
||||
import com.intellij.xml.util.documentation.MimeTypeDictionary;
|
||||
import com.intellij.xml.util.documentation.HtmlDescriptorsTable;
|
||||
import com.intellij.xml.util.documentation.MimeTypeDictionary;
|
||||
import gnu.trove.THashMap;
|
||||
import gnu.trove.THashSet;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
@@ -404,9 +403,17 @@ public class HtmlUtil {
|
||||
}
|
||||
|
||||
public static boolean isHtmlTag(@NotNull XmlTag tag) {
|
||||
final XmlElementDescriptor descriptor = tag.getDescriptor();
|
||||
return descriptor != null && descriptor.getNSDescriptor() instanceof RelaxedHtmlNSDescriptor &&
|
||||
tag.getLanguage() != XHTMLLanguage.INSTANCE;
|
||||
if (tag.getLanguage() == XHTMLLanguage.INSTANCE) return false;
|
||||
|
||||
XmlDocument doc = PsiTreeUtil.getParentOfType(tag, XmlDocument.class);
|
||||
|
||||
String doctype = null;
|
||||
if (doc != null) {
|
||||
doctype = XmlUtil.getDtdUri(doc);
|
||||
}
|
||||
doctype = doctype == null ? ExternalResourceManagerEx.getInstanceEx().getDefaultHtmlDoctype(tag.getProject()) : doctype;
|
||||
return XmlUtil.XHTML4_SCHEMA_LOCATION.equals(doctype) ||
|
||||
!StringUtil.containsIgnoreCase(doctype, "xhtml");
|
||||
}
|
||||
|
||||
public static boolean hasNonHtml5Doctype(XmlElement context) {
|
||||
|
||||
Reference in New Issue
Block a user