Subject: Re: bug#18764: 24.4; electric-indent in *scratch* signals an error

From: Noam Postavsky <[email-masked]>
Date: Sat, 16 Jun 2018 19:13:29 -0400

Eli Zaretskii <[email-masked]> writes:

> Then let me rephrase: why are we signaling an error instead of
> silently doing nothing?  IOW, if something cannot be indented, let's
> leave it unindented.  Does that make sense?

So just suppress the errors?  Worries me a bit that some future problems
could be harder to find because of that.

--- i/lisp/electric.el
+++ w/lisp/electric.el
@@ -262,6 +262,7 @@ electric-indent-post-self-insert-function
                     (unless (eq act 'do-indent) (nth 8 (syntax-ppss))))))))
       ;; For newline, we want to reindent both lines and basically behave like
       ;; reindent-then-newline-and-indent (whose code we hence copied).
+      (ignore-errors
         (let ((at-newline (<= pos (line-beginning-position))))
           (when at-newline
             (let ((before (copy-marker (1- pos) t)))
@@ -285,7 +286,7 @@ electric-indent-post-self-insert-function
                   (delete-horizontal-space t)))))
           (unless (and electric-indent-inhibit
                        (not at-newline))
-          (indent-according-to-mode))))))
+            (indent-according-to-mode)))))))