mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-12-23 10:34:07 +00:00
Fix two js indentation problems
Fix intentation problems reported in https://github.com/mooz/js2-mode/issues/463. * lisp/progmodes/js.el (js--continued-expression-p): Check syntax state after /. (js--multi-line-declaration-indentation): Check syntax state before "const".
This commit is contained in:
parent
b8cf159bbc
commit
e562356c3f
@ -1834,10 +1834,15 @@ This performs fontification according to `js--class-styles'."
|
||||
(save-excursion
|
||||
(back-to-indentation)
|
||||
(if (js--looking-at-operator-p)
|
||||
(or (not (memq (char-after) '(?- ?+)))
|
||||
(progn
|
||||
(forward-comment (- (point)))
|
||||
(not (memq (char-before) '(?, ?\[ ?\()))))
|
||||
(if (eq (char-after) ?/)
|
||||
(prog1
|
||||
(not (nth 3 (syntax-ppss (1+ (point)))))
|
||||
(forward-char -1))
|
||||
(or
|
||||
(not (memq (char-after) '(?- ?+)))
|
||||
(progn
|
||||
(forward-comment (- (point)))
|
||||
(not (memq (char-before) '(?, ?\[ ?\())))))
|
||||
(and (js--find-newline-backward)
|
||||
(progn
|
||||
(skip-chars-backward " \t")
|
||||
@ -1972,8 +1977,12 @@ statement spanning multiple lines; otherwise, return nil."
|
||||
(save-excursion
|
||||
(back-to-indentation)
|
||||
(when (not (looking-at js--declaration-keyword-re))
|
||||
(when (looking-at js--indent-operator-re)
|
||||
(goto-char (match-end 0)))
|
||||
(let ((pt (point)))
|
||||
(when (looking-at js--indent-operator-re)
|
||||
(goto-char (match-end 0)))
|
||||
;; The "operator" is probably a regexp literal opener.
|
||||
(when (nth 3 (syntax-ppss))
|
||||
(goto-char pt)))
|
||||
(while (and (not at-opening-bracket)
|
||||
(not (bobp))
|
||||
(let ((pos (point)))
|
||||
|
@ -7,6 +7,9 @@ let c = 1,
|
||||
var e = 100500,
|
||||
+ 1;
|
||||
|
||||
// Don't misinterpret "const"
|
||||
/const/
|
||||
|
||||
function test ()
|
||||
{
|
||||
return /[/]/.test ('/') // (bug#19397)
|
||||
@ -135,6 +138,12 @@ if (1) {
|
||||
: 4
|
||||
}
|
||||
|
||||
// Regexp is not a continuation
|
||||
bar(
|
||||
"string arg1",
|
||||
/abc/
|
||||
)
|
||||
|
||||
// Local Variables:
|
||||
// indent-tabs-mode: nil
|
||||
// js-indent-level: 2
|
||||
|
Loading…
Reference in New Issue
Block a user