Skip to content

Instantly share code, notes, and snippets.

@carymrobbins
Last active January 16, 2018 02:20
Show Gist options
  • Save carymrobbins/93fdab8947410686f94fb8dd5c2e3314 to your computer and use it in GitHub Desktop.
Save carymrobbins/93fdab8947410686f94fb8dd5c2e3314 to your computer and use it in GitHub Desktop.
JFlex support crashes in IntelliJ - https://youtrack.jetbrains.com/issue/IDEA-184980
package com.typelead.intellij.plugin.eta.lang.lexer;
import com.intellij.lexer.*;
import com.intellij.psi.tree.IElementType;
import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.containers.Stack;
import static com.typelead.intellij.plugin.eta.lang.psi.EtaTokenTypes.*;
/**
* Adapted from the HaskForce syntax highlighting lexer.
* https://github.com/carymrobbins/intellij-haskforce/blob/b56877753775ee13db9474a59c183f47d5ab8ead/src/com/haskforce/highlighting/_HaskellSyntaxHighlightingLexer.flex
*
* Use `./gradlew runJFlex` from the command line to generate this lexer.
*/
%%
%{
private int commentLevel;
private int qqLevel;
private int indent;
private Stack<Integer> stateStack = ContainerUtil.newStack();
private int yychar;
// Shared varsym token to ensure that shebang lex failures return the same
// token as normal varsyms.
public static final IElementType SHARED_VARSYM_TOKEN = ITvarsym;
public _EtaSyntaxHighlightingLexer() {
this((java.io.Reader)null);
}
%}
/*
* Missing lexemes: by, haddock things.
*
* Comments: one line too many in dashes-comments.
*/
%public
%class _EtaSyntaxHighlightingLexer
%implements FlexLexer
%function advance
%type IElementType
%unicode
%char
%eof{ return;
%eof}
EOL=\r|\n|\r\n
LINE_WS=[\ \t\f]
WHITE_SPACE=({LINE_WS}|{EOL})+
VARIDREGEXP=([a-z_][a-zA-Z_0-9']+(\.[a-zA-Z_0-9']*)*)|[a-z]|[A-Z][a-zA-Z_0-9']*(\.[A-Z][a-zA-Z_0-9']*)*\.[a-z][a-zA-Z_0-9']*
// Unlike HaskellParsingLexer, we don't lex the unit type () as a CONID.
// The reason is that brace matching breaks. The HaskellAnnotator takes care
// of the appropriate highlighting for unit type ().
CONID=[A-Z][a-zA-Z_0-9']*(\.[A-Z][a-zA-Z_0-9']*)*
INFIXVARID=`[a-zA-Z_0-9][a-zA-Z_0-9'.]*`
CHARTOKEN='(\\.|[^'])'#?
INTEGERTOKEN=(0(o|O)[0-7]+|0(x|X)[0-9a-fA-F]+|[0-9]+)#?#?
FLOATTOKEN=([0-9]+\.[0-9]+((e|E)(\+|\-)?[0-9]+)?|[0-9]+((e|E)(\+|\-)?[0-9]+))#?#?
COMMENT=--([^\!\#\$\%\&\*\+\.\/\<\=\>\?\@\\\^\|\~\:\r\n][^\r\n]*\n?|[\r\n])
HADDOCK=--\ [\^\|]([^\r\n]*\n?|[\r\n])
CPPIF=#(if|elif|else|endif|define|ifdef|undef|include|pragma)([^\r\n]*)
// Unicode syntax also supported: https://www.haskell.org/ghc/docs/7.2.1/html/users_guide/syntax-extns.html
ASCSYMBOL=[\!\#\$\%\&\*\+\.\/\<\=\>\?\@\\\^\|\-\~\:↢↣⤛⤜★]
STRINGGAP=\\[ \t\n\x0B\f\r]*\n[ \t\n\x0B\f\r]*\\
MAYBEQVARID=({CONID}\.)*{VARIDREGEXP}
// Avoid "COMMENT" since that collides with the token definition above.
%state INCOMMENT, INSTRING, INPRAGMA, INQUASIQUOTE, INQUASIQUOTEHEAD, INSHEBANG
%%
<YYINITIAL> {
"#!" {
if (yychar == 0) {
yybegin(INSHEBANG);
return ITlineComment;
}
return SHARED_VARSYM_TOKEN;
}
{WHITE_SPACE} { return com.intellij.psi.TokenType.WHITE_SPACE; }
"class" { return ITclass; }
"data" { return ITdata; }
"default" { return ITdefault; }
"deriving" { return ITderiving; }
"export" { return ITexport; }
"foreign" { return ITforeign; }
"instance" { return ITinstance; }
"family" { return ITfamily; }
"module" { return ITmodule; }
"newtype" { return ITnewtype; }
"type" { return ITtype; }
"where" { return ITwhere; }
"as" { return ITas; }
"import" { return ITimport; }
"infix" { return ITinfix; }
"infixl" { return ITinfixl; }
"infixr" { return ITinfixr; }
"qualified" { return ITqualified; }
"hiding" { return IThiding; }
"case" { return ITcase; }
"mdo" { return ITmdo; }
"do" { return ITdo; }
"rec" { return ITrec; }
"else" { return ITelse; }
"#else" { return ITlineComment; } // TODO: highlighting cpp as comment
"#endif" { return ITlineComment; } // TODO: highlighting cpp as comment
"if" { return ITif; }
"in" { return ITin; }
"let" { return ITlet; }
"of" { return ITof; }
"then" { return ITthen; }
("forall"|"∀") { return ITforall; }
"\\&" { return NULLCHARACTER; }
"(#" { return IToubxparen; }
"#)" { return ITcubxparen; }
"(" { return IToparen; }
")" { return ITcparen; }
"|" { return ITvbar; }
"," { return ITcomma; }
";" { return ITsemi; }
"[|" { return ITopenExpQuote; }
("["{MAYBEQVARID}"|") {
yypushback(yytext().length() - 1);
qqLevel++;
stateStack.push(YYINITIAL);
yybegin(INQUASIQUOTEHEAD);
return ITopenExpQuote;
}
"|]" { return ITcloseQuote; }
"[" { return ITobrack; }
"]" { return ITcbrack; }
"''" { return ITtyQuote; }
"`" { return ITbackquote; }
"\"" {
yybegin(INSTRING);
return ITstring;
}
"{-#" {
yybegin(INPRAGMA);
return ITinline_prag; // TODO: all pragmas as inline?
}
"{-" {
commentLevel = 1;
yybegin(INCOMMENT);
return ITblockComment;
}
"{" { return ITocurly; }
"}" { return ITccurly; }
"'" { return ITsimpleQuote; }
"$(" { return ITparenEscape; }
("$"{VARIDREGEXP}) { return ITidEscape; }
"_" { return ITunderscore; }
".." { return ITdotdot; }
":" { return ITcolon; }
("::"|"∷") { return ITdcolon; }
"=" { return ITequal; }
"\\" { return ITvarsym; } // TODO: highlight as a regular varsym?
("<-"|"←") { return ITlarrow; }
("->"|"→") { return ITrarrow; }
"@" { return ITat; }
"~" { return ITtilde; }
("=>"|"⇒") { return ITdarrow; }
(":"{ASCSYMBOL}+) { return ITconsym; }
({ASCSYMBOL}+) { return SHARED_VARSYM_TOKEN; }
{VARIDREGEXP} { return ITvarid; }
{CONID} { return ITconid; }
{INFIXVARID} { return ITvarid; }
{CHARTOKEN} { return CHARTOKEN; }
{INTEGERTOKEN} { return INTEGERTOKEN; }
{FLOATTOKEN} { return FLOATTOKEN; }
{HADDOCK} { return HADDOCK; }
{COMMENT} { return COMMENT; }
{CPPIF} { return CPPIF; }
[^] { return com.intellij.psi.TokenType.BAD_CHARACTER; }
}
<INSHEBANG> {
[^\n\r]+ { yybegin(YYINITIAL); return SHEBANGPATH; }
[\n\r] { yybegin(YYINITIAL); return com.intellij.psi.TokenType.WHITE_SPACE; }
}
<INCOMMENT> {
"-}" {
commentLevel--;
if (commentLevel == 0) {
yybegin(YYINITIAL);
return CLOSECOM;
}
return COMMENTTEXT;
}
"{-" {
commentLevel++;
return COMMENTTEXT;
}
[^-{}]+ { return COMMENTTEXT; }
[^] { return COMMENTTEXT; }
}
<INSTRING> {
\" {
yybegin(YYINITIAL);
return DOUBLEQUOTE;
}
\\(\\|{EOL}|[a-z0-9]) { return STRINGTOKEN; }
({STRINGGAP}|\\\"|[^\"\\\n])+ { return STRINGTOKEN; }
[^] { return BADSTRINGTOKEN; }
}
<INPRAGMA> {
"#-}" {
yybegin(YYINITIAL);
return CLOSEPRAGMA;
}
[^-}#]+ { return PRAGMA; }
[^] { return PRAGMA; }
}
<INQUASIQUOTE> {
"|]" {
qqLevel--;
yybegin(stateStack.pop());
if (qqLevel == 0) {
return RTHCLOSE;
}
return QQTEXT;
}
("["{MAYBEQVARID}"|") {
yypushback(yytext().length() - 1);
qqLevel++;
stateStack.push(INQUASIQUOTE);
yybegin(INQUASIQUOTEHEAD);
return QQTEXT;
}
[^|\]\[]+ { return QQTEXT; }
[^] { return QQTEXT; }
}
<INQUASIQUOTEHEAD> {
"|" {
yybegin(INQUASIQUOTE);
return PIPE;
}
{VARIDREGEXP} { return VARIDREGEXP; }
{CONID} { return CONIDREGEXP; }
"." { return PERIOD;}
{EOL}+ {
indent = 0;
return com.intellij.psi.TokenType.WHITE_SPACE;
}
[\ \f\t]+ { return com.intellij.psi.TokenType.WHITE_SPACE; }
[^] { return com.intellij.psi.TokenType.BAD_CHARACTER; }
}
2018-01-15 20:16:00,042 [299911150] ERROR - tor.impl.FileEditorManagerImpl - java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Unexpected termination offset for lexer org.intellij.lang.jflex.lexer.JFlexHighlighterLexer[FlexAdapter for org.intellij.lang.jflex.lexer._JFlexLexer]
java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Unexpected termination offset for lexer org.intellij.lang.jflex.lexer.JFlexHighlighterLexer[FlexAdapter for org.intellij.lang.jflex.lexer._JFlexLexer]
at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.a(AsyncEditorLoader.java:136)
at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.start(AsyncEditorLoader.java:80)
at com.intellij.openapi.fileEditor.impl.text.TextEditorImpl.<init>(TextEditorImpl.java:62)
at com.intellij.openapi.fileEditor.impl.text.PsiAwareTextEditorImpl.<init>(PsiAwareTextEditorImpl.java:44)
at com.intellij.openapi.fileEditor.impl.text.PsiAwareTextEditorProvider.createEditor(PsiAwareTextEditorProvider.java:48)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.a(FileEditorManagerImpl.java:860)
at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:653)
at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:666)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileImpl4(FileEditorManagerImpl.java:959)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileImpl3(FileEditorManagerImpl.java:786)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.a(FileEditorManagerImpl.java:768)
at com.intellij.openapi.command.impl.CoreCommandProcessor.a(CoreCommandProcessor.java:149)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:109)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:99)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:85)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileImpl2(FileEditorManagerImpl.java:768)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileWithProviders(FileEditorManagerImpl.java:699)
at com.intellij.openapi.fileEditor.ex.FileEditorManagerEx.openFile(FileEditorManagerEx.java:155)
at com.intellij.codeInsight.navigation.NavigationUtil.a(NavigationUtil.java:213)
at com.intellij.codeInsight.navigation.NavigationUtil.openFileWithPsiElement(NavigationUtil.java:189)
at com.intellij.ide.projectView.impl.nodes.AbstractPsiBasedNode.navigate(AbstractPsiBasedNode.java:239)
at com.intellij.ide.projectView.impl.nodes.AbstractPsiBasedNode.navigate(AbstractPsiBasedNode.java:249)
at com.intellij.ide.projectView.impl.nodes.PsiFileNode.navigate(PsiFileNode.java:133)
at com.intellij.util.OpenSourceUtil.navigate(OpenSourceUtil.java:53)
at com.intellij.util.OpenSourceUtil.openSourcesFrom(OpenSourceUtil.java:31)
at com.intellij.util.EditSourceOnDoubleClickHandler$TreeMouseListener.processDoubleClick(EditSourceOnDoubleClickHandler.java:128)
at com.intellij.util.EditSourceOnDoubleClickHandler$TreeMouseListener.onDoubleClick(EditSourceOnDoubleClickHandler.java:120)
at com.intellij.ui.DoubleClickListener.onClick(DoubleClickListener.java:30)
at com.intellij.ui.ClickListener$1.mouseReleased(ClickListener.java:73)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:290)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
at java.awt.Component.processMouseEvent(Component.java:6541)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
at com.intellij.ui.treeStructure.Tree.processMouseEvent(Tree.java:423)
at com.intellij.ide.dnd.aware.DnDAwareTree.processMouseEvent(DnDAwareTree.java:58)
at java.awt.Component.processEvent(Component.java:6306)
at java.awt.Container.processEvent(Container.java:2237)
at java.awt.Component.dispatchEventImpl(Component.java:4897)
at java.awt.Container.dispatchEventImpl(Container.java:2295)
at java.awt.Component.dispatchEvent(Component.java:4719)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4889)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4526)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4467)
at java.awt.Container.dispatchEventImpl(Container.java:2281)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4719)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:764)
at java.awt.EventQueue.access$500(EventQueue.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:715)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
at java.awt.EventQueue$4.run(EventQueue.java:737)
at java.awt.EventQueue$4.run(EventQueue.java:735)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:734)
at com.intellij.ide.IdeEventQueue.j(IdeEventQueue.java:822)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:646)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:366)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Unexpected termination offset for lexer org.intellij.lang.jflex.lexer.JFlexHighlighterLexer[FlexAdapter for org.intellij.lang.jflex.lexer._JFlexLexer]
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:206)
at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.a(AsyncEditorLoader.java:132)
... 68 more
Caused by: java.lang.IllegalStateException: Unexpected termination offset for lexer org.intellij.lang.jflex.lexer.JFlexHighlighterLexer[FlexAdapter for org.intellij.lang.jflex.lexer._JFlexLexer]
at com.intellij.openapi.editor.ex.util.LexerEditorHighlighter.a(LexerEditorHighlighter.java:394)
at com.intellij.openapi.editor.ex.util.LexerEditorHighlighter.setText(LexerEditorHighlighter.java:360)
at com.intellij.openapi.fileEditor.impl.text.TextEditorImpl.loadEditorInBackground(TextEditorImpl.java:70)
at com.intellij.openapi.fileEditor.impl.text.PsiAwareTextEditorImpl.loadEditorInBackground(PsiAwareTextEditorImpl.java:50)
at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.a(AsyncEditorLoader.java:100)
at com.intellij.psi.impl.PsiDocumentManagerBase.lambda$commitAndRunReadAction$2(PsiDocumentManagerBase.java:508)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:927)
at com.intellij.psi.impl.PsiDocumentManagerBase.commitAndRunReadAction(PsiDocumentManagerBase.java:506)
at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.a(AsyncEditorLoader.java:98)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.a(ProgressIndicatorUtils.java:141)
at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:157)
at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:543)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:488)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:94)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:144)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:139)
at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.a(AsyncEditorLoader.java:98)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at com.intellij.util.concurrency.BoundedTaskExecutor$2.run(BoundedTaskExecutor.java:212)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
2018-01-15 20:16:00,045 [299911153] ERROR - tor.impl.FileEditorManagerImpl - IntelliJ IDEA 2017.3.1 Build #IU-173.3942.27
2018-01-15 20:16:00,045 [299911153] ERROR - tor.impl.FileEditorManagerImpl - JDK: 1.8.0_152-release
2018-01-15 20:16:00,045 [299911153] ERROR - tor.impl.FileEditorManagerImpl - VM: OpenJDK 64-Bit Server VM
2018-01-15 20:16:00,045 [299911153] ERROR - tor.impl.FileEditorManagerImpl - Vendor: JetBrains s.r.o
2018-01-15 20:16:00,045 [299911153] ERROR - tor.impl.FileEditorManagerImpl - OS: Linux
2018-01-15 20:16:00,045 [299911153] ERROR - tor.impl.FileEditorManagerImpl - Current Command:
2018-01-15 20:16:00,054 [299911162] ERROR - tor.impl.FileEditorManagerImpl - java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Unexpected termination offset for lexer org.intellij.lang.jflex.lexer.JFlexHighlighterLexer[FlexAdapter for org.intellij.lang.jflex.lexer._JFlexLexer]
java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Unexpected termination offset for lexer org.intellij.lang.jflex.lexer.JFlexHighlighterLexer[FlexAdapter for org.intellij.lang.jflex.lexer._JFlexLexer]
at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.a(AsyncEditorLoader.java:136)
at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.start(AsyncEditorLoader.java:80)
at com.intellij.openapi.fileEditor.impl.text.TextEditorImpl.<init>(TextEditorImpl.java:62)
at com.intellij.openapi.fileEditor.impl.text.PsiAwareTextEditorImpl.<init>(PsiAwareTextEditorImpl.java:44)
at com.intellij.openapi.fileEditor.impl.text.PsiAwareTextEditorProvider.createEditor(PsiAwareTextEditorProvider.java:48)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.a(FileEditorManagerImpl.java:860)
at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:653)
at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:666)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileImpl4(FileEditorManagerImpl.java:959)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileImpl3(FileEditorManagerImpl.java:786)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.a(FileEditorManagerImpl.java:768)
at com.intellij.openapi.command.impl.CoreCommandProcessor.a(CoreCommandProcessor.java:141)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:109)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:99)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:85)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileImpl2(FileEditorManagerImpl.java:768)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileWithProviders(FileEditorManagerImpl.java:699)
at com.intellij.openapi.fileEditor.ex.FileEditorManagerEx.openFile(FileEditorManagerEx.java:155)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.a(FileEditorManagerImpl.java:1113)
at com.intellij.openapi.command.impl.CoreCommandProcessor.a(CoreCommandProcessor.java:149)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:109)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:99)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:85)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openEditor(FileEditorManagerImpl.java:1111)
at com.intellij.openapi.fileEditor.OpenFileDescriptor.navigateInAnyFileEditor(OpenFileDescriptor.java:145)
at com.intellij.openapi.fileEditor.OpenFileDescriptor.navigateInEditor(OpenFileDescriptor.java:131)
at com.intellij.openapi.fileEditor.OpenFileDescriptor.navigateInEditorOrNativeApp(OpenFileDescriptor.java:127)
at com.intellij.openapi.fileEditor.OpenFileDescriptor.navigate(OpenFileDescriptor.java:114)
at com.intellij.psi.impl.source.PsiFileImpl.navigate(PsiFileImpl.java:985)
at com.intellij.codeInsight.navigation.NavigationUtil.openFileWithPsiElement(NavigationUtil.java:192)
at com.intellij.ide.projectView.impl.nodes.AbstractPsiBasedNode.navigate(AbstractPsiBasedNode.java:239)
at com.intellij.ide.projectView.impl.nodes.AbstractPsiBasedNode.navigate(AbstractPsiBasedNode.java:249)
at com.intellij.ide.projectView.impl.nodes.PsiFileNode.navigate(PsiFileNode.java:133)
at com.intellij.util.OpenSourceUtil.navigate(OpenSourceUtil.java:53)
at com.intellij.util.OpenSourceUtil.openSourcesFrom(OpenSourceUtil.java:31)
at com.intellij.util.EditSourceOnDoubleClickHandler$TreeMouseListener.processDoubleClick(EditSourceOnDoubleClickHandler.java:128)
at com.intellij.util.EditSourceOnDoubleClickHandler$TreeMouseListener.onDoubleClick(EditSourceOnDoubleClickHandler.java:120)
at com.intellij.ui.DoubleClickListener.onClick(DoubleClickListener.java:30)
at com.intellij.ui.ClickListener$1.mouseReleased(ClickListener.java:73)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:290)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
at java.awt.Component.processMouseEvent(Component.java:6541)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
at com.intellij.ui.treeStructure.Tree.processMouseEvent(Tree.java:423)
at com.intellij.ide.dnd.aware.DnDAwareTree.processMouseEvent(DnDAwareTree.java:58)
at java.awt.Component.processEvent(Component.java:6306)
at java.awt.Container.processEvent(Container.java:2237)
at java.awt.Component.dispatchEventImpl(Component.java:4897)
at java.awt.Container.dispatchEventImpl(Container.java:2295)
at java.awt.Component.dispatchEvent(Component.java:4719)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4889)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4526)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4467)
at java.awt.Container.dispatchEventImpl(Container.java:2281)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4719)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:764)
at java.awt.EventQueue.access$500(EventQueue.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:715)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
at java.awt.EventQueue$4.run(EventQueue.java:737)
at java.awt.EventQueue$4.run(EventQueue.java:735)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:734)
at com.intellij.ide.IdeEventQueue.j(IdeEventQueue.java:822)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:646)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:366)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Unexpected termination offset for lexer org.intellij.lang.jflex.lexer.JFlexHighlighterLexer[FlexAdapter for org.intellij.lang.jflex.lexer._JFlexLexer]
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:206)
at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.a(AsyncEditorLoader.java:132)
... 78 more
Caused by: java.lang.IllegalStateException: Unexpected termination offset for lexer org.intellij.lang.jflex.lexer.JFlexHighlighterLexer[FlexAdapter for org.intellij.lang.jflex.lexer._JFlexLexer]
at com.intellij.openapi.editor.ex.util.LexerEditorHighlighter.a(LexerEditorHighlighter.java:394)
at com.intellij.openapi.editor.ex.util.LexerEditorHighlighter.setText(LexerEditorHighlighter.java:360)
at com.intellij.openapi.fileEditor.impl.text.TextEditorImpl.loadEditorInBackground(TextEditorImpl.java:70)
at com.intellij.openapi.fileEditor.impl.text.PsiAwareTextEditorImpl.loadEditorInBackground(PsiAwareTextEditorImpl.java:50)
at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.a(AsyncEditorLoader.java:100)
at com.intellij.psi.impl.PsiDocumentManagerBase.lambda$commitAndRunReadAction$2(PsiDocumentManagerBase.java:508)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:927)
at com.intellij.psi.impl.PsiDocumentManagerBase.commitAndRunReadAction(PsiDocumentManagerBase.java:506)
at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.a(AsyncEditorLoader.java:98)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.a(ProgressIndicatorUtils.java:141)
at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:157)
at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:543)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:488)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:94)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:144)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:139)
at com.intellij.openapi.fileEditor.impl.text.AsyncEditorLoader.a(AsyncEditorLoader.java:98)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at com.intellij.util.concurrency.BoundedTaskExecutor$2.run(BoundedTaskExecutor.java:212)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
2018-01-15 20:16:00,056 [299911164] ERROR - tor.impl.FileEditorManagerImpl - IntelliJ IDEA 2017.3.1 Build #IU-173.3942.27
2018-01-15 20:16:00,056 [299911164] ERROR - tor.impl.FileEditorManagerImpl - JDK: 1.8.0_152-release
2018-01-15 20:16:00,057 [299911165] ERROR - tor.impl.FileEditorManagerImpl - VM: OpenJDK 64-Bit Server VM
2018-01-15 20:16:00,057 [299911165] ERROR - tor.impl.FileEditorManagerImpl - Vendor: JetBrains s.r.o
2018-01-15 20:16:00,057 [299911165] ERROR - tor.impl.FileEditorManagerImpl - OS: Linux
2018-01-15 20:16:00,057 [299911165] ERROR - tor.impl.FileEditorManagerImpl - Current Command:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment