emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs-24 r116917: Fix electric-pair-skip-whitespace with q


From: João Távora
Subject: [Emacs-diffs] emacs-24 r116917: Fix electric-pair-skip-whitespace with quotes in text-mode
Date: Sun, 06 Apr 2014 23:09:31 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 116917
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/17183
committer: João Távora <address@hidden>
branch nick: emacs-24
timestamp: Mon 2014-04-07 00:09:19 +0100
message:
  Fix electric-pair-skip-whitespace with quotes in text-mode
  
  * lisp/elec-pair.el (electric-pair-post-self-insert-function): Don't
  skip whitespace for quote syntax when `electric-pair-text-pairs'
  and `electric-pair-pairs' were used.
  
  * test/automated/electric-tests.el (electric-pair-define-test-form):
  More readable test docstrings.
  (whitespace-skipping-for-quotes-not-ouside)
  (whitespace-skipping-for-quotes-only-inside)
  (whitespace-skipping-not-without-proper-syntax):
modified:
  lisp/ChangeLog                 changelog-20091113204419-o5vbwnq5f7feedwu-1432
  lisp/elec-pair.el              elecpair.el-20131227124533-yaq8recs0j0ggt67-1
  test/ChangeLog                 changelog-20091113204419-o5vbwnq5f7feedwu-8588
  test/automated/electric-tests.el 
electrictests.el-20131226202454-s3cqbs9maop0w8qy-1
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2014-04-06 15:21:35 +0000
+++ b/lisp/ChangeLog    2014-04-06 23:09:19 +0000
@@ -1,3 +1,10 @@
+2014-04-06  João Távora  <address@hidden>
+
+       * elec-pair.el (electric-pair-post-self-insert-function): Don't
+       skip whitespace when `electric-pair-text-pairs' and
+       `electric-pair-pairs' were used. syntax to
+       electric-pair--skip-whitespace. (Bug#17183)
+
 2014-04-06  Eli Zaretskii  <address@hidden>
 
        * leim/quail/ipa.el (ipa-x-sampa): Fix the character produced for

=== modified file 'lisp/elec-pair.el'
--- a/lisp/elec-pair.el 2014-02-23 00:19:11 +0000
+++ b/lisp/elec-pair.el 2014-04-06 23:09:19 +0000
@@ -485,10 +485,12 @@
                            (funcall electric-pair-skip-self last-command-event)
                          electric-pair-skip-self))
                    (save-excursion
-                     (when (setq skip-whitespace-info
-                                 (if (functionp electric-pair-skip-whitespace)
-                                     (funcall electric-pair-skip-whitespace)
-                                   electric-pair-skip-whitespace))
+                     (when (and (not (and unconditional
+                                          (eq syntax ?\")))
+                                (setq skip-whitespace-info
+                                      (if (functionp 
electric-pair-skip-whitespace)
+                                          (funcall 
electric-pair-skip-whitespace)
+                                        electric-pair-skip-whitespace)))
                        (electric-pair--skip-whitespace))
                      (eq (char-after) last-command-event))))
          ;; This is too late: rather than insert&delete we'd want to only

=== modified file 'test/ChangeLog'
--- a/test/ChangeLog    2014-03-25 07:34:30 +0000
+++ b/test/ChangeLog    2014-04-06 23:09:19 +0000
@@ -1,3 +1,11 @@
+2014-04-06  João Távora  <address@hidden>
+
+       * automated/electric-tests.el (electric-pair-define-test-form):
+       More readable test docstrings.
+       (whitespace-skipping-for-quotes-not-ouside)
+       (whitespace-skipping-for-quotes-only-inside)
+       (whitespace-skipping-for-quotes-in-text-mode): New tests.
+
 2014-03-24  Barry O'Reilly  <address@hidden>
 
        * automated/undo-tests.el (undo-test-marker-adjustment-nominal):

=== modified file 'test/automated/electric-tests.el'
--- a/test/automated/electric-tests.el  2014-01-01 07:43:34 +0000
+++ b/test/automated/electric-tests.el  2014-04-06 23:09:19 +0000
@@ -114,8 +114,8 @@
                                      mode
                                      extra-desc))
            ()
-         ,(format "With \"%s\", try input %c at point %d. \
-Should %s \"%s\" and point at %d"
+         ,(format "With |%s|, try input %c at point %d. \
+Should %s |%s| and point at %d"
                   fixture
                   char
                   (1+ pos)
@@ -341,6 +341,31 @@
   :test-in-code nil
   :test-in-comments t)
 
+(define-electric-pair-test whitespace-skipping-for-quotes-not-ouside
+  "  \"  \"" "\"-----" :expected-string "\"\"  \"  \""
+  :expected-point 2
+  :bindings '((electric-pair-skip-whitespace . chomp))
+  :test-in-strings nil
+  :test-in-code t
+  :test-in-comments nil)
+
+(define-electric-pair-test whitespace-skipping-for-quotes-only-inside
+  "  \"  \"" "---\"--" :expected-string "  \"\""
+  :expected-point 5
+  :bindings '((electric-pair-skip-whitespace . chomp))
+  :test-in-strings nil
+  :test-in-code t
+  :test-in-comments nil)
+
+(define-electric-pair-test whitespace-skipping-quotes-not-without-proper-syntax
+  "  \"  \"" "---\"--" :expected-string "  \"\"\"  \""
+  :expected-point 5
+  :modes '(text-mode)
+  :bindings '((electric-pair-skip-whitespace . chomp))
+  :test-in-strings nil
+  :test-in-code t
+  :test-in-comments nil)
+
 
 ;;; Pairing arbitrary characters
 ;;;


reply via email to

[Prev in Thread] Current Thread [Next in Thread]