mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
-allowing xml PIs in HTML (for convenience) -fixed issued with wrong lexer highlighter on change in JS code
This commit is contained in:
@@ -38,6 +38,7 @@ public class HtmlHighlightingLexer extends BaseHtmlLexer {
|
||||
tokenType==XmlTokenType.XML_COMMENT_CHARACTERS && hasSeenTag()
|
||||
) {
|
||||
setEmbeddedLexer();
|
||||
embeddedLexer.start(getBuffer(),HtmlHighlightingLexer.super.getTokenStart(),skipToTheEndOfTheEmbeddment());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -62,7 +63,7 @@ public class HtmlHighlightingLexer extends BaseHtmlLexer {
|
||||
int state = initialState >> EMBEDDED_LEXER_STATE_SHIFT;
|
||||
LOG.assertTrue(hasSeenStyle() || hasSeenScript());
|
||||
setEmbeddedLexer();
|
||||
embeddedLexer.start(buffer,startOffset,endOffset,state);
|
||||
embeddedLexer.start(buffer,startOffset,skipToTheEndOfTheEmbeddment(),state);
|
||||
} else {
|
||||
embeddedLexer = null;
|
||||
}
|
||||
@@ -91,7 +92,6 @@ public class HtmlHighlightingLexer extends BaseHtmlLexer {
|
||||
|
||||
if (newLexer!=null) {
|
||||
embeddedLexer = newLexer;
|
||||
embeddedLexer.start(getBuffer(),HtmlHighlightingLexer.super.getTokenStart(),skipToTheEndOfTheEmbeddment());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -100,6 +100,7 @@ public class _HtmlLexer implements Lexer, Cloneable {
|
||||
}
|
||||
|
||||
private boolean yy_eof_done = false;
|
||||
public static final short PROCESSING_INSTRUCTION = 9;
|
||||
public static final short END_TAG_NAME = 4;
|
||||
public static final short START_TAG_NAME = 3;
|
||||
public static final short ATTRIBUTE_VALUE_SQ = 8;
|
||||
@@ -109,17 +110,18 @@ public class _HtmlLexer implements Lexer, Cloneable {
|
||||
public static final short TAG_ATTRIBUTES = 5;
|
||||
public static final short COMMENT = 2;
|
||||
public static final short ATTRIBUTE_VALUE_START = 6;
|
||||
public static final short LAST_STATE = 9;
|
||||
public static final short LAST_STATE = 10;
|
||||
private static final int yy_state_dtrans[] = {
|
||||
0,
|
||||
59,
|
||||
12,
|
||||
71,
|
||||
72,
|
||||
73,
|
||||
22,
|
||||
27,
|
||||
31
|
||||
64,
|
||||
13,
|
||||
76,
|
||||
77,
|
||||
78,
|
||||
23,
|
||||
28,
|
||||
32,
|
||||
34
|
||||
};
|
||||
private static final int YY_E_INTERNAL = 0;
|
||||
private static final int YY_E_MATCH = 1;
|
||||
@@ -212,6 +214,9 @@ private static int [][] unpackFromString(int size1, int size2, String st)
|
||||
YY_NO_ANCHOR,
|
||||
YY_NO_ANCHOR,
|
||||
YY_NO_ANCHOR,
|
||||
YY_NO_ANCHOR,
|
||||
YY_NO_ANCHOR,
|
||||
YY_NO_ANCHOR,
|
||||
YY_NOT_ACCEPT,
|
||||
YY_NO_ANCHOR,
|
||||
YY_NO_ANCHOR,
|
||||
@@ -221,6 +226,7 @@ private static int [][] unpackFromString(int size1, int size2, String st)
|
||||
YY_NO_ANCHOR,
|
||||
YY_NO_ANCHOR,
|
||||
YY_NO_ANCHOR,
|
||||
YY_NO_ANCHOR,
|
||||
YY_NOT_ACCEPT,
|
||||
YY_NO_ANCHOR,
|
||||
YY_NO_ANCHOR,
|
||||
@@ -234,6 +240,7 @@ private static int [][] unpackFromString(int size1, int size2, String st)
|
||||
YY_NOT_ACCEPT,
|
||||
YY_NO_ANCHOR,
|
||||
YY_NOT_ACCEPT,
|
||||
YY_NO_ANCHOR,
|
||||
YY_NOT_ACCEPT,
|
||||
YY_NOT_ACCEPT,
|
||||
YY_NOT_ACCEPT,
|
||||
@@ -261,31 +268,31 @@ private static int [][] unpackFromString(int size1, int size2, String st)
|
||||
1, 2, 3, 0, 0, 0, 0, 4,
|
||||
0, 0, 0, 0, 0, 5, 6, 7,
|
||||
6, 6, 6, 6, 6, 6, 6, 6,
|
||||
6, 6, 8, 0, 9, 10, 11, 0,
|
||||
0, 12, 13, 14, 15, 16, 12, 12,
|
||||
17, 18, 12, 12, 19, 20, 12, 21,
|
||||
22, 12, 12, 12, 23, 24, 12, 12,
|
||||
12, 25, 12, 0, 26, 0, 0, 8,
|
||||
0, 12, 13, 14, 15, 16, 12, 12,
|
||||
17, 18, 12, 12, 19, 20, 12, 21,
|
||||
22, 12, 12, 12, 23, 24, 12, 12,
|
||||
12, 25, 12, 0, 0, 0, 0, 0
|
||||
6, 6, 8, 0, 9, 10, 11, 12,
|
||||
0, 13, 14, 15, 16, 17, 13, 13,
|
||||
18, 19, 13, 13, 20, 21, 13, 22,
|
||||
23, 13, 13, 13, 24, 25, 13, 13,
|
||||
13, 26, 13, 0, 27, 0, 0, 8,
|
||||
0, 13, 14, 15, 16, 17, 13, 13,
|
||||
18, 19, 13, 13, 20, 21, 13, 22,
|
||||
23, 13, 13, 13, 24, 25, 13, 13,
|
||||
13, 26, 13, 0, 0, 0, 0, 0
|
||||
|
||||
};
|
||||
private static final int yy_rmap[] = {
|
||||
0, 1, 2, 3, 4, 4, 4, 4,
|
||||
4, 4, 4, 4, 5, 4, 6, 4,
|
||||
4, 7, 4, 4, 4, 4, 8, 4,
|
||||
4, 4, 4, 9, 4, 4, 10, 11,
|
||||
4, 12, 13, 14, 15, 16, 17, 10,
|
||||
18, 4, 18, 19, 20, 21, 22, 23,
|
||||
24, 25, 26, 27, 28, 29, 30, 31,
|
||||
32, 33, 34, 35, 14, 20, 36, 37,
|
||||
38, 39, 40, 41, 42, 43, 44, 45,
|
||||
46, 47
|
||||
4, 4, 4, 4, 4, 5, 4, 6,
|
||||
4, 4, 7, 4, 4, 4, 4, 8,
|
||||
4, 4, 4, 4, 9, 4, 4, 10,
|
||||
11, 4, 12, 4, 13, 14, 15, 16,
|
||||
17, 18, 10, 19, 4, 19, 20, 21,
|
||||
22, 23, 24, 25, 26, 27, 28, 29,
|
||||
30, 31, 32, 33, 34, 35, 36, 37,
|
||||
38, 15, 22, 39, 40, 41, 42, 43,
|
||||
44, 45, 46, 47, 48, 49, 50
|
||||
};
|
||||
private static final int yy_nxt[][] = unpackFromString(48,27,
|
||||
"33,1,33:7,2,33:17,-1,1,-1:25,33,-1,34,33:4,4,33:4,-1:14,33:2,-1,43,33:4,-1,33:4,-1:14,33,-1:27,36:5,52,36:21,-1:5,14:2,-1,14,-1:3,14:14,-1:6,17:2,-1,17,-1:3,17:14,-1,38,1,38,23,24,38:2,54,38:3,25,38:15,39:3,28,39:22,45,39:3,-1,39:23,42:4,32,42:21,46,33,-1,33:7,3,33:18,-1,33:3,47,33:9,49,33:11,60:3,9,60:23,36:5,68,36:21,-1:11,21,-1:15,38,-1,38,-1:2,38:2,-1,38:3,-1,38:15,42:4,-1,42:22,33,-1,33:3,51,33:9,-1,33:11,61:4,9,61:22,39:3,29,30,39:22,42:3,40,41,42:22,33,-1,33:3,5,33:21,-1:23,62,-1:24,53,-1:29,63,-1:2,33,-1,33:3,-1,33:21,36:5,69,36:21,-1:14,55,-1:23,26,-1:38,56,-1:28,57,-1:23,58,-1:20,6,-1:10,7,1,7,35,44,7:6,8,7:5,48,7:4,50,7:4,-1:20,64,-1:19,65,-1:32,10,-1:26,66,-1:25,67,-1:22,11,-1:12,36:5,70,36:32,13,36:26,-1,36:15,7:8,14,7:3,14:14,7:9,14,15,7:2,14:14,7,16,1,16:5,37,17,18,19,20,17:14,16");
|
||||
private static final int yy_nxt[][] = unpackFromString(51,28,
|
||||
"36,1,36:7,2,36:18,-1,1,-1:26,36,-1,37,36:4,4,36:4,5,-1:14,36:2,-1,47,36:4,-1,36:4,-1:15,36,-1:28,39:5,56,39:22,-1:5,15:2,-1,15,-1:4,15:14,-1:6,18:2,-1,18,-1:4,18:14,-1,41,1,41,24,25,41:2,58,41:3,26,41:16,42:3,29,42:23,49,42:3,-1,42:24,45:4,33,45:22,50,46:12,60,46:15,36,-1,36:7,3,36:19,-1,36:3,51,36:10,53,36:11,65:3,10,65:24,39:5,73,39:22,-1:11,22,-1:16,41,-1,41,-1:2,41:2,-1,41:3,-1,41:16,45:4,-1,45:23,46:12,-1,46:15,36,-1,36:3,55,36:10,-1,36:11,66:4,10,66:23,42:3,30,31,42:23,45:3,43,44,45:23,36,-1,36:3,6,36:22,-1:24,67,-1:25,57,-1:30,68,-1:2,36,-1,36:3,-1,36:22,39:5,74,39:22,-1:15,59,-1:23,27,-1:40,61,-1:14,35,-1:42,62,-1:24,63,-1:21,7,-1:10,8,1,8,38,48,8:6,9,8:6,52,8:4,54,8:4,-1:21,69,-1:20,70,-1:33,11,-1:27,71,-1:26,72,-1:23,12,-1:12,39:5,75,39:33,14,39:27,-1,39:16,8:8,15,8:4,15:14,8:9,15,16,8:3,15:14,8,17,1,17:5,40,18,19,20,21,17,18:14,17");
|
||||
public void _locateToken ()
|
||||
{
|
||||
char yy_lookahead;
|
||||
@@ -367,103 +374,103 @@ private static int [][] unpackFromString(int size1, int size2, String st)
|
||||
case -5:
|
||||
break;
|
||||
case 5:
|
||||
{ myTokenType = XmlTokenType.XML_COMMENT_START; yy_lexical_state = COMMENT; return; }
|
||||
{ myTokenType = XmlTokenType.XML_PI_START; yy_lexical_state = PROCESSING_INSTRUCTION; return; }
|
||||
case -6:
|
||||
break;
|
||||
case 6:
|
||||
{ myTokenType = XmlTokenType.XML_DOCTYPE_START; yy_lexical_state = DOC_TYPE; return; }
|
||||
{ myTokenType = XmlTokenType.XML_COMMENT_START; yy_lexical_state = COMMENT; return; }
|
||||
case -7:
|
||||
break;
|
||||
case 7:
|
||||
{ myTokenType = XmlTokenType.XML_BAD_CHARACTER; return; }
|
||||
{ myTokenType = XmlTokenType.XML_DOCTYPE_START; yy_lexical_state = DOC_TYPE; return; }
|
||||
case -8:
|
||||
break;
|
||||
case 8:
|
||||
{ myTokenType = XmlTokenType.XML_DOCTYPE_END; yy_lexical_state = YYINITIAL; return; }
|
||||
{ myTokenType = XmlTokenType.XML_BAD_CHARACTER; return; }
|
||||
case -9:
|
||||
break;
|
||||
case 9:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; return;}
|
||||
{ myTokenType = XmlTokenType.XML_DOCTYPE_END; yy_lexical_state = YYINITIAL; return; }
|
||||
case -10:
|
||||
break;
|
||||
case 10:
|
||||
{ myTokenType = XmlTokenType.XML_NAME; return; }
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; return;}
|
||||
case -11:
|
||||
break;
|
||||
case 11:
|
||||
{ myTokenType = XmlTokenType.XML_DOCTYPE_PUBLIC; return; }
|
||||
{ myTokenType = XmlTokenType.XML_NAME; return; }
|
||||
case -12:
|
||||
break;
|
||||
case 12:
|
||||
{ myTokenType = XmlTokenType.XML_COMMENT_CHARACTERS; return; }
|
||||
{ myTokenType = XmlTokenType.XML_DOCTYPE_PUBLIC; return; }
|
||||
case -13:
|
||||
break;
|
||||
case 13:
|
||||
{ myTokenType = XmlTokenType.XML_COMMENT_END; yy_lexical_state = YYINITIAL; return; }
|
||||
{ myTokenType = XmlTokenType.XML_COMMENT_CHARACTERS; return; }
|
||||
case -14:
|
||||
break;
|
||||
case 14:
|
||||
{ myTokenType = XmlTokenType.XML_NAME; yy_lexical_state = TAG_ATTRIBUTES; return; }
|
||||
{ myTokenType = XmlTokenType.XML_COMMENT_END; yy_lexical_state = YYINITIAL; return; }
|
||||
case -15:
|
||||
break;
|
||||
case 15:
|
||||
{ yy_lexical_state = YYINITIAL; --yy_buffer_index; break; }
|
||||
{ myTokenType = XmlTokenType.XML_NAME; yy_lexical_state = TAG_ATTRIBUTES; return; }
|
||||
case -16:
|
||||
break;
|
||||
case 16:
|
||||
{ myTokenType = XmlTokenType.XML_DATA_CHARACTERS; return; }
|
||||
{ yy_lexical_state = YYINITIAL; --yy_buffer_index; break; }
|
||||
case -17:
|
||||
break;
|
||||
case 17:
|
||||
{ myTokenType = XmlTokenType.XML_NAME; return; }
|
||||
{ myTokenType = XmlTokenType.XML_DATA_CHARACTERS; return; }
|
||||
case -18:
|
||||
break;
|
||||
case 18:
|
||||
{ yy_lexical_state = YYINITIAL; --yy_buffer_index; }
|
||||
{ myTokenType = XmlTokenType.XML_NAME; return; }
|
||||
case -19:
|
||||
break;
|
||||
case 19:
|
||||
{ myTokenType = XmlTokenType.XML_EQ; yy_lexical_state = ATTRIBUTE_VALUE_START; return; }
|
||||
{ yy_lexical_state = YYINITIAL; --yy_buffer_index; }
|
||||
case -20:
|
||||
break;
|
||||
case 20:
|
||||
{ myTokenType = XmlTokenType.XML_TAG_END; yy_lexical_state = YYINITIAL; return; }
|
||||
{ myTokenType = XmlTokenType.XML_EQ; yy_lexical_state = ATTRIBUTE_VALUE_START; return; }
|
||||
case -21:
|
||||
break;
|
||||
case 21:
|
||||
{ myTokenType = XmlTokenType.XML_EMPTY_ELEMENT_END; yy_lexical_state = YYINITIAL; return; }
|
||||
{ myTokenType = XmlTokenType.XML_TAG_END; yy_lexical_state = YYINITIAL; return; }
|
||||
case -22:
|
||||
break;
|
||||
case 22:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; yy_lexical_state = TAG_ATTRIBUTES; return; }
|
||||
{ myTokenType = XmlTokenType.XML_EMPTY_ELEMENT_END; yy_lexical_state = YYINITIAL; return; }
|
||||
case -23:
|
||||
break;
|
||||
case 23:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_START_DELIMITER; yy_lexical_state = ATTRIBUTE_VALUE_DQ; return; }
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; yy_lexical_state = TAG_ATTRIBUTES; return; }
|
||||
case -24:
|
||||
break;
|
||||
case 24:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_START_DELIMITER; yy_lexical_state = ATTRIBUTE_VALUE_SQ; return; }
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_START_DELIMITER; yy_lexical_state = ATTRIBUTE_VALUE_DQ; return; }
|
||||
case -25:
|
||||
break;
|
||||
case 25:
|
||||
{ myTokenType = XmlTokenType.XML_TAG_END; yy_lexical_state = YYINITIAL; return; }
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_START_DELIMITER; yy_lexical_state = ATTRIBUTE_VALUE_SQ; return; }
|
||||
case -26:
|
||||
break;
|
||||
case 26:
|
||||
{ myTokenType = XmlTokenType.XML_EMPTY_ELEMENT_END; yy_lexical_state = YYINITIAL; return; }
|
||||
{ myTokenType = XmlTokenType.XML_TAG_END; yy_lexical_state = YYINITIAL; return; }
|
||||
case -27:
|
||||
break;
|
||||
case 27:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; return; }
|
||||
{ myTokenType = XmlTokenType.XML_EMPTY_ELEMENT_END; yy_lexical_state = YYINITIAL; return; }
|
||||
case -28:
|
||||
break;
|
||||
case 28:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_END_DELIMITER; yy_lexical_state = TAG_ATTRIBUTES; return; }
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; return; }
|
||||
case -29:
|
||||
break;
|
||||
case 29:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; return; }
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_END_DELIMITER; yy_lexical_state = TAG_ATTRIBUTES; return; }
|
||||
case -30:
|
||||
break;
|
||||
case 30:
|
||||
@@ -475,72 +482,92 @@ private static int [][] unpackFromString(int size1, int size2, String st)
|
||||
case -32:
|
||||
break;
|
||||
case 32:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_END_DELIMITER; yy_lexical_state = TAG_ATTRIBUTES; return; }
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; return; }
|
||||
case -33:
|
||||
break;
|
||||
case 33:
|
||||
{ myTokenType = XmlTokenType.XML_DATA_CHARACTERS; return; }
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_END_DELIMITER; yy_lexical_state = TAG_ATTRIBUTES; return; }
|
||||
case -34:
|
||||
break;
|
||||
case 35:
|
||||
{ myTokenType = XmlTokenType.XML_BAD_CHARACTER; return; }
|
||||
case 34:
|
||||
{ myTokenType = XmlTokenType.XML_PI_TARGET; return; }
|
||||
case -35:
|
||||
break;
|
||||
case 36:
|
||||
{ myTokenType = XmlTokenType.XML_COMMENT_CHARACTERS; return; }
|
||||
case 35:
|
||||
{ myTokenType = XmlTokenType.XML_PI_END; yy_lexical_state = YYINITIAL; return; }
|
||||
case -36:
|
||||
break;
|
||||
case 37:
|
||||
case 36:
|
||||
{ myTokenType = XmlTokenType.XML_DATA_CHARACTERS; return; }
|
||||
case -37:
|
||||
break;
|
||||
case 38:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; yy_lexical_state = TAG_ATTRIBUTES; return; }
|
||||
{ myTokenType = XmlTokenType.XML_BAD_CHARACTER; return; }
|
||||
case -38:
|
||||
break;
|
||||
case 39:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; return; }
|
||||
{ myTokenType = XmlTokenType.XML_COMMENT_CHARACTERS; return; }
|
||||
case -39:
|
||||
break;
|
||||
case 40:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; return; }
|
||||
{ myTokenType = XmlTokenType.XML_DATA_CHARACTERS; return; }
|
||||
case -40:
|
||||
break;
|
||||
case 41:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; return; }
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; yy_lexical_state = TAG_ATTRIBUTES; return; }
|
||||
case -41:
|
||||
break;
|
||||
case 42:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; return; }
|
||||
case -42:
|
||||
break;
|
||||
case 44:
|
||||
{ myTokenType = XmlTokenType.XML_BAD_CHARACTER; return; }
|
||||
case 43:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; return; }
|
||||
case -43:
|
||||
break;
|
||||
case 45:
|
||||
case 44:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; return; }
|
||||
case -44:
|
||||
break;
|
||||
case 46:
|
||||
case 45:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; return; }
|
||||
case -45:
|
||||
break;
|
||||
case 48:
|
||||
{ myTokenType = XmlTokenType.XML_BAD_CHARACTER; return; }
|
||||
case 46:
|
||||
{ myTokenType = XmlTokenType.XML_PI_TARGET; return; }
|
||||
case -46:
|
||||
break;
|
||||
case 50:
|
||||
case 48:
|
||||
{ myTokenType = XmlTokenType.XML_BAD_CHARACTER; return; }
|
||||
case -47:
|
||||
break;
|
||||
case 49:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; return; }
|
||||
case -48:
|
||||
break;
|
||||
case 50:
|
||||
{ myTokenType = XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN; return; }
|
||||
case -49:
|
||||
break;
|
||||
case 52:
|
||||
{ myTokenType = XmlTokenType.XML_BAD_CHARACTER; return; }
|
||||
case -48:
|
||||
case -50:
|
||||
break;
|
||||
case 54:
|
||||
{ myTokenType = XmlTokenType.XML_BAD_CHARACTER; return; }
|
||||
case -49:
|
||||
case -51:
|
||||
break;
|
||||
case 56:
|
||||
{ myTokenType = XmlTokenType.XML_BAD_CHARACTER; return; }
|
||||
case -52:
|
||||
break;
|
||||
case 58:
|
||||
{ myTokenType = XmlTokenType.XML_BAD_CHARACTER; return; }
|
||||
case -53:
|
||||
break;
|
||||
case 60:
|
||||
{ myTokenType = XmlTokenType.XML_BAD_CHARACTER; return; }
|
||||
case -54:
|
||||
break;
|
||||
default:
|
||||
yy_error(YY_E_INTERNAL,false);
|
||||
|
||||
Reference in New Issue
Block a user