]> git.eshelyaron.com Git - emacs.git/commitdiff
Refactor 'electric-quote-mode'
authorPhilipp Stephani <phst@google.com>
Sun, 2 Jul 2017 16:03:06 +0000 (18:03 +0200)
committerPhilipp Stephani <phst@google.com>
Sun, 9 Jul 2017 19:55:30 +0000 (21:55 +0200)
* lisp/electric.el (electric-quote-post-self-insert-function): Remove
local variable 'start', which was misnamed and only used once.

lisp/electric.el

index 4c1d9039d9a3829fc635e9128aaad9f45dd3d5d9..6e1b685ed66a9412037b779d7894869a8b2590e4 100644 (file)
@@ -470,55 +470,53 @@ This requotes when a quoting key is typed."
                       (eq last-command-event ?\`)))
              (not (run-hook-with-args-until-success
                    'electric-quote-inhibit-functions)))
-    (let ((start
-           (if (and comment-start comment-use-syntax)
-               (when (or electric-quote-comment electric-quote-string)
-                 (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)))
-                        ;; 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)
-                  ;; FIXME: Why is the next form there?  It’s never
-                  ;; nil.
-                  (or (eq last-command-event ?\`)
-                      (save-excursion (backward-paragraph) (point)))))))
-      (pcase electric-quote-chars
-        (`(,q< ,q> ,q<< ,q>>)
-         (when start
-           (save-excursion
-             (let ((backtick ?\`))
-               (if (or (eq last-command-event ?\`)
-                       (and electric-quote-context-sensitive
-                            (save-excursion
-                              (backward-char)
-                              (or (bobp) (bolp)
-                                  (memq (char-before) (list q< q<<))
-                                  (memq (char-syntax (char-before))
-                                        '(?\s ?\())))
-                            (setq backtick ?\')))
-                   (cond ((search-backward (string q< backtick) (- (point) 2) t)
-                          (replace-match (string q<<))
-                          (when (and electric-pair-mode
-                                     (eq (cdr-safe
-                                          (assq q< electric-pair-text-pairs))
-                                         (char-after)))
-                            (delete-char 1))
-                          (setq last-command-event q<<))
-                         ((search-backward (string backtick) (1- (point)) t)
-                          (replace-match (string q<))
-                          (setq last-command-event q<)))
-                 (cond ((search-backward (string q> ?') (- (point) 2) t)
-                        (replace-match (string q>>))
-                        (setq last-command-event q>>))
-                       ((search-backward "'" (1- (point)) t)
-                        (replace-match (string q>))
-                        (setq last-command-event q>))))))))))))
+             (if (and comment-start comment-use-syntax)
+                 (when (or electric-quote-comment electric-quote-string)
+                   (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)))
+                          ;; 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)
+                    ;; FIXME: Why is the next form there?  It’s never
+                    ;; nil.
+                    (or (eq last-command-event ?\`)
+                        (save-excursion (backward-paragraph) (point))))))
+    (pcase electric-quote-chars
+      (`(,q< ,q> ,q<< ,q>>)
+       (save-excursion
+         (let ((backtick ?\`))
+           (if (or (eq last-command-event ?\`)
+                   (and electric-quote-context-sensitive
+                        (save-excursion
+                          (backward-char)
+                          (or (bobp) (bolp)
+                              (memq (char-before) (list q< q<<))
+                              (memq (char-syntax (char-before))
+                                    '(?\s ?\())))
+                        (setq backtick ?\')))
+               (cond ((search-backward (string q< backtick) (- (point) 2) t)
+                      (replace-match (string q<<))
+                      (when (and electric-pair-mode
+                                 (eq (cdr-safe
+                                      (assq q< electric-pair-text-pairs))
+                                     (char-after)))
+                        (delete-char 1))
+                      (setq last-command-event q<<))
+                     ((search-backward (string backtick) (1- (point)) t)
+                      (replace-match (string q<))
+                      (setq last-command-event q<)))
+             (cond ((search-backward (string q> ?') (- (point) 2) t)
+                    (replace-match (string q>>))
+                    (setq last-command-event q>>))
+                   ((search-backward "'" (1- (point)) t)
+                    (replace-match (string q>))
+                    (setq last-command-event q>))))))))))
 
 (put 'electric-quote-post-self-insert-function 'priority 10)