customisable end of embeddment

This commit is contained in:
Dennis Ushakov
2017-01-12 21:18:13 +03:00
parent 94f852346c
commit 0ecd7ca047
@@ -366,9 +366,7 @@ public abstract class BaseHtmlLexer extends DelegateLexer {
String name = TreeUtil.getTokenText(base);
if (caseInsensitive) name = name.toLowerCase();
if((hasSeenScript() && XmlNameHandler.TOKEN_SCRIPT.equals(name)) ||
(hasSeenStyle() && XmlNameHandler.TOKEN_STYLE.equals(name)) ||
CompletionUtilCore.DUMMY_IDENTIFIER_TRIMMED.equalsIgnoreCase(name)) {
if(endOfTheEmbeddment(name)) {
break; // really found end
}
}
@@ -394,6 +392,12 @@ public abstract class BaseHtmlLexer extends DelegateLexer {
return tokenEnd;
}
protected boolean endOfTheEmbeddment(String name) {
return (hasSeenScript() && XmlNameHandler.TOKEN_SCRIPT.equals(name)) ||
(hasSeenStyle() && XmlNameHandler.TOKEN_STYLE.equals(name)) ||
CompletionUtilCore.DUMMY_IDENTIFIER_TRIMMED.equalsIgnoreCase(name);
}
protected boolean isValidAttributeValueTokenType(final IElementType tokenType) {
return tokenType == XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN ||
tokenType == XmlTokenType.XML_ENTITY_REF_TOKEN ||