From edde35e6f8c21979035824ae1845c33e0a5e0da0 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Mon, 30 Oct 2017 10:24:47 -0400 Subject: [PATCH] * lisp/progmodes/perl-mode.el: Fix electric indentation with RET (perl-electric-noindent-p): The `eolp' check should not apply to RET. Reported in https://emacs.stackexchange.com/questions/36337. --- lisp/progmodes/perl-mode.el | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lisp/progmodes/perl-mode.el b/lisp/progmodes/perl-mode.el index 2f9a4c3db55..24b934ce6c2 100644 --- a/lisp/progmodes/perl-mode.el +++ b/lisp/progmodes/perl-mode.el @@ -678,7 +678,9 @@ Turning on Perl mode runs the normal hook `perl-mode-hook'." (define-obsolete-function-alias 'electric-perl-terminator 'perl-electric-terminator "22.1") (defun perl-electric-noindent-p (_char) - (unless (eolp) 'no-indent)) + ;; To reproduce the old behavior, ;, {, }, and : are made electric, but + ;; we only want them to be electric at EOL. + (unless (or (bolp) (eolp)) 'no-indent)) (defun perl-electric-terminator (arg) "Insert character and maybe adjust indentation. -- 2.39.2