From: Paul Eggert Date: Mon, 2 May 2016 15:56:02 +0000 (-0700) Subject: Don’t electrically quote ‘'’ in Python X-Git-Tag: emacs-25.0.94~50 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=6280531;p=emacs.git Don’t electrically quote ‘'’ in Python Problem reported by Philipp Stephani (Bug#23387). * lisp/electric.el (electric-quote-post-self-insert-function): Do not requote a string starter or ender. --- diff --git a/lisp/electric.el b/lisp/electric.el index ab79943c9dd..e2896010405 100644 --- a/lisp/electric.el +++ b/lisp/electric.el @@ -444,10 +444,15 @@ This requotes when a quoting key is typed." (let ((start (if (and comment-start comment-use-syntax) (when (or electric-quote-comment electric-quote-string) - (let ((syntax (syntax-ppss))) - (and (or (and electric-quote-comment (nth 4 syntax)) + (let* ((syntax (syntax-ppss)) + (beg (nth 8 syntax))) + (and beg + (or (and electric-quote-comment (nth 4 syntax)) (and electric-quote-string (nth 3 syntax))) - (nth 8 syntax)))) + ;; Do not requote a quote that starts or ends + ;; a comment or string. + (eq beg (nth 8 (save-excursion + (syntax-ppss (1- (point))))))))) (and electric-quote-paragraph (derived-mode-p 'text-mode) (or (eq last-command-event ?\`)