From 0985a76566ab18537d4e459c7513adb6c53ade99 Mon Sep 17 00:00:00 2001
From: Marijn Haverbeke <marijnh@gmail.com>
Date: Fri, 19 Oct 2012 11:39:47 +0200
Subject: [PATCH] [javascript mode] Also count on semicolon omittance in var
 lists

Issue #898
---
 mode/javascript/javascript.js | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mode/javascript/javascript.js b/mode/javascript/javascript.js
index 0c67874e6..37f6f8737 100644
--- a/mode/javascript/javascript.js
+++ b/mode/javascript/javascript.js
@@ -322,7 +322,7 @@ CodeMirror.defineMode("javascript", function(config, parserConfig) {
       register(value);
       return isTS ? cont(maybetype, vardef2) : cont(vardef2);
     }
-    return cont();
+    return pass();
   }
   function vardef2(type, value) {
     if (value == "=") return cont(expression, vardef2);
@@ -388,7 +388,7 @@ CodeMirror.defineMode("javascript", function(config, parserConfig) {
       var firstChar = textAfter && textAfter.charAt(0), lexical = state.lexical;
       if (lexical.type == "stat" && firstChar == "}") lexical = lexical.prev;
       var type = lexical.type, closing = firstChar == type;
-      if (type == "vardef") return lexical.indented + 4;
+      if (type == "vardef") return lexical.indented + (state.lastType == "operator" || state.lastType == "," ? 4 : 0);
       else if (type == "form" && firstChar == "{") return lexical.indented;
       else if (type == "form") return lexical.indented + indentUnit;
       else if (type == "stat")
-- 
GitLab