emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] master 3a12f2e 01/10: Merge from origin/emacs-24


From: Fabián Ezequiel Gallina
Subject: [Emacs-diffs] master 3a12f2e 01/10: Merge from origin/emacs-24
Date: Sat, 27 Dec 2014 18:50:37 +0000

branch: master
commit 3a12f2ed99734eff668f83f630c7108000e0b399
Merge: 6d14e0d 2616307
Author: Fabián Ezequiel Gallina <address@hidden>
Commit: Fabián Ezequiel Gallina <address@hidden>

    Merge from origin/emacs-24
    
    2616307 * net/tramp-sh.el (tramp-send-command-and-read): New optional arg 
MARKER. (tramp-get-remote-path): Use it.
    c773edc * net/tramp-gw.el (tramp-gw-open-connection): Suppress traces in 
wrong debug buffer. (tramp-gw-open-connection): Set process coding system 
'binary. (tramp-gw-open-network-stream): Handle HTTP error 403.
    8032fc1 * .gitignore: Ignore /conftest*.
    fb420e7 * lisp/subr.el (sit-for): Tweak docstring.
    061db13 Fix vc-git-dir-status-files WRT up-to-date vs edited
    bb57c94 Consider electric-pair-mode in tex-mode.
    7b94572 * test/automated/flymake/warnpred/test.pl: Tweak earlier change.
    59c218f ChangeLog fix
    db2a768 * test/automated/flymake/warnpred/test.pl: Tweak format
    d9005dd src/gnutls.c (gnutls_init): Fix deprecation warning from GCC.
    
    Conflicts:
        ChangeLog
        lisp/ChangeLog
        src/ChangeLog
        test/ChangeLog
---
 .gitignore                          |    1 +
 ChangeLog                           |   13 ++++++++-
 build-aux/git-hooks/commit-msg      |    4 +-
 lisp/ChangeLog                      |   36 +++++++++++++++++++++++++
 lisp/net/tramp-gw.el                |    9 +++++-
 lisp/net/tramp-sh.el                |   45 +++++++++++++++++++------------
 lisp/net/tramp.el                   |   16 +++++++----
 lisp/subr.el                        |    4 +-
 lisp/textmodes/tex-mode.el          |   50 ++++++++++++++++++++++++++++-------
 lisp/vc/vc-git.el                   |    7 ++---
 src/ChangeLog                       |   12 ++++++++
 src/buffer.c                        |    4 +-
 src/gnutls.c                        |    2 +-
 test/ChangeLog                      |   11 +++++++
 test/automated/data/flymake/test.pl |    2 +-
 test/automated/electric-tests.el    |   11 +++++++-
 16 files changed, 178 insertions(+), 49 deletions(-)

diff --git a/.gitignore b/.gitignore
index d05352e..97adfb95 100644
--- a/.gitignore
+++ b/.gitignore
@@ -48,6 +48,7 @@ makefile
 /confdefs.h
 /config.status
 /configure.lineno
+/conftest*
 src/config.h
 src/epaths.h
 
diff --git a/ChangeLog b/ChangeLog
index 90d7c0b..dd0875e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2014-12-27  Paul Eggert  <address@hidden>
+
+       * .gitignore: Ignore /conftest*.
+
+2014-12-27  Stefan Monnier  <address@hidden>
+
+       * build-aux/git-hooks/commit-msg (at_sign): Bump up line-length limit
+       to 78.
+
+2014-12-27  Paul Eggert  <address@hidden>
 2014-12-25  Paul Eggert  <address@hidden>
 
        Prefer stpcpy to strcat
@@ -308,7 +318,8 @@
 
 2014-11-11  Eric S. Raymond  <address@hidden>
 
-       * Makefile.in: git transition - set VCWITNESS appropriately for git.
+       Git transition.
+       * Makefile.in (src): Set VCSWITNESS appropriately for git.
 
        All bzr revision IDS, and all CVS revision IDs for which a commit
        could be identified, were changed to time-date!committer version
diff --git a/build-aux/git-hooks/commit-msg b/build-aux/git-hooks/commit-msg
index 5eb994c..2e3e4f2 100755
--- a/build-aux/git-hooks/commit-msg
+++ b/build-aux/git-hooks/commit-msg
@@ -87,8 +87,8 @@ exec $awk '
     status = 1
   }
 
-  72 < length && $0 ~ space {
-    print "Line longer than 72 characters in commit message"
+  78 < length && $0 ~ space {
+    print "Line longer than 78 characters in commit message"
     status = 1
   }
 
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 5829ec2..a13cd14 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,39 @@
+2014-12-27  Michael Albinus  <address@hidden>
+
+       * net/tramp-sh.el (tramp-send-command-and-read): New optional
+       arg MARKER.
+       (tramp-get-remote-path): Use it.
+
+2014-12-27  Michael Albinus  <address@hidden>
+
+       * net/tramp.el (tramp-error-with-buffer): Call `message' properly.
+       (tramp-accept-process-output): Use nil as argument for
+       `accept-process-output', when there is a gateway prepended.
+
+       * net/tramp-gw.el (tramp-gw-open-connection): Suppress traces in
+       wrong debug buffer.
+       (tramp-gw-open-connection): Set process coding system 'binary.
+       (tramp-gw-open-network-stream): Handle HTTP error 403.
+
+       * net/tramp-sh.el (tramp-compute-multi-hops): Suppress traces in
+       wrong debug buffer.
+       (tramp-maybe-open-connection): Set connection property "gateway".
+
+2014-12-27  Stefan Monnier  <address@hidden>
+
+       * subr.el (sit-for): Tweak docstring (bug#19381).
+
+2014-12-27  Dmitry Gutov  <address@hidden>
+
+       * vc/vc-git.el (vc-git-after-dir-status-stage): Move `up-to-date'
+       stage to after `diff-index' (bug#19386).
+
+2014-12-27  João Távora  <address@hidden>
+
+       * textmodes/tex-mode.el (tex-insert-quote): Consider and respect
+       `electric-pair-mode' (bug#19356).
+
+2014-12-27  Michael Albinus  <address@hidden>
 2014-12-27  Dmitry Gutov  <address@hidden>
 
        elisp-xref-find: Don't create buffers eagerly.
diff --git a/lisp/net/tramp-gw.el b/lisp/net/tramp-gw.el
index 0decd88..e21aaf7 100644
--- a/lisp/net/tramp-gw.el
+++ b/lisp/net/tramp-gw.el
@@ -195,11 +195,12 @@ instead of the host name declared in TARGET-VEC."
     (setq tramp-gw-gw-proc
          (funcall
           socks-function
-          (tramp-get-connection-name gw-vec)
-          (tramp-get-connection-buffer gw-vec)
+          (let ((tramp-verbose 0)) (tramp-get-connection-name gw-vec))
+          (let ((tramp-verbose 0)) (tramp-get-connection-buffer gw-vec))
           (tramp-file-name-real-host target-vec)
           (tramp-file-name-port target-vec)))
     (set-process-sentinel tramp-gw-gw-proc 'tramp-gw-gw-proc-sentinel)
+    (set-process-coding-system tramp-gw-gw-proc 'binary 'binary)
     (tramp-compat-set-process-query-on-exit-flag tramp-gw-gw-proc nil)
     (tramp-message
      vec 4 "Opened %s process `%s'"
@@ -260,6 +261,10 @@ authentication is requested from proxy server, provide it."
          (200 (setq found t))
          ;; We need basic authentication.
          (401 (setq authentication (tramp-gw-basic-authentication nil first)))
+         ;; Access forbidden.
+         (403 (tramp-error-with-buffer
+               (current-buffer) tramp-gw-vector 'file-error
+               "Connection to %s:%d forbidden." host service))
          ;; Target host not found.
          (404 (tramp-error-with-buffer
                (current-buffer) tramp-gw-vector 'file-error
diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
index ba7b7d9..2e2e2ac 100644
--- a/lisp/net/tramp-sh.el
+++ b/lisp/net/tramp-sh.el
@@ -2883,7 +2883,7 @@ the result will be a local, non-Tramp, file name."
           (name1 name)
           (i 0)
           ;; We do not want to raise an error when
-          ;; `start-file-process' has been started several time in
+          ;; `start-file-process' has been started several times in
           ;; `eshell' and friends.
           (tramp-current-connection nil))
 
@@ -4510,7 +4510,8 @@ Gateway hops are already opened."
        ;; Therefore, we must remember the gateway vector.  But we
        ;; cannot do it as connection property, because it shouldn't
        ;; be persistent.  And we have no started process yet either.
-       (tramp-set-file-property (car target-alist) "" "gateway" hop)))
+       (let ((tramp-verbose 0))
+         (tramp-set-file-property (car target-alist) "" "gateway" hop))))
 
     ;; Foreign and out-of-band methods are not supported for multi-hops.
     (when (cdr target-alist)
@@ -4687,7 +4688,8 @@ connection if a previous connection has died for some 
reason."
                           l-method 'tramp-connection-timeout))
                         (gw-args
                          (tramp-get-method-parameter l-method 'tramp-gw-args))
-                        (gw (tramp-get-file-property hop "" "gateway" nil))
+                        (gw (let ((tramp-verbose 0))
+                              (tramp-get-file-property hop "" "gateway" nil)))
                         (g-method (and gw (tramp-file-name-method gw)))
                         (g-user (and gw (tramp-file-name-user gw)))
                         (g-host (and gw (tramp-file-name-real-host gw)))
@@ -4715,8 +4717,10 @@ connection if a previous connection has died for some 
reason."
                      (setq login-args (append async-args login-args)))
 
                    ;; Add gateway arguments if necessary.
-                   (when (and gw gw-args)
-                     (setq login-args (append gw-args login-args)))
+                   (when gw
+                     (tramp-set-connection-property p "gateway" t)
+                     (when gw-args
+                       (setq login-args (append gw-args login-args))))
 
                    ;; Check for port number.  Until now, there's no
                    ;; need for handling like method, user, host.
@@ -4902,8 +4906,9 @@ FMT and ARGS which are passed to `error'."
   (or (tramp-send-command-and-check vec command)
       (apply 'tramp-error vec 'file-error fmt args)))
 
-(defun tramp-send-command-and-read (vec command &optional noerror)
+(defun tramp-send-command-and-read (vec command &optional noerror marker)
   "Run COMMAND and return the output, which must be a Lisp expression.
+If MARKER is a regexp, read the output after that string.
 In case there is no valid Lisp expression and NOERROR is nil, it
 raises an error."
   (when (if noerror
@@ -4911,8 +4916,17 @@ raises an error."
          (tramp-barf-unless-okay
           vec command "`%s' returns with error" command))
     (with-current-buffer (tramp-get-connection-buffer vec)
-      ;; Read the expression.
       (goto-char (point-min))
+      ;; Read the marker.
+      (when (stringp marker)
+       (condition-case nil
+           (re-search-forward marker)
+         (error (unless noerror
+                  (tramp-error
+                   vec 'file-error
+                   "`%s' does not return the marker `%s': `%s'"
+                   command marker (buffer-string))))))
+      ;; Read the expression.
       (condition-case nil
          (prog1 (read (current-buffer))
            ;; Error handling.
@@ -5064,25 +5078,22 @@ Return ATTR."
                   "/bin:/usr/bin")
                  "/bin:/usr/bin"))))
           (own-remote-path
-           ;; We cannot apply `tramp-send-command-and-read' because
-           ;; the login shell could return more than just the $PATH
-           ;; string.  So we emulate that function.
+           ;; The login shell could return more than just the $PATH
+           ;; string.  So we use `tramp-end-of-heredoc' as marker.
            (when elt2
-             (tramp-send-command
+             (tramp-send-command-and-read
               vec
               (format
-               "%s -l %s 'echo \\\"$PATH\\\"'"
+               "%s -l %s 'echo %s \\\"$PATH\\\"'"
                (tramp-get-method-parameter
                 (tramp-file-name-method vec) 'tramp-remote-shell)
                (mapconcat
                 'identity
                 (tramp-get-method-parameter
                  (tramp-file-name-method vec) 'tramp-remote-shell-args)
-                " ")))
-             (with-current-buffer (tramp-get-connection-buffer vec)
-               (goto-char (point-max))
-               (forward-line -1)
-               (read (current-buffer))))))
+                " ")
+               (tramp-shell-quote-argument tramp-end-of-heredoc))
+              nil (regexp-quote tramp-end-of-heredoc)))))
 
       ;; Replace place holder `tramp-default-remote-path'.
       (when elt1
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index 2cf9d45..7aba749 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -1610,7 +1610,7 @@ an input event arrives.  The other arguments are passed 
to `tramp-error'."
          (let ((enable-recursive-minibuffers t))
            ;; `tramp-error' does not show messages.  So we must do it
            ;; ourselves.
-           (message fmt-string arguments)
+           (apply 'message fmt-string arguments)
            ;; Show buffer.
            (pop-to-buffer buf)
            (discard-input)
@@ -3609,15 +3609,19 @@ connection buffer."
 This is needed in order to hide `last-coding-system-used', which is set
 for process communication also."
   (with-current-buffer (process-buffer proc)
-    (tramp-message proc 10 "%s %s" proc (process-status proc))
-    (let (buffer-read-only last-coding-system-used)
+    ;; FIXME: If there is a gateway process, we need communication
+    ;; between several processes.  Too complicate to implement, so we
+    ;; read output from all proceeses.
+    (let ((p (if (tramp-get-connection-property proc "gateway" nil) nil proc))
+         buffer-read-only last-coding-system-used)
       ;; Under Windows XP, accept-process-output doesn't return
       ;; sometimes.  So we add an additional timeout.
       (with-timeout ((or timeout 1))
        (if (featurep 'xemacs)
-           (accept-process-output proc timeout timeout-msecs)
-         (accept-process-output proc timeout timeout-msecs (and proc t)))))
-    (tramp-message proc 10 "\n%s" (buffer-string))))
+           (accept-process-output p timeout timeout-msecs)
+         (accept-process-output p timeout timeout-msecs (and proc t))))
+      (tramp-message proc 10 "%s %s %s\n%s"
+                    proc (process-status proc) p (buffer-string)))))
 
 (defun tramp-check-for-regexp (proc regexp)
   "Check, whether REGEXP is contained in process buffer of PROC.
diff --git a/lisp/subr.el b/lisp/subr.el
index 6ce02b7..53ad272 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -2166,7 +2166,7 @@ keyboard-quit events while waiting for a valid input."
     char))
 
 (defun sit-for (seconds &optional nodisp obsolete)
-  "Perform redisplay, then wait for SECONDS seconds or until input is 
available.
+  "Redisplay, then wait for SECONDS seconds.  Stop when input is available.
 SECONDS may be a floating-point value.
 \(On operating systems that do not support waiting for fractions of a
 second, floating-point values are rounded down to the nearest integer.)
@@ -2184,7 +2184,7 @@ floating point support."
   (declare (advertised-calling-convention (seconds &optional nodisp) "22.1"))
   ;; This used to be implemented in C until the following discussion:
   ;; http://lists.gnu.org/archive/html/emacs-devel/2006-07/msg00401.html
-  ;; Then it was moved to C using an implementation based on an idle timer,
+  ;; Then it was moved here using an implementation based on an idle timer,
   ;; which was then replaced by the use of read-event.
   (if (numberp nodisp)
       (setq seconds (+ seconds (* 1e-3 nodisp))
diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el
index 1993ff1..d54c78b 100644
--- a/lisp/textmodes/tex-mode.el
+++ b/lisp/textmodes/tex-mode.el
@@ -1300,18 +1300,48 @@ Inserts the value of `tex-open-quote' (normally ``) or 
`tex-close-quote'
 \(normally '') depending on the context.  With prefix argument, always
 inserts \" characters."
   (interactive "*P")
+  ;; Discover if we'll be inserting normal double quotes.
+  ;;
   (if (or arg (memq (char-syntax (preceding-char)) '(?/ ?\\))
-         (eq (get-text-property (point) 'face) 'tex-verbatim)
-         (save-excursion
-           (backward-char (length tex-open-quote))
-           (when (or (looking-at (regexp-quote tex-open-quote))
-                     (looking-at (regexp-quote tex-close-quote)))
-             (delete-char (length tex-open-quote))
-             t)))
+          (eq (get-text-property (point) 'face) 'tex-verbatim)
+          ;; Discover if a preceding occurance of `tex-open-quote'
+          ;; should be morphed to a normal double quote.
+          ;;
+          (and (>= (point) (+ (point-min) (length tex-open-quote)))
+               (save-excursion
+                 (backward-char (length tex-open-quote))
+                 (when (or (looking-at (regexp-quote tex-open-quote))
+                           (looking-at (regexp-quote tex-close-quote)))
+                   (delete-char (length tex-open-quote))
+                   (when (looking-at (regexp-quote tex-close-quote))
+                     (delete-char (length tex-close-quote)))
+                   t))))
+      ;; Insert the normal quote (eventually letting
+      ;; `electric-pair-mode' do its thing).
+      ;;
       (self-insert-command (prefix-numeric-value arg))
-    (insert (if (or (memq (char-syntax (preceding-char)) '(?\( ?> ?\s))
-                    (memq (preceding-char) '(?~)))
-               tex-open-quote tex-close-quote))))
+    ;; We'll be inserting fancy TeX quotes, but consider and imitate
+    ;; `electric-pair-mode''s two behaviours: pair-insertion and
+    ;; region wrapping.
+    ;;
+    (if (and electric-pair-mode (use-region-p))
+        (let* ((saved (point-marker)))
+          (goto-char (mark))
+          (insert (if (> saved (mark)) tex-open-quote tex-close-quote))
+          (goto-char saved)
+          (insert (if (> saved (mark)) tex-close-quote tex-open-quote)))
+      (if (or (memq (char-syntax (preceding-char)) '(?\( ?> ?\s))
+              (memq (preceding-char) '(?~)))
+          (if electric-pair-mode
+              (if (looking-at (regexp-quote tex-close-quote))
+                  (forward-char (length tex-close-quote))
+                (insert tex-open-quote)
+                (insert tex-close-quote)
+                (backward-char (length tex-close-quote)))
+            (insert tex-open-quote))
+        (if (looking-at (regexp-quote tex-close-quote))
+            (forward-char (length tex-close-quote))
+          (insert tex-close-quote))))))
 
 (defun tex-validate-buffer ()
   "Check current buffer for paragraphs containing mismatched braces or $s.
diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el
index 65f683c..1700bef1 100644
--- a/lisp/vc/vc-git.el
+++ b/lisp/vc/vc-git.el
@@ -371,8 +371,7 @@ or an empty string if none."
     (goto-char (point-min))
     (pcase stage
       (`update-index
-       (setq next-stage (if (vc-git--empty-db-p) 'ls-files-added
-                          (if files 'ls-files-up-to-date 'diff-index))))
+       (setq next-stage (if (vc-git--empty-db-p) 'ls-files-added 'diff-index)))
       (`ls-files-added
        (setq next-stage 'ls-files-unknown)
        (while (re-search-forward "\\([0-7]\\{6\\}\\) [0-9a-f]\\{40\\} 
0\t\\([^\0]+\\)\0" nil t)
@@ -381,7 +380,7 @@ or an empty string if none."
            (push (list name 'added (vc-git-create-extra-fileinfo 0 new-perm))
                  result))))
       (`ls-files-up-to-date
-       (setq next-stage 'diff-index)
+       (setq next-stage 'ls-files-unknown)
        (while (re-search-forward "\\([0-7]\\{6\\}\\) [0-9a-f]\\{40\\} 
0\t\\([^\0]+\\)\0" nil t)
          (let ((perm (string-to-number (match-string 1) 8))
                (name (match-string 2)))
@@ -400,7 +399,7 @@ or an empty string if none."
                      (vc-git-create-extra-fileinfo 0 0))
                result)))
       (`diff-index
-       (setq next-stage 'ls-files-unknown)
+       (setq next-stage (if files 'ls-files-up-to-date 'ls-files-unknown))
        (while (re-search-forward
                ":\\([0-7]\\{6\\}\\) \\([0-7]\\{6\\}\\) [0-9a-f]\\{40\\} 
[0-9a-f]\\{40\\} 
\\(\\([ADMUT]\\)\0\\([^\0]+\\)\\|\\([CR]\\)[0-9]*\0\\([^\0]+\\)\0\\([^\0]+\\)\\)\0"
                nil t 1)
diff --git a/src/ChangeLog b/src/ChangeLog
index e8428ab..8e72ddb 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,13 @@
+2014-12-27  Stefan Monnier  <address@hidden>
+
+       * buffer.c (syms_of_buffer) <Vafter_change_functions>: fix docstring.
+
+2014-12-27  Eli Zaretskii  <address@hidden>
+
+       * gnutls.c (gnutls_init): Fix deprecation warning from GCC.
+
+2014-12-27  Eli Zaretskii  <address@hidden>
+
 2014-12-26  Paul Eggert  <address@hidden>
 
        Use bool for boolean in xselect.c, xsettings.c
@@ -918,6 +928,8 @@
        * fileio.c (Fexpand_file_name): Use make_unibyte_string, not
        build_string, when importing a home directory.  (Bug#18873)
 
+2014-12-27  Eli Zaretskii  <address@hidden>
+
        * dispnew.c (buffer_posn_from_coords):
        Use WINDOW_WANTS_HEADER_LINE_P, not WINDOW_WANTS_MODELINE_P, to
        account for the header-line height.  (Bug#18839)
diff --git a/src/buffer.c b/src/buffer.c
index b57d968..9a5c4a8 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -6066,9 +6066,9 @@ from happening repeatedly and making Emacs nonfunctional. 
 */);
               doc: /* List of functions to call after each text change.
 Three arguments are passed to each function: the positions of
 the beginning and end of the range of changed text,
-and the length in bytes of the pre-change text replaced by that range.
+and the length in chars of the pre-change text replaced by that range.
 \(For an insertion, the pre-change length is zero;
-for a deletion, that length is the number of bytes deleted,
+for a deletion, that length is the number of chars deleted,
 and the post-change beginning and end are at the same place.)
 
 Buffer changes made while executing the `after-change-functions'
diff --git a/src/gnutls.c b/src/gnutls.c
index bf9f132..14205ca 100644
--- a/src/gnutls.c
+++ b/src/gnutls.c
@@ -134,7 +134,7 @@ DEF_GNUTLS_FN (void, gnutls_global_set_mem_functions,
                gnutls_is_secure_function, gnutls_realloc_function,
                gnutls_free_function));
 DEF_GNUTLS_FN (int, gnutls_handshake, (gnutls_session_t));
-DEF_GNUTLS_FN (int, gnutls_init, (gnutls_session_t *, 
gnutls_connection_end_t));
+DEF_GNUTLS_FN (int, gnutls_init, (gnutls_session_t *, unsigned int));
 DEF_GNUTLS_FN (int, gnutls_priority_set_direct,
               (gnutls_session_t, const char *, const char **));
 DEF_GNUTLS_FN (size_t, gnutls_record_check_pending, (gnutls_session_t));
diff --git a/test/ChangeLog b/test/ChangeLog
index fda30d9..4e59ee0 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,3 +1,14 @@
+2014-12-27  João Távora  <address@hidden>
+
+       * automated/electric-tests.el (autowrapping-7): Tests for
+       tex-mode.
+
+2014-12-27  Glenn Morris  <address@hidden>
+
+       * automated/flymake/warnpred/test.pl: Tweak format, since the
+       previous one seems to have stopped giving a warning with perl 5.20.1.
+
+2014-12-27  Fabián Ezequiel Gallina  <address@hidden>
 2014-12-26  Fabián Ezequiel Gallina  <address@hidden>
 
        * automated/python-tests.el (python-shell-get-process-name-1)
diff --git a/test/automated/data/flymake/test.pl 
b/test/automated/data/flymake/test.pl
index 2013b2e..d5abcb4 100644
--- a/test/automated/data/flymake/test.pl
+++ b/test/automated/data/flymake/test.pl
@@ -1,2 +1,2 @@
 @arr = [1,2,3,4];
address@hidden = -1;
+my $b = @arr[1];
diff --git a/test/automated/electric-tests.el b/test/automated/electric-tests.el
index b1908e6..cd07213 100644
--- a/test/automated/electric-tests.el
+++ b/test/automated/electric-tests.el
@@ -60,7 +60,7 @@
         (cl-progv
             (mapcar #'car bindings)
             (mapcar #'cdr bindings)
-          (self-insert-command 1))))
+          (call-interactively (key-binding `[,last-command-event])))))
     (should (equal (buffer-substring-no-properties (point-min) (point-max))
                    expected-string))
     (should (equal (point)
@@ -575,5 +575,14 @@ baz\"\""
                   (skip-chars-backward "\"")
                   (mark-sexp -1)))
 
+(define-electric-pair-test autowrapping-7
+  "foo" "\"" :expected-string "``foo''" :expected-point 8
+  :modes '(tex-mode)
+  :fixture-fn #'(lambda ()
+                  (electric-pair-mode 1)
+                  (goto-char (point-max))
+                  (skip-chars-backward "\"")
+                  (mark-sexp -1)))
+
 (provide 'electric-tests)
 ;;; electric-tests.el ends here



reply via email to

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