name Indent scope source.ruby settings decreaseIndentPattern ^\s*([}\]]\s*$|(end|rescue|ensure|else|elsif|when)\b) increaseIndentPattern (?x)^ (\s* (module|class|def |unless|if|else|elsif |case|when |begin|rescue|ensure |for|while|until |(?= .*? \b(do|begin|case|if|unless)\b ) # the look-ahead above is to quickly discard non-candidates ( "(\\.|[^\\"])*+" # eat a double quoted string | '(\\.|[^\\'])*+' # eat a single quoted string | [^#"'] # eat all but comments and strings )* ( \s (do|begin|case) | [-+=&|*/~%^<>~](?<!\$.) \s*+ (if|unless) ) )\b (?! [^;]*+ ; .*? \bend\b ) |( "(\\.|[^\\"])*+" # eat a double quoted string | '(\\.|[^\\'])*+' # eat a single quoted string | [^#"'] # eat all but comments and strings )* ( \{ (?! [^}]*+ \} ) | \[ (?! [^\]]*+ \] ) ) ).*$ uuid 6FEAF60F-F0F3-4618-9259-DE93285F50D1