java.lang.IndexOutOfBoundsException: tokenLength=0 <= 0. Fix the lexer implementation to use proper token length value. at org.netbeans.lib.lexer.LexerInputOperation.assignTokenLength(LexerInputOperation.java:405) at org.netbeans.lib.lexer.JoinLexerInputOperation.assignTokenLength(JoinLexerInputOperation.java:188) at org.netbeans.lib.lexer.LexerInputOperation.createToken(LexerInputOperation.java:315) at org.netbeans.spi.lexer.TokenFactory.createToken(TokenFactory.java:105) at org.netbeans.spi.lexer.TokenFactory.createToken(TokenFactory.java:89) at org.netbeans.modules.html.knockout.KODataBindLexer.nextToken(KODataBindLexer.java:196) at org.netbeans.lib.lexer.LexerInputOperation.nextToken(LexerInputOperation.java:215) at org.netbeans.lib.lexer.inc.TokenListUpdater.relex(TokenListUpdater.java:627) at org.netbeans.lib.lexer.inc.TokenListUpdater.updateJoined(TokenListUpdater.java:589) at org.netbeans.lib.lexer.inc.TokenHierarchyUpdate$UpdateItem.update(TokenHierarchyUpdate.java:347) at org.netbeans.lib.lexer.inc.TokenHierarchyUpdate.processLevelInfos(TokenHierarchyUpdate.java:225) at org.netbeans.lib.lexer.inc.TokenHierarchyUpdate.updateImpl(TokenHierarchyUpdate.java:196) at org.netbeans.lib.lexer.inc.TokenHierarchyUpdate.update(TokenHierarchyUpdate.java:134) at org.netbeans.lib.lexer.TokenHierarchyOperation.textModified(TokenHierarchyOperation.java:605) at org.netbeans.spi.lexer.TokenHierarchyControl.textModified(TokenHierarchyControl.java:96) at org.netbeans.lib.lexer.inc.DocumentInput.textModified(DocumentInput.java:152) at org.netbeans.lib.lexer.inc.DocumentInput.removeUpdate(DocumentInput.java:145) at org.netbeans.lib.editor.util.swing.PriorityDocumentListenerList.removeUpdate(PriorityDocumentListenerList.java:116) at javax.swing.text.AbstractDocument.fireRemoveUpdate(AbstractDocument.java:260) at org.netbeans.editor.BaseDocument.fireRemoveUpdate(BaseDocument.java:1627) at org.netbeans.editor.BaseDocumentEvent.undo(BaseDocumentEvent.java:288) at org.netbeans.editor.GuardedDocumentEvent.undo(GuardedDocumentEvent.java:72) at org.netbeans.modules.editor.lib2.document.StableCompoundEdit.undo(StableCompoundEdit.java:93) at org.netbeans.editor.BaseDocument$AtomicCompoundEdit.undo(BaseDocument.java:2196) at org.netbeans.editor.BaseDocument.undoAtomicEdits(BaseDocument.java:2114) at org.netbeans.editor.BaseDocument.breakAtomicLock(BaseDocument.java:1800) at org.netbeans.editor.GuardedDocument.runAtomicAsUser(GuardedDocument.java:357) at org.netbeans.editor.BaseKit$DefaultKeyTypedAction.actionPerformed(BaseKit.java:1131) at org.netbeans.editor.ext.ExtKit$ExtDefaultKeyTypedAction.actionPerformed(ExtKit.java:1024) at org.netbeans.modules.csl.core.CslEditorKit$GsfDefaultKeyTypedAction.actionPerformed(CslEditorKit.java:233) at org.netbeans.editor.BaseAction.actionPerformed(BaseAction.java:337) at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1664) at javax.swing.JComponent.processKeyBinding(JComponent.java:2878) at javax.swing.JComponent.processKeyBindings(JComponent.java:2925) at javax.swing.JComponent.processKeyEvent(JComponent.java:2841) at java.awt.Component.processEvent(Component.java:6282) at java.awt.Container.processEvent(Container.java:2229) at java.awt.Component.dispatchEventImpl(Component.java:4861) at java.awt.Container.dispatchEventImpl(Container.java:2287) at java.awt.Component.dispatchEvent(Component.java:4687) at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1895) at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:762) at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1027) at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:899) at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:727) at java.awt.Component.dispatchEventImpl(Component.java:4731) at java.awt.Container.dispatchEventImpl(Container.java:2287) at java.awt.Window.dispatchEventImpl(Window.java:2719) at java.awt.Component.dispatchEvent(Component.java:4687) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735) at java.awt.EventQueue.access$200(EventQueue.java:103) at java.awt.EventQueue$3.run(EventQueue.java:694) at java.awt.EventQueue$3.run(EventQueue.java:692) at java.security.AccessController.doPrivileged(AccessController.java:0) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87) at java.awt.EventQueue$4.run(EventQueue.java:708) at java.awt.EventQueue$4.run(EventQueue.java:706) at java.security.AccessController.doPrivileged(AccessController.java:0) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:705) at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:159) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138) at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)