diff --git a/java/jsp-base-openapi/src/com/intellij/lang/jsp/JspFileViewProvider.java b/java/jsp-base-openapi/src/com/intellij/lang/jsp/JspFileViewProvider.java index e926f53354a2..acad3c47338f 100644 --- a/java/jsp-base-openapi/src/com/intellij/lang/jsp/JspFileViewProvider.java +++ b/java/jsp-base-openapi/src/com/intellij/lang/jsp/JspFileViewProvider.java @@ -22,8 +22,5 @@ import java.util.Set; * @author ik */ public interface JspFileViewProvider extends JspxFileViewProvider { - - Set getKnownTaglibPrefixes(); - - Set getKnownTaglibPrefixes(CharSequence newContent); + Set getXmlNsPrefixes(CharSequence buffer); } diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlTagNameSynchronizer.java b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlTagNameSynchronizer.java index b034cc5ffc8d..fbea7a3c3320 100644 --- a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlTagNameSynchronizer.java +++ b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlTagNameSynchronizer.java @@ -44,6 +44,7 @@ import com.intellij.psi.PsiDocumentManager; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.util.SmartList; +import com.intellij.xml.util.XmlUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -200,7 +201,7 @@ public class XmlTagNameSynchronizer extends CommandAdapter implements Applicatio } for (int i = 0; i < newLength; i++) { - if (!isValidTagNameChar(fragment.charAt(i))) { + if (!XmlUtil.isValidTagNameChar(fragment.charAt(i))) { clearMarkers(); return; } @@ -241,12 +242,12 @@ public class XmlTagNameSynchronizer extends CommandAdapter implements Applicatio start = i + 1; break; } - if (!isValidTagNameChar(c)) break; + if (!XmlUtil.isValidTagNameChar(c)) break; } if (start < 0) return null; for (int i = offset; i < Math.min(document.getTextLength(), offset + 50); i++) { final char c = sequence.charAt(i); - if (!isValidTagNameChar(c)) { + if (!XmlUtil.isValidTagNameChar(c)) { end = i; break; } @@ -255,10 +256,6 @@ public class XmlTagNameSynchronizer extends CommandAdapter implements Applicatio return document.createRangeMarker(start, end, true); } - private static boolean isValidTagNameChar(char c) { - return Character.isJavaIdentifierPart(c) || c == ':'; - } - public void beforeCommandFinished() { if (myMarkers.isEmpty()) return; diff --git a/xml/xml-psi-impl/src/com/intellij/xml/util/XmlUtil.java b/xml/xml-psi-impl/src/com/intellij/xml/util/XmlUtil.java index 94b06d4227c7..a21b283579c0 100644 --- a/xml/xml-psi-impl/src/com/intellij/xml/util/XmlUtil.java +++ b/xml/xml-psi-impl/src/com/intellij/xml/util/XmlUtil.java @@ -1345,6 +1345,11 @@ public class XmlUtil { return StringUtil.escapeXml(text); } + public static boolean isValidTagNameChar(char c) { + return Character.isLetter(c) || Character.isDigit(c) || + c == ':' || c == '_' || c == '-' || c == '.'; + } + @Nullable public static String extractXmlEncodingFromProlog(@NotNull byte[] content) { return XmlCharsetDetector.extractXmlEncodingFromProlog(content);