emacs-diffs
[Top][All Lists]
Advanced

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

master b56401f: Merge from origin/emacs-27


From: Glenn Morris
Subject: master b56401f: Merge from origin/emacs-27
Date: Wed, 29 Apr 2020 10:55:17 -0400 (EDT)

branch: master
commit b56401f3849cf6d00717ab8a64a221f2c01455a6
Merge: 17eae91 2f9bfae
Author: Glenn Morris <address@hidden>
Commit: Glenn Morris <address@hidden>

    Merge from origin/emacs-27
    
    2f9bfaef21 (origin/emacs-27) ; Fix last change
    520fd3e728 * lisp/env.el (substitute-env-vars): Doc fix.  (Bug#40948)
    85544f8ef5 * lisp/isearch.el: Fix lazy-highlighting and lazy-counting...
    d83cc05a73 Fix error in ERC when 'erc-server-coding-system' is custom...
    16fed05ba8 Avoid crashes on TTY frames with over-long compositions
    0278741676 Fix typo in custom.texi
    9f5ae717fb * test/lisp/simple-tests.el (with-shell-command-dont-erase...
    1f76a16ed3 * lisp/image-mode.el (image-mode-map): Update menu items.
    f0e1bf56f0 Fix bugs in tab-bar and tab-line and mention remaining fea...
    f0b9f18457 Make shell-command tests fit for tcsh.
    68f4a740a1 Remove doc duplication
    ac31cd384c * etc/NEWS: Fix inconsistencies.
    
    # Conflicts:
    #   etc/NEWS
---
 doc/emacs/custom.texi     |  2 +-
 doc/emacs/frames.texi     | 57 ++++++++++++++++++++++++++++++++++++++++++++---
 doc/emacs/windows.texi    | 12 ++++++++--
 doc/lispref/objects.texi  |  3 +--
 etc/NEWS.27               | 16 ++++++-------
 lisp/env.el               |  8 +++----
 lisp/erc/erc-backend.el   |  3 ++-
 lisp/image-mode.el        | 20 +++++++++++------
 lisp/isearch.el           |  7 ++++--
 lisp/tab-bar.el           | 38 ++++++++++++++++++++-----------
 lisp/tab-line.el          |  6 ++++-
 src/term.c                |  2 +-
 test/lisp/simple-tests.el | 11 ++++-----
 13 files changed, 135 insertions(+), 50 deletions(-)

diff --git a/doc/emacs/custom.texi b/doc/emacs/custom.texi
index e7e8790..406f0c9 100644
--- a/doc/emacs/custom.texi
+++ b/doc/emacs/custom.texi
@@ -755,7 +755,7 @@ non-@code{nil} value).  If you set a variable using the 
customization
 buffer, you need not worry about giving it an invalid type: the
 customization buffer usually only allows you to enter meaningful
 values.  When in doubt, use @kbd{C-h v} (@code{describe-variable}) to
-check the variable's documentation string to see kind of value it
+check the variable's documentation string to see what kind of value it
 expects (@pxref{Examining}).
 
 @menu
diff --git a/doc/emacs/frames.texi b/doc/emacs/frames.texi
index d9373b8..8f448e1 100644
--- a/doc/emacs/frames.texi
+++ b/doc/emacs/frames.texi
@@ -1266,7 +1266,7 @@ Note that the Tab Bar is different from the Tab Line 
(@pxref{Tab Line}).
 Whereas tabs on the Tab Line at the top of each window are used to
 switch between buffers, tabs on the Tab Bar at the top of each frame
 are used to switch between window configurations containing several
-windows.
+windows with buffers.
 
 @findex tab-bar-mode
   To toggle the use of tab bars, type @kbd{M-x tab-bar-mode}.  This
@@ -1324,6 +1324,10 @@ current before calling the command that adds a new tab.
 To start a new tab with other buffers, customize the variable
 @code{tab-bar-new-tab-choice}.
 
+@vindex tab-bar-new-tab-to
+  The variable @code{tab-bar-new-tab-to} defines where to place a new tab.
+By default, a new tab is added on the right side of the current tab.
+
   The following commands can be used to delete tabs:
 
 @table @kbd
@@ -1331,7 +1335,8 @@ To start a new tab with other buffers, customize the 
variable
 @kindex C-x t 0
 @findex tab-close
 Close the selected tab (@code{tab-close}).  It has no effect if there
-is only one tab.
+is only one tab, unless the variable @code{tab-bar-close-last-tab-choice}
+is customized to a non-default value.
 
 @item C-x t 1
 @kindex C-x t 1
@@ -1339,6 +1344,14 @@ is only one tab.
 Close all tabs on the selected frame, except the selected one.
 @end table
 
+@vindex tab-bar-close-tab-select
+  The variable @code{tab-bar-close-tab-select} defines what tab to
+select after closing the current tab.  By default, it selects
+a recently used tab.
+
+@findex tab-undo
+  The command @code{tab-undo} restores the last closed tab.
+
   The following commands can be used to switch between tabs:
 
 @table @kbd
@@ -1358,22 +1371,60 @@ switches back to the previous Nth tab.
 Switch to the previous tab.  With a positive numeric argument N, it
 switches to the previous Nth tab; with a negative argument −N, it
 switches back to the next Nth tab.
+
+@item C-x t @key{RET} @var{tabname} @key{RET}
+Switch to the tab by its name, with completion on all tab names.
+Default values are tab names sorted by recency, so you can use
+@kbd{M-n} (@code{next-history-element}) to get the name of the last
+visited tab, the second last, and so on.
+
+@item @var{modifier}-@var{tabnumber}
+@findex tab-select
+Switch to the tab by its number.  After customizing the variable
+@code{tab-bar-select-tab-modifiers} to specify a @var{modifier} key, you
+can select a tab by its ordinal number using the specified modifier in
+combination with the tab number to select.  To display the tab number
+alongside the tab name, you can customize another variable
+@code{tab-bar-tab-hints}.  This will help you to decide what key to press
+to select the tab by its number.
+
+@item @var{modifier}-@kbd{0}
+@findex tab-recent
+Switch to the recent tab.  The key combination is the modifier key
+defined by @code{tab-bar-select-tab-modifiers} and the key @kbd{0}.
+With a numeric argument N, switch to the Nth recent tab.
 @end table
 
   The following commands can be used to operate on tabs:
 
 @table @kbd
 @item C-x t r @var{tabname} @key{RET}
+@findex tab-rename
 Rename the current tab to @var{tabname}.  You can control the
 programmatic name given to a tab by default by customizing the
 variable @code{tab-bar-tab-name-function}.
 
 @item C-x t m
+@findex tab-move
 Move the current tab N positions to the right with a positive numeric
-argument N.  With a negative argument −N, it moves the current tab
+argument N.  With a negative argument −N, move the current tab
 N positions to the left.
 @end table
 
+@findex tab-bar-history-mode
+  You can enable @code{tab-bar-history-mode} to remember window
+configurations used in every tab, and restore them.
+
+@table @kbd
+@item tab-bar-history-back
+Restore a previous window configuration used in the current tab.
+This navigates back in the history of window configurations.
+
+@item tab-bar-history-forward
+Cancel restoration of the previous window configuration.
+This navigates forward in the history of window configurations.
+@end table
+
 @node Dialog Boxes
 @section Using Dialog Boxes
 @cindex dialog boxes
diff --git a/doc/emacs/windows.texi b/doc/emacs/windows.texi
index cb5e9bc..4c67660 100644
--- a/doc/emacs/windows.texi
+++ b/doc/emacs/windows.texi
@@ -628,8 +628,16 @@ Selecting the previous window-local tab is the same as 
typing @kbd{C-x
 same as @kbd{C-x @key{RIGHT}} (@code{next-buffer}).  Both commands
 support a numeric prefix argument as a repeat count.
 
+You can customize the variable @code{tab-line-tabs-function} to define
+the preferred contents of the tab line.  By default, it displays all
+buffers previously visited in the window, as described above.  But you
+can also set it to display a list of buffers with the same major mode
+as the current buffer, or to display buffers grouped by their major
+mode, where clicking on the mode name in the first tab displays a list
+of all major modes where you can select another group of buffers.
+
 Note that the Tab Line is different from the Tab Bar (@pxref{Tab Bars}).
 Whereas tabs on the Tab Bar at the top of each frame are used to
-switch between window configurations containing several windows,
+switch between window configurations containing several windows with buffers,
 tabs on the Tab Line at the top of each window are used to switch
-between buffers.
+between buffers in the window.
diff --git a/doc/lispref/objects.texi b/doc/lispref/objects.texi
index d35a9ac..cd037d6 100644
--- a/doc/lispref/objects.texi
+++ b/doc/lispref/objects.texi
@@ -2406,8 +2406,7 @@ call @code{(make-string 3 ?a)} yields a mutable string 
that can be
 changed via later calls to @code{aset}.
 
   A mutable object can become constant if it is part of an expression
-that is evaluated, because a program should not modify an object
-that is being evaluated.  The reverse does not occur: constant objects
+that is evaluated.  The reverse does not occur: constant objects
 should stay constant.
 
   Trying to modify a constant variable signals an error
diff --git a/etc/NEWS.27 b/etc/NEWS.27
index 1eb391f..42133b8 100644
--- a/etc/NEWS.27
+++ b/etc/NEWS.27
@@ -28,7 +28,7 @@ applies, and please also update docstrings as needed.
 ** Emacs now uses GMP, the GNU Multiple Precision library.
 By default, if 'configure' does not find a suitable libgmp, it
 arranges for the included mini-gmp library to be built and used.
-The new 'configure' option '--without-libgmp' uses mini-gmp even if a
+The new configure option '--without-libgmp' uses mini-gmp even if a
 suitable libgmp is available.
 
 ---
@@ -132,7 +132,7 @@ can enable it when configuring, e.g., './configure 
CFLAGS="-g3 -O2
 ** Emacs now normally uses a C pointer type instead of a C integer
 type to implement Lisp_Object, which is the fundamental machine word
 type internal to the Emacs Lisp interpreter.  This change aims to
-catch typos and supports '-fcheck-pointer-bounds'.  The 'configure'
+catch typos and supports '-fcheck-pointer-bounds'.  The configure
 option '--enable-check-lisp-object-type' is therefore no longer as
 useful and so is no longer enabled by default in developer builds,
 to reduce differences between developer and production builds.
@@ -868,7 +868,7 @@ to allow controlling how the conversion to text is done.
 
 +++
 *** The prefix key 's' was changed to 'c' for slicing commands
-to avoid conflicts with image-mode key 's'.  The new key 'c' still
+to avoid conflicts with 'image-mode' key 's'.  The new key 'c' still
 has good mnemonics of "cut", "clip", "crop".
 
 ** Ido
@@ -2090,11 +2090,11 @@ variable for remote shells.  It still defaults to 
"/bin/sh".
 
 +++
 *** New values of 'shell-command-dont-erase-buffer'.
-This option can now have the value 'erase' to force to erase the
+This user option can now have the value 'erase' to force to erase the
 output buffer before execution of the command, even if the output goes
 to the current buffer.  Additional values 'beg-last-out',
 'end-last-out', and 'save-point' control where to put point in the
-output buffer after inserting the shell-command output.
+output buffer after inserting the 'shell-command' output.
 
 ---
 *** The new functions 'shell-command-save-pos-or-erase' and
@@ -3538,9 +3538,9 @@ With a prefix argument, 'image-rotate' now rotates the 
image at point
 By default, the image will resize upon first display and whenever the
 window's dimensions change.  Two user options 'image-auto-resize' and
 'image-auto-resize-on-window-resize' control the resizing behavior
-(including the possibility to disable auto-resizing).  A new key
-prefix 's' contains the commands that can be used to fit the image to
-the window manually.
+(including the possibility to disable auto-resizing).  A new prefix
+key 's' contains the commands that can be used to fit the image to the
+window manually.
 
 ---
 *** Some 'image-mode' variables are now buffer-local.
diff --git a/lisp/env.el b/lisp/env.el
index ca2a977..6de9038 100644
--- a/lisp/env.el
+++ b/lisp/env.el
@@ -68,10 +68,10 @@ with a character not a letter, digit or underscore; 
otherwise, enclose
 the entire variable name in braces.  For instance, in `ab$cd-x',
 `$cd' is treated as an environment variable.
 
-If WHEN-DEFINED is nil, references to undefined environment variables
-are replaced by the empty string; if it is a function, the function is called
-with the variable name as argument and should return the text with which
-to replace it or nil to leave it unchanged.
+If WHEN-UNDEFINED is omitted or nil, references to undefined environment
+variables are replaced by the empty string; if it is a function, the
+function is called with the variable's name as argument, and should return
+the text with which to replace it, or nil to leave it unchanged.
 If it is non-nil and not a function, references to undefined variables are
 left unchanged.
 
diff --git a/lisp/erc/erc-backend.el b/lisp/erc/erc-backend.el
index 57c8e73..1e2526f 100644
--- a/lisp/erc/erc-backend.el
+++ b/lisp/erc/erc-backend.el
@@ -466,7 +466,8 @@ If this is set to nil, never try to reconnect."
 The length is specified in `erc-split-line-length'.
 
 Currently this is called by `erc-send-input'."
-  (let ((charset (car (erc-coding-system-for-target nil))))
+  (let* ((coding (erc-coding-system-for-target nil))
+         (charset (if (consp coding) (car coding) coding)))
     (with-temp-buffer
       (insert longline)
       ;; The line lengths are in octets, not characters (because these
diff --git a/lisp/image-mode.el b/lisp/image-mode.el
index 3ee185a..480b2e6 100644
--- a/lisp/image-mode.el
+++ b/lisp/image-mode.el
@@ -505,16 +505,22 @@ call."
        "--"
        ["Fit Frame to Image" image-mode-fit-frame :active t
         :help "Resize frame to match image"]
+       ["Fit Image to Window (Best Fit)" image-transform-fit-both
+        :help "Resize image to match the window height and width"]
        ["Fit to Window Height" image-transform-fit-to-height
         :help "Resize image to match the window height"]
        ["Fit to Window Width" image-transform-fit-to-width
         :help "Resize image to match the window width"]
-       ["Fit to Window Height and Width" image-transform-fit-both
-        :help "Resize image to match the window height and width"]
+       ["Zoom In" image-increase-size
+        :help "Enlarge the image"]
+       ["Zoom Out" image-decrease-size
+        :help "Shrink the image"]
        ["Set Scale..." image-transform-set-scale
         :help "Resize image by specified scale factor"]
-       ["Rotate Image..." image-transform-set-rotation
+       ["Rotate Clockwise" image-rotate
         :help "Rotate the image"]
+       ["Set Rotation..." image-transform-set-rotation
+        :help "Set rotation angle of the image"]
        ["Reset Transformations" image-transform-reset
         :help "Reset all image transformations"]
        "--"
@@ -524,10 +530,10 @@ call."
           (image-dired default-directory))
         :active default-directory
         :help "Show thumbnails for all images in this directory"]
-       ["Next Image" image-next-file :active buffer-file-name
-         :help "Move to next image in this directory"]
        ["Previous Image" image-previous-file :active buffer-file-name
          :help "Move to previous image in this directory"]
+       ["Next Image" image-next-file :active buffer-file-name
+         :help "Move to next image in this directory"]
        ["Copy File Name" image-mode-copy-file-name-as-kill
          :active buffer-file-name
          :help "Copy the current file name to the kill ring"]
@@ -565,10 +571,10 @@ call."
        ["Reset Animation Speed" image-reset-speed
         :active image-multi-frame
         :help "Reset the speed of this image's animation"]
-       ["Next Frame" image-next-frame :active image-multi-frame
-        :help "Show the next frame of this image"]
        ["Previous Frame" image-previous-frame :active image-multi-frame
         :help "Show the previous frame of this image"]
+       ["Next Frame" image-next-frame :active image-multi-frame
+        :help "Show the next frame of this image"]
        ["Goto Frame..." image-goto-frame :active image-multi-frame
         :help "Show a specific frame of this image"]
        ))
diff --git a/lisp/isearch.el b/lisp/isearch.el
index e13a4dd..81e83d7 100644
--- a/lisp/isearch.el
+++ b/lisp/isearch.el
@@ -319,7 +319,7 @@ this variable is set to the symbol `all-windows'."
   "Show match numbers in the search prompt.
 When both this option and `isearch-lazy-highlight' are non-nil,
 show the current match number and the total number of matches
-in the buffer (or its restriction)."
+in the buffer (or its restriction), including all hidden matches."
   :type 'boolean
   :group 'lazy-count
   :group 'isearch
@@ -3869,7 +3869,10 @@ Attempt to do the search exactly the way the pending 
Isearch would."
            (isearch-regexp-lax-whitespace
             isearch-lazy-highlight-regexp-lax-whitespace)
            (isearch-forward isearch-lazy-highlight-forward)
-           (search-invisible nil)      ; don't match invisible text
+           ;; Don't match invisible text unless it can be opened
+           ;; or when counting matches and user can visit hidden matches
+           (search-invisible (or (eq search-invisible 'open)
+                                 (and isearch-lazy-count search-invisible)))
            (retry t)
            (success nil))
        ;; Use a loop like in `isearch-search'.
diff --git a/lisp/tab-bar.el b/lisp/tab-bar.el
index 30ed1a4..ce6d8c3 100644
--- a/lisp/tab-bar.el
+++ b/lisp/tab-bar.el
@@ -87,10 +87,11 @@
 
 
 (defcustom tab-bar-select-tab-modifiers '()
-  "List of key modifiers for selecting a tab by its index digit.
-Possible modifiers are `control', `meta', `shift', `hyper', `super' and
-`alt'."
-  :type '(set :tag "Tab selection key modifiers"
+  "List of modifier keys for selecting a tab by its index digit.
+Possible modifier keys are `control', `meta', `shift', `hyper', `super' and
+`alt'.  To help you to select a tab by its number, you can customize
+`tab-bar-tab-hints' that will show tab numbers alongside the tab name."
+  :type '(set :tag "Tab selection modifier keys"
               (const control)
               (const meta)
               (const shift)
@@ -310,7 +311,8 @@ If nil, don't show it at all."
 
 (defcustom tab-bar-tab-hints nil
   "Show absolute numbers on tabs in the tab bar before the tab name.
-This helps to select the tab by its number using `tab-bar-select-tab'."
+This helps to select the tab by its number using `tab-bar-select-tab'
+and `tab-bar-select-tab-modifiers'."
   :type 'boolean
   :initialize 'custom-initialize-default
   :set (lambda (sym val)
@@ -563,9 +565,10 @@ Return its existing value or a new value."
 
 (defun tab-bar-select-tab (&optional arg)
   "Switch to the tab by its absolute position ARG in the tab bar.
-When this command is bound to a numeric key (with a prefix or modifier),
-calling it without an argument will translate its bound numeric key
-to the numeric argument.  ARG counts from 1."
+When this command is bound to a numeric key (with a prefix or modifier key
+using `tab-bar-select-tab-modifiers'), calling it without an argument
+will translate its bound numeric key to the numeric argument.
+ARG counts from 1."
   (interactive "P")
   (unless (integerp arg)
     (let ((key (event-basic-type last-command-event)))
@@ -664,7 +667,10 @@ to the numeric argument.  ARG counts from 1."
       (message "No more recent tabs"))))
 
 (defun tab-bar-switch-to-tab (name)
-  "Switch to the tab by NAME."
+  "Switch to the tab by NAME.
+Default values are tab names sorted by recency, so you can use \
+\\<minibuffer-local-map>\\[next-history-element]
+to get the name of the last visited tab, the second last, and so on."
   (interactive
    (let* ((recent-tabs (mapcar (lambda (tab)
                                  (alist-get 'name tab))
@@ -789,7 +795,7 @@ After the tab is created, the hooks in
                         (pcase tab-bar-new-tab-to
                           ('leftmost 0)
                           ('rightmost (length tabs))
-                          ('left (1- (or from-index 1)))
+                          ('left (or from-index 1))
                           ('right (1+ (or from-index 0)))
                           ((pred functionp)
                            (funcall tab-bar-new-tab-to))))))
@@ -920,7 +926,7 @@ for the last tab on a frame is determined by
           ;; Select another tab before deleting the current tab
           (let ((to-index (or (if to-index (1- to-index))
                               (pcase tab-bar-close-tab-select
-                                ('left (1- current-index))
+                                ('left (1- (if (< current-index 1) 2 
current-index)))
                                 ('right (if (> (length tabs) (1+ 
current-index))
                                             (1+ current-index)
                                           (1- current-index)))
@@ -1004,7 +1010,7 @@ for the last tab on a frame is determined by
         (unless (eq frame (selected-frame))
           (select-frame-set-input-focus frame))
 
-        (let ((tabs (tab-bar-tabs)))
+        (let ((tabs (funcall tab-bar-tabs-function)))
           (setq index (max 0 (min index (length tabs))))
           (cl-pushnew tab (nthcdr index tabs))
           (when (eq index 0)
@@ -1102,6 +1108,8 @@ function `tab-bar-tab-name-function'."
     (setq tab-bar-history-omit nil)))
 
 (defun tab-bar-history-back ()
+  "Restore a previous window configuration used in the current tab.
+This navigates back in the history of window configurations."
   (interactive)
   (setq tab-bar-history-omit t)
   (let* ((history (pop (gethash (selected-frame) tab-bar-history-back)))
@@ -1119,6 +1127,8 @@ function `tab-bar-tab-name-function'."
       (message "No more tab back history"))))
 
 (defun tab-bar-history-forward ()
+  "Cancel restoration of the previous window configuration.
+This navigates forward in the history of window configurations."
   (interactive)
   (setq tab-bar-history-omit t)
   (let* ((history (pop (gethash (selected-frame) tab-bar-history-forward)))
@@ -1136,7 +1146,9 @@ function `tab-bar-tab-name-function'."
       (message "No more tab forward history"))))
 
 (define-minor-mode tab-bar-history-mode
-  "Toggle tab history mode for the tab bar."
+  "Toggle tab history mode for the tab bar.
+Tab history mode remembers window configurations used in every tab,
+and can restore them."
   :global t :group 'tab-bar
   (if tab-bar-history-mode
       (progn
diff --git a/lisp/tab-line.el b/lisp/tab-line.el
index eb279de..7a2bdc0 100644
--- a/lisp/tab-line.el
+++ b/lisp/tab-line.el
@@ -474,8 +474,12 @@ variable `tab-line-tabs-function'."
   "Template for displaying tab line for selected window."
   (let* ((tabs (funcall tab-line-tabs-function))
          (cache-key (list tabs
+                          ;; handle buffer renames
                           (buffer-name (window-buffer))
-                          (window-parameter nil 'tab-line-hscroll)))
+                          ;; handle tab-line scrolling
+                          (window-parameter nil 'tab-line-hscroll)
+                          ;; for setting face 'tab-line-tab-current'
+                          (eq (selected-window) (old-selected-window))))
          (cache (window-parameter nil 'tab-line-cache)))
     ;; Enable auto-hscroll again after it was disabled on manual scrolling.
     ;; The moment to enable it is when the window-buffer was updated.
diff --git a/src/term.c b/src/term.c
index a3aef31..94bf013 100644
--- a/src/term.c
+++ b/src/term.c
@@ -563,8 +563,8 @@ encode_terminal_code (struct glyph *src, int src_len,
            {
              cmp = composition_table[src->u.cmp.id];
              required = cmp->glyph_len;
-             required *= MAX_MULTIBYTE_LENGTH;
            }
+         required *= MAX_MULTIBYTE_LENGTH;
 
          if (encode_terminal_src_size - nbytes < required)
            {
diff --git a/test/lisp/simple-tests.el b/test/lisp/simple-tests.el
index fa71e26..88be74f 100644
--- a/test/lisp/simple-tests.el
+++ b/test/lisp/simple-tests.el
@@ -757,7 +757,7 @@ See Bug#21722."
 ;;; Tests for shell-command-dont-erase-buffer
 
 (defmacro with-shell-command-dont-erase-buffer (str output-buffer-is-current 
&rest body)
-  (declare (debug (form &body)) (indent 2))
+  (declare (debug (sexp form body)) (indent 2))
   (let ((expected (make-symbol "expected"))
         (command (make-symbol "command"))
         (caller-buf (make-symbol "caller-buf"))
@@ -766,8 +766,9 @@ See Bug#21722."
             (,output-buf (if ,output-buffer-is-current ,caller-buf
                            (generate-new-buffer "output-buf")))
             (emacs (expand-file-name invocation-name invocation-directory))
-            (,command (format "%s -Q --batch --eval \"(princ \\\"%s\\\")\""
-                              emacs ,str))
+            (,command
+             (format "%s -Q --batch --eval %s"
+                     emacs (shell-quote-argument (format "(princ %S)" ,str))))
             (inhibit-message t))
        (unwind-protect
            ;; Feature must work the same regardless how we specify the 2nd arg 
of `shell-command', ie,
@@ -787,7 +788,7 @@ See Bug#21722."
 
 (ert-deftest simple-tests-shell-command-39067 ()
   "The output buffer is erased or not according to 
`shell-command-dont-erase-buffer'."
-  (let ((str "foo\n"))
+  (let ((str "foo\\n"))
     (dolist (output-current '(t nil))
       (with-shell-command-dont-erase-buffer str output-current
         (let ((expected (cond ((eq shell-command-dont-erase-buffer 'erase) str)
@@ -799,7 +800,7 @@ See Bug#21722."
 
 (ert-deftest simple-tests-shell-command-dont-erase-buffer ()
   "The point is set at the expected position after execution of the command."
-  (let* ((str "foo\n")
+  (let* ((str "foo\\n")
          (expected-point `((beg-last-out . ,(1+ (length str)))
                            (end-last-out . ,(1+ (* 2 (length str))))
                            (save-point . 1))))



reply via email to

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