diff options
| author | Po Lu | 2023-03-28 09:41:22 +0800 |
|---|---|---|
| committer | Po Lu | 2023-03-28 09:41:22 +0800 |
| commit | 64206ee3af9b59da9591aae400439bdea2cda09f (patch) | |
| tree | 88c333f058f0afac551daca0d8cf2f2e9d8012ea /lisp | |
| parent | 05f3f9c1c09c3e7a4d9c1d9ac16a34742a4124c1 (diff) | |
| parent | 66b4394461589d0db8690b7971000f687bd3ad57 (diff) | |
| download | emacs-64206ee3af9b59da9591aae400439bdea2cda09f.tar.gz emacs-64206ee3af9b59da9591aae400439bdea2cda09f.zip | |
Merge remote-tracking branch 'origin/master' into feature/android
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/emacs-lisp/comp.el | 5 | ||||
| -rw-r--r-- | lisp/emacs-lisp/easy-mmode.el | 28 | ||||
| -rw-r--r-- | lisp/emacs-lisp/gv.el | 2 | ||||
| -rw-r--r-- | lisp/help-fns.el | 2 | ||||
| -rw-r--r-- | lisp/help.el | 7 | ||||
| -rw-r--r-- | lisp/net/eww.el | 20 | ||||
| -rw-r--r-- | lisp/net/tramp-cmds.el | 10 | ||||
| -rw-r--r-- | lisp/net/tramp-crypt.el | 12 | ||||
| -rw-r--r-- | lisp/net/tramp-gvfs.el | 2 | ||||
| -rw-r--r-- | lisp/net/tramp-sh.el | 10 | ||||
| -rw-r--r-- | lisp/net/tramp-smb.el | 2 | ||||
| -rw-r--r-- | lisp/net/tramp.el | 10 | ||||
| -rw-r--r-- | lisp/org/org-version.el | 4 | ||||
| -rw-r--r-- | lisp/org/org.el | 2 | ||||
| -rw-r--r-- | lisp/org/ox-texinfo.el | 11 | ||||
| -rw-r--r-- | lisp/progmodes/python.el | 9 | ||||
| -rw-r--r-- | lisp/progmodes/ruby-ts-mode.el | 48 | ||||
| -rw-r--r-- | lisp/savehist.el | 5 | ||||
| -rw-r--r-- | lisp/subr.el | 6 | ||||
| -rw-r--r-- | lisp/transient.el | 17 | ||||
| -rw-r--r-- | lisp/treesit.el | 16 | ||||
| -rw-r--r-- | lisp/window.el | 16 |
22 files changed, 145 insertions, 99 deletions
diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el index 7d9832f588f..3c57ca79b12 100644 --- a/lisp/emacs-lisp/comp.el +++ b/lisp/emacs-lisp/comp.el | |||
| @@ -186,8 +186,9 @@ and above." | |||
| 186 | :type '(repeat string) | 186 | :type '(repeat string) |
| 187 | :version "28.1") | 187 | :version "28.1") |
| 188 | 188 | ||
| 189 | (defcustom native-comp-driver-options (when (eq system-type 'darwin) | 189 | (defcustom native-comp-driver-options |
| 190 | '("-Wl,-w")) | 190 | (cond ((eq system-type 'darwin) '("-Wl,-w")) |
| 191 | ((eq system-type 'cygwin) '("-Wl,-dynamicbase"))) | ||
| 191 | "Options passed verbatim to the native compiler's back-end driver. | 192 | "Options passed verbatim to the native compiler's back-end driver. |
| 192 | Note that not all options are meaningful; typically only the options | 193 | Note that not all options are meaningful; typically only the options |
| 193 | affecting the assembler and linker are likely to be useful. | 194 | affecting the assembler and linker are likely to be useful. |
diff --git a/lisp/emacs-lisp/easy-mmode.el b/lisp/emacs-lisp/easy-mmode.el index 77f4b26d9bb..84e131147cd 100644 --- a/lisp/emacs-lisp/easy-mmode.el +++ b/lisp/emacs-lisp/easy-mmode.el | |||
| @@ -452,15 +452,23 @@ No problems result if this variable is not bound. | |||
| 452 | TURN-ON is a function that will be called with no args in every buffer | 452 | TURN-ON is a function that will be called with no args in every buffer |
| 453 | and that should try to turn MODE on if applicable for that buffer. | 453 | and that should try to turn MODE on if applicable for that buffer. |
| 454 | 454 | ||
| 455 | Each of KEY VALUE is a pair of CL-style keyword arguments. :predicate | 455 | Each of KEY VALUE is a pair of CL-style keyword arguments. |
| 456 | specifies which major modes the globalized minor mode should be switched on | 456 | The :predicate argument specifies in which major modes should the |
| 457 | in. As the minor mode defined by this function is always global, any | 457 | globalized minor mode be switched on. The value should be t (meaning |
| 458 | :global keyword is ignored. Other keywords have the same meaning as in | 458 | switch on the minor mode in all major modes), nil (meaning don't |
| 459 | `define-minor-mode', which see. In particular, :group specifies the custom | 459 | switch on in any major mode), a list of modes (meaning switch on only |
| 460 | group. The most useful keywords are those that are passed on to the | 460 | in those modes and their descendants), or a list (not MODES...), |
| 461 | `defcustom'. It normally makes no sense to pass the :lighter or :keymap | 461 | meaning switch on in any major mode except MODES. The value can also |
| 462 | keywords to `define-globalized-minor-mode', since these are usually passed | 462 | mix all of these forms, see the info node `Defining Minor Modes' for |
| 463 | to the buffer-local version of the minor mode. | 463 | details. |
| 464 | As the minor mode defined by this function is always global, any | ||
| 465 | :global keyword is ignored. | ||
| 466 | Other keywords have the same meaning as in `define-minor-mode', | ||
| 467 | which see. In particular, :group specifies the custom group. | ||
| 468 | The most useful keywords are those that are passed on to the `defcustom'. | ||
| 469 | It normally makes no sense to pass the :lighter or :keymap keywords | ||
| 470 | to `define-globalized-minor-mode', since these are usually passed to | ||
| 471 | the buffer-local version of the minor mode. | ||
| 464 | 472 | ||
| 465 | BODY contains code to execute each time the mode is enabled or disabled. | 473 | BODY contains code to execute each time the mode is enabled or disabled. |
| 466 | It is executed after toggling the mode, and before running | 474 | It is executed after toggling the mode, and before running |
| @@ -512,7 +520,7 @@ on if the hook has explicitly disabled it. | |||
| 512 | (setq turn-on-function | 520 | (setq turn-on-function |
| 513 | `(lambda () | 521 | `(lambda () |
| 514 | (require 'easy-mmode) | 522 | (require 'easy-mmode) |
| 515 | (when (easy-mmode--globalized-predicate-p ,(car predicate)) | 523 | (when (easy-mmode--globalized-predicate-p ,MODE-predicate) |
| 516 | (funcall ,turn-on-function))))) | 524 | (funcall ,turn-on-function))))) |
| 517 | (_ (push keyw extra-keywords) (push (pop body) extra-keywords)))) | 525 | (_ (push keyw extra-keywords) (push (pop body) extra-keywords)))) |
| 518 | 526 | ||
diff --git a/lisp/emacs-lisp/gv.el b/lisp/emacs-lisp/gv.el index dad91e92a45..ac001af06bd 100644 --- a/lisp/emacs-lisp/gv.el +++ b/lisp/emacs-lisp/gv.el | |||
| @@ -271,7 +271,7 @@ instead the assignment is turned into something equivalent to | |||
| 271 | (SETTER ARGS... temp) | 271 | (SETTER ARGS... temp) |
| 272 | temp) | 272 | temp) |
| 273 | so as to preserve the semantics of `setf'." | 273 | so as to preserve the semantics of `setf'." |
| 274 | (declare (debug (sexp (&or symbolp lambda-expr) &optional sexp))) | 274 | (declare (debug (sexp [&or symbolp lambda-expr] &optional sexp))) |
| 275 | (when (eq 'lambda (car-safe setter)) | 275 | (when (eq 'lambda (car-safe setter)) |
| 276 | (message "Use `gv-define-setter' or name %s's setter function" name)) | 276 | (message "Use `gv-define-setter' or name %s's setter function" name)) |
| 277 | `(gv-define-setter ,name (val &rest args) | 277 | `(gv-define-setter ,name (val &rest args) |
diff --git a/lisp/help-fns.el b/lisp/help-fns.el index 6dbdb565b1b..a939cc0b509 100644 --- a/lisp/help-fns.el +++ b/lisp/help-fns.el | |||
| @@ -437,7 +437,7 @@ the C sources, too." | |||
| 437 | (setq file-name | 437 | (setq file-name |
| 438 | (locate-file file-name load-path '(".el" ".elc") 'readable))) | 438 | (locate-file file-name load-path '(".el" ".elc") 'readable))) |
| 439 | ((and (stringp file-name) | 439 | ((and (stringp file-name) |
| 440 | (string-match "[.]*loaddefs.el\\'" file-name)) | 440 | (string-match "[.]*loaddefs.elc?\\'" file-name)) |
| 441 | ;; An autoloaded variable or face. Visit loaddefs.el in a buffer | 441 | ;; An autoloaded variable or face. Visit loaddefs.el in a buffer |
| 442 | ;; and try to extract the defining file. The following form is | 442 | ;; and try to extract the defining file. The following form is |
| 443 | ;; from `describe-function-1' and `describe-variable'. | 443 | ;; from `describe-function-1' and `describe-variable'. |
diff --git a/lisp/help.el b/lisp/help.el index 83be85b1ee4..3e94b5046e5 100644 --- a/lisp/help.el +++ b/lisp/help.el | |||
| @@ -717,6 +717,12 @@ Return nil if KEYS is nil." | |||
| 717 | :group 'help | 717 | :group 'help |
| 718 | :version "29.1") | 718 | :version "29.1") |
| 719 | 719 | ||
| 720 | (defcustom describe-bindings-show-prefix-commands nil | ||
| 721 | "Non-nil means show prefix commands in the output of `describe-bindings'." | ||
| 722 | :type 'boolean | ||
| 723 | :group 'help | ||
| 724 | :version "29.1") | ||
| 725 | |||
| 720 | (declare-function outline-hide-subtree "outline") | 726 | (declare-function outline-hide-subtree "outline") |
| 721 | 727 | ||
| 722 | (defun describe-bindings (&optional prefix buffer) | 728 | (defun describe-bindings (&optional prefix buffer) |
| @@ -1699,6 +1705,7 @@ in `describe-map-tree'." | |||
| 1699 | (setq vect (cdr vect)) | 1705 | (setq vect (cdr vect)) |
| 1700 | (setq end (caar vect)))) | 1706 | (setq end (caar vect)))) |
| 1701 | (when (or (not (eq start end)) | 1707 | (when (or (not (eq start end)) |
| 1708 | describe-bindings-show-prefix-commands | ||
| 1702 | ;; Don't output keymap prefixes. | 1709 | ;; Don't output keymap prefixes. |
| 1703 | (not (keymapp definition))) | 1710 | (not (keymapp definition))) |
| 1704 | (when first | 1711 | (when first |
diff --git a/lisp/net/eww.el b/lisp/net/eww.el index 02f331697c6..3c7140ef5cc 100644 --- a/lisp/net/eww.el +++ b/lisp/net/eww.el | |||
| @@ -64,16 +64,22 @@ The action to be taken can be further customized via | |||
| 64 | :version "28.1" | 64 | :version "28.1" |
| 65 | :type 'regexp) | 65 | :type 'regexp) |
| 66 | 66 | ||
| 67 | (defcustom eww-download-directory "~/Downloads/" | ||
| 68 | "Default directory where `eww' saves downloaded files." | ||
| 69 | :version "29.1" | ||
| 70 | :group 'eww | ||
| 71 | :type 'directory) | ||
| 72 | |||
| 67 | (defun eww--download-directory () | 73 | (defun eww--download-directory () |
| 68 | "Return the name of the download directory. | 74 | "Return the name of the EWW download directory. |
| 69 | If ~/Downloads/ exists, that will be used, and if not, the | 75 | The default is specified by `eww-download-directory'; however, |
| 70 | DOWNLOAD XDG user directory will be returned. If that's | 76 | if that directory doesn't exist and the DOWNLOAD XDG user directory |
| 71 | undefined, ~/Downloads/ is returned anyway." | 77 | is defined, use the latter instead." |
| 72 | (or (and (file-exists-p "~/Downloads/") | 78 | (or (and (file-exists-p eww-download-directory) |
| 73 | "~/Downloads/") | 79 | eww-download-directory) |
| 74 | (when-let ((dir (xdg-user-dir "DOWNLOAD"))) | 80 | (when-let ((dir (xdg-user-dir "DOWNLOAD"))) |
| 75 | (file-name-as-directory dir)) | 81 | (file-name-as-directory dir)) |
| 76 | "~/Downloads/")) | 82 | eww-download-directory)) |
| 77 | 83 | ||
| 78 | (defcustom eww-download-directory 'eww--download-directory | 84 | (defcustom eww-download-directory 'eww--download-directory |
| 79 | "Directory where files will downloaded. | 85 | "Directory where files will downloaded. |
diff --git a/lisp/net/tramp-cmds.el b/lisp/net/tramp-cmds.el index b0cfdb1ebba..1a9d8003530 100644 --- a/lisp/net/tramp-cmds.el +++ b/lisp/net/tramp-cmds.el | |||
| @@ -319,7 +319,7 @@ The remote connection identified by SOURCE is flushed by | |||
| 319 | (read-file-name-function #'read-file-name-default) | 319 | (read-file-name-function #'read-file-name-default) |
| 320 | source target) | 320 | source target) |
| 321 | (if (null connections) | 321 | (if (null connections) |
| 322 | (tramp-user-error nil "There are no remote connections.") | 322 | (tramp-user-error nil "There are no remote connections") |
| 323 | (setq source | 323 | (setq source |
| 324 | ;; Likely, the source remote connection is broken. So we | 324 | ;; Likely, the source remote connection is broken. So we |
| 325 | ;; shall avoid any action on it. | 325 | ;; shall avoid any action on it. |
| @@ -367,15 +367,15 @@ The remote connection identified by SOURCE is flushed by | |||
| 367 | (list source target))) | 367 | (list source target))) |
| 368 | 368 | ||
| 369 | (unless (tramp-tramp-file-p source) | 369 | (unless (tramp-tramp-file-p source) |
| 370 | (tramp-user-error nil "Source %s must be remote." source)) | 370 | (tramp-user-error nil "Source %s must be remote" source)) |
| 371 | (when (null target) | 371 | (when (null target) |
| 372 | (or (setq target (tramp-default-rename-file source)) | 372 | (or (setq target (tramp-default-rename-file source)) |
| 373 | (tramp-user-error | 373 | (tramp-user-error |
| 374 | nil | 374 | nil |
| 375 | (concat "There is no target specified. " | 375 | (concat "There is no target specified. " |
| 376 | "Check `tramp-default-rename-alist' for a proper entry.")))) | 376 | "Check `tramp-default-rename-alist' for a proper entry")))) |
| 377 | (when (tramp-equal-remote source target) | 377 | (when (tramp-equal-remote source target) |
| 378 | (tramp-user-error nil "Source and target must have different remote.")) | 378 | (tramp-user-error nil "Source and target must have different remote")) |
| 379 | 379 | ||
| 380 | ;; Append local file name if none is specified. | 380 | ;; Append local file name if none is specified. |
| 381 | (when (string-equal (file-remote-p target) target) | 381 | (when (string-equal (file-remote-p target) target) |
| @@ -461,7 +461,7 @@ For details, see `tramp-rename-files'." | |||
| 461 | nil | 461 | nil |
| 462 | (substitute-command-keys | 462 | (substitute-command-keys |
| 463 | (concat "Current buffer is not remote. " | 463 | (concat "Current buffer is not remote. " |
| 464 | "Consider `\\[tramp-rename-files]' instead."))) | 464 | "Consider `\\[tramp-rename-files]' instead"))) |
| 465 | (setq target | 465 | (setq target |
| 466 | (when (null current-prefix-arg) | 466 | (when (null current-prefix-arg) |
| 467 | ;; The source remote connection shall not trigger any action. | 467 | ;; The source remote connection shall not trigger any action. |
diff --git a/lisp/net/tramp-crypt.el b/lisp/net/tramp-crypt.el index 116c2b143e9..4d15695ccbf 100644 --- a/lisp/net/tramp-crypt.el +++ b/lisp/net/tramp-crypt.el | |||
| @@ -436,7 +436,7 @@ Otherwise, return NAME." | |||
| 436 | crypt-vec (if (eq op 'encrypt) "encode" "decode") | 436 | crypt-vec (if (eq op 'encrypt) "encode" "decode") |
| 437 | tramp-compat-temporary-file-directory localname) | 437 | tramp-compat-temporary-file-directory localname) |
| 438 | (tramp-error | 438 | (tramp-error |
| 439 | crypt-vec 'file-error "%s of file name %s failed." | 439 | crypt-vec 'file-error "%s of file name %s failed" |
| 440 | (if (eq op 'encrypt) "Encoding" "Decoding") name)) | 440 | (if (eq op 'encrypt) "Encoding" "Decoding") name)) |
| 441 | (with-current-buffer (tramp-get-connection-buffer crypt-vec) | 441 | (with-current-buffer (tramp-get-connection-buffer crypt-vec) |
| 442 | (goto-char (point-min)) | 442 | (goto-char (point-min)) |
| @@ -471,7 +471,7 @@ Raise an error if this fails." | |||
| 471 | (file-name-directory infile) | 471 | (file-name-directory infile) |
| 472 | (concat "/" (file-name-nondirectory infile))) | 472 | (concat "/" (file-name-nondirectory infile))) |
| 473 | (tramp-error | 473 | (tramp-error |
| 474 | crypt-vec 'file-error "%s of file %s failed." | 474 | crypt-vec 'file-error "%s of file %s failed" |
| 475 | (if (eq op 'encrypt) "Encrypting" "Decrypting") infile)) | 475 | (if (eq op 'encrypt) "Encrypting" "Decrypting") infile)) |
| 476 | (with-current-buffer (tramp-get-connection-buffer crypt-vec) | 476 | (with-current-buffer (tramp-get-connection-buffer crypt-vec) |
| 477 | (write-region nil nil outfile))))) | 477 | (write-region nil nil outfile))))) |
| @@ -495,11 +495,11 @@ directory. File names will be also encrypted." | |||
| 495 | ;; (declare (completion tramp-crypt-command-completion-p)) | 495 | ;; (declare (completion tramp-crypt-command-completion-p)) |
| 496 | (interactive "DRemote directory name: ") | 496 | (interactive "DRemote directory name: ") |
| 497 | (unless tramp-crypt-enabled | 497 | (unless tramp-crypt-enabled |
| 498 | (tramp-user-error nil "Feature is not enabled.")) | 498 | (tramp-user-error nil "Feature is not enabled")) |
| 499 | (unless (and (tramp-tramp-file-p name) (file-directory-p name)) | 499 | (unless (and (tramp-tramp-file-p name) (file-directory-p name)) |
| 500 | (tramp-user-error nil "%s must be an existing remote directory." name)) | 500 | (tramp-user-error nil "%s must be an existing remote directory" name)) |
| 501 | (when (file-name-quoted-p name) | 501 | (when (file-name-quoted-p name) |
| 502 | (tramp-user-error nil "%s must not be quoted." name)) | 502 | (tramp-user-error nil "%s must not be quoted" name)) |
| 503 | (setq name (file-name-as-directory (expand-file-name name))) | 503 | (setq name (file-name-as-directory (expand-file-name name))) |
| 504 | (unless (member name tramp-crypt-directories) | 504 | (unless (member name tramp-crypt-directories) |
| 505 | (setq tramp-crypt-directories (cons name tramp-crypt-directories))) | 505 | (setq tramp-crypt-directories (cons name tramp-crypt-directories))) |
| @@ -518,7 +518,7 @@ kept in their encrypted form." | |||
| 518 | ;; (declare (completion tramp-crypt-command-completion-p)) | 518 | ;; (declare (completion tramp-crypt-command-completion-p)) |
| 519 | (interactive "DRemote directory name: ") | 519 | (interactive "DRemote directory name: ") |
| 520 | (unless tramp-crypt-enabled | 520 | (unless tramp-crypt-enabled |
| 521 | (tramp-user-error nil "Feature is not enabled.")) | 521 | (tramp-user-error nil "Feature is not enabled")) |
| 522 | (setq name (file-name-as-directory (expand-file-name name))) | 522 | (setq name (file-name-as-directory (expand-file-name name))) |
| 523 | (when (and (member name tramp-crypt-directories) | 523 | (when (and (member name tramp-crypt-directories) |
| 524 | (delete | 524 | (delete |
diff --git a/lisp/net/tramp-gvfs.el b/lisp/net/tramp-gvfs.el index c84f96d3c61..f925d2f3da5 100644 --- a/lisp/net/tramp-gvfs.el +++ b/lisp/net/tramp-gvfs.el | |||
| @@ -1115,7 +1115,7 @@ file names." | |||
| 1115 | (goto-char (point-min)) | 1115 | (goto-char (point-min)) |
| 1116 | (tramp-error-with-buffer | 1116 | (tramp-error-with-buffer |
| 1117 | nil v 'file-error | 1117 | nil v 'file-error |
| 1118 | "%s failed, see buffer `%s' for details." | 1118 | "%s failed, see buffer `%s' for details" |
| 1119 | msg-operation (buffer-name))) | 1119 | msg-operation (buffer-name))) |
| 1120 | 1120 | ||
| 1121 | ;; Some WebDAV server, like the one from QNAP, do | 1121 | ;; Some WebDAV server, like the one from QNAP, do |
diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el index 401cec0e28d..2ef97d540a0 100644 --- a/lisp/net/tramp-sh.el +++ b/lisp/net/tramp-sh.el | |||
| @@ -1147,8 +1147,8 @@ Operations not mentioned here will be handled by the normal Emacs functions.") | |||
| 1147 | (unless (tramp-get-remote-ln v) | 1147 | (unless (tramp-get-remote-ln v) |
| 1148 | (tramp-error | 1148 | (tramp-error |
| 1149 | v 'file-error | 1149 | v 'file-error |
| 1150 | (concat "Making a symbolic link. " | 1150 | (concat "Making a symbolic link: " |
| 1151 | "ln(1) does not exist on the remote host.")))) | 1151 | "ln(1) does not exist on the remote host")))) |
| 1152 | 1152 | ||
| 1153 | (tramp-skeleton-handle-make-symbolic-link target linkname ok-if-already-exists | 1153 | (tramp-skeleton-handle-make-symbolic-link target linkname ok-if-already-exists |
| 1154 | (and (tramp-send-command-and-check | 1154 | (and (tramp-send-command-and-check |
| @@ -2150,7 +2150,7 @@ the uid and gid from FILENAME." | |||
| 2150 | cmd-result) | 2150 | cmd-result) |
| 2151 | (tramp-error-with-buffer | 2151 | (tramp-error-with-buffer |
| 2152 | nil v 'file-error | 2152 | nil v 'file-error |
| 2153 | "Copying directly failed, see buffer `%s' for details." | 2153 | "Copying directly failed, see buffer `%s' for details" |
| 2154 | (buffer-name))))) | 2154 | (buffer-name))))) |
| 2155 | 2155 | ||
| 2156 | ;; We are on the local host. | 2156 | ;; We are on the local host. |
| @@ -2205,7 +2205,7 @@ the uid and gid from FILENAME." | |||
| 2205 | "%s %s %s" cmd | 2205 | "%s %s %s" cmd |
| 2206 | (tramp-shell-quote-argument localname1) | 2206 | (tramp-shell-quote-argument localname1) |
| 2207 | (tramp-shell-quote-argument tmpfile)) | 2207 | (tramp-shell-quote-argument tmpfile)) |
| 2208 | "Copying directly failed, see buffer `%s' for details." | 2208 | "Copying directly failed, see buffer `%s' for details" |
| 2209 | (tramp-get-buffer v)) | 2209 | (tramp-get-buffer v)) |
| 2210 | ;; We must change the ownership as remote user. | 2210 | ;; We must change the ownership as remote user. |
| 2211 | ;; Since this does not work reliable, we also | 2211 | ;; Since this does not work reliable, we also |
| @@ -2238,7 +2238,7 @@ the uid and gid from FILENAME." | |||
| 2238 | "cp -f -p %s %s" | 2238 | "cp -f -p %s %s" |
| 2239 | (tramp-shell-quote-argument tmpfile) | 2239 | (tramp-shell-quote-argument tmpfile) |
| 2240 | (tramp-shell-quote-argument localname2)) | 2240 | (tramp-shell-quote-argument localname2)) |
| 2241 | "Copying directly failed, see buffer `%s' for details." | 2241 | "Copying directly failed, see buffer `%s' for details" |
| 2242 | (tramp-get-buffer v))) | 2242 | (tramp-get-buffer v))) |
| 2243 | (t1 | 2243 | (t1 |
| 2244 | (tramp-run-real-handler | 2244 | (tramp-run-real-handler |
diff --git a/lisp/net/tramp-smb.el b/lisp/net/tramp-smb.el index 740841c24db..add230e2720 100644 --- a/lisp/net/tramp-smb.el +++ b/lisp/net/tramp-smb.el | |||
| @@ -692,7 +692,7 @@ PRESERVE-UID-GID and PRESERVE-EXTENDED-ATTRIBUTES are completely ignored." | |||
| 692 | 692 | ||
| 693 | ;; "rmdir" does not report an error. So we check ourselves. | 693 | ;; "rmdir" does not report an error. So we check ourselves. |
| 694 | (when (file-exists-p directory) | 694 | (when (file-exists-p directory) |
| 695 | (tramp-error v 'file-error "`%s' not removed." directory))))) | 695 | (tramp-error v 'file-error "`%s' not removed" directory))))) |
| 696 | 696 | ||
| 697 | (defun tramp-smb-handle-delete-file (filename &optional trash) | 697 | (defun tramp-smb-handle-delete-file (filename &optional trash) |
| 698 | "Like `delete-file' for Tramp files." | 698 | "Like `delete-file' for Tramp files." |
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index 6eff5b2ca60..defdb2bd546 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el | |||
| @@ -1722,11 +1722,11 @@ default values are used." | |||
| 1722 | (unless (or nodefault non-essential | 1722 | (unless (or nodefault non-essential |
| 1723 | (assoc method tramp-methods)) | 1723 | (assoc method tramp-methods)) |
| 1724 | (tramp-user-error | 1724 | (tramp-user-error |
| 1725 | v "Method `%s' is not known." method)) | 1725 | v "Method `%s' is not known" method)) |
| 1726 | ;; Only some methods from tramp-sh.el do support multi-hops. | 1726 | ;; Only some methods from tramp-sh.el do support multi-hops. |
| 1727 | (unless (or (null hop) nodefault non-essential (tramp-multi-hop-p v)) | 1727 | (unless (or (null hop) nodefault non-essential (tramp-multi-hop-p v)) |
| 1728 | (tramp-user-error | 1728 | (tramp-user-error |
| 1729 | v "Method `%s' is not supported for multi-hops." method))))))) | 1729 | v "Method `%s' is not supported for multi-hops" method))))))) |
| 1730 | 1730 | ||
| 1731 | (put #'tramp-dissect-file-name 'tramp-suppress-trace t) | 1731 | (put #'tramp-dissect-file-name 'tramp-suppress-trace t) |
| 1732 | 1732 | ||
| @@ -1755,7 +1755,7 @@ See `tramp-dissect-file-name' for details." | |||
| 1755 | ;; Only some methods from tramp-sh.el do support multi-hops. | 1755 | ;; Only some methods from tramp-sh.el do support multi-hops. |
| 1756 | (unless (or nodefault non-essential (tramp-multi-hop-p v)) | 1756 | (unless (or nodefault non-essential (tramp-multi-hop-p v)) |
| 1757 | (tramp-user-error | 1757 | (tramp-user-error |
| 1758 | v "Method `%s' is not supported for multi-hops." | 1758 | v "Method `%s' is not supported for multi-hops" |
| 1759 | (tramp-file-name-method v))) | 1759 | (tramp-file-name-method v))) |
| 1760 | ;; Return result. | 1760 | ;; Return result. |
| 1761 | v)) | 1761 | v)) |
| @@ -3936,7 +3936,7 @@ Let-bind it when necessary.") | |||
| 3936 | ;; Some handlers for `tramp-get-remote-uid' return nil if they | 3936 | ;; Some handlers for `tramp-get-remote-uid' return nil if they |
| 3937 | ;; can't get the UID; always return -1 in this case for | 3937 | ;; can't get the UID; always return -1 in this case for |
| 3938 | ;; consistency. | 3938 | ;; consistency. |
| 3939 | -1))) | 3939 | tramp-unknown-id-integer))) |
| 3940 | 3940 | ||
| 3941 | (defun tramp-handle-access-file (filename string) | 3941 | (defun tramp-handle-access-file (filename string) |
| 3942 | "Like `access-file' for Tramp files." | 3942 | "Like `access-file' for Tramp files." |
| @@ -4896,7 +4896,7 @@ Do not set it manually, it is used buffer-local in `tramp-get-lock-pid'.") | |||
| 4896 | (unless (tramp-multi-hop-p item) | 4896 | (unless (tramp-multi-hop-p item) |
| 4897 | (setq tramp-default-proxies-alist saved-tdpa) | 4897 | (setq tramp-default-proxies-alist saved-tdpa) |
| 4898 | (tramp-user-error | 4898 | (tramp-user-error |
| 4899 | vec "Method `%s' is not supported for multi-hops." | 4899 | vec "Method `%s' is not supported for multi-hops" |
| 4900 | (tramp-file-name-method item))))) | 4900 | (tramp-file-name-method item))))) |
| 4901 | 4901 | ||
| 4902 | ;; Some methods ("su", "sg", "sudo", "doas", "ksu") do not use the | 4902 | ;; Some methods ("su", "sg", "sudo", "doas", "ksu") do not use the |
diff --git a/lisp/org/org-version.el b/lisp/org/org-version.el index 20636a3dd04..fd75f4785d6 100644 --- a/lisp/org/org-version.el +++ b/lisp/org/org-version.el | |||
| @@ -5,13 +5,13 @@ | |||
| 5 | (defun org-release () | 5 | (defun org-release () |
| 6 | "The release version of Org. | 6 | "The release version of Org. |
| 7 | Inserted by installing Org mode or when a release is made." | 7 | Inserted by installing Org mode or when a release is made." |
| 8 | (let ((org-release "9.6.1")) | 8 | (let ((org-release "9.6.2")) |
| 9 | org-release)) | 9 | org-release)) |
| 10 | ;;;###autoload | 10 | ;;;###autoload |
| 11 | (defun org-git-version () | 11 | (defun org-git-version () |
| 12 | "The Git version of Org mode. | 12 | "The Git version of Org mode. |
| 13 | Inserted by installing Org or when a release is made." | 13 | Inserted by installing Org or when a release is made." |
| 14 | (let ((org-git-version "release_9.6.1-48-g92471e")) | 14 | (let ((org-git-version "release_9.6.2")) |
| 15 | org-git-version)) | 15 | org-git-version)) |
| 16 | 16 | ||
| 17 | (provide 'org-version) | 17 | (provide 'org-version) |
diff --git a/lisp/org/org.el b/lisp/org/org.el index 2fbb825015f..1649722ab0c 100644 --- a/lisp/org/org.el +++ b/lisp/org/org.el | |||
| @@ -9,7 +9,7 @@ | |||
| 9 | ;; URL: https://orgmode.org | 9 | ;; URL: https://orgmode.org |
| 10 | ;; Package-Requires: ((emacs "26.1")) | 10 | ;; Package-Requires: ((emacs "26.1")) |
| 11 | 11 | ||
| 12 | ;; Version: 9.6.1 | 12 | ;; Version: 9.6.2 |
| 13 | 13 | ||
| 14 | ;; This file is part of GNU Emacs. | 14 | ;; This file is part of GNU Emacs. |
| 15 | ;; | 15 | ;; |
diff --git a/lisp/org/ox-texinfo.el b/lisp/org/ox-texinfo.el index 4ff482cc3f5..f822f3d110c 100644 --- a/lisp/org/ox-texinfo.el +++ b/lisp/org/ox-texinfo.el | |||
| @@ -2037,10 +2037,13 @@ Once computed, the results remain cached." | |||
| 2037 | "\n"))) | 2037 | "\n"))) |
| 2038 | (with-temp-file input-file | 2038 | (with-temp-file input-file |
| 2039 | (insert input-content)) | 2039 | (insert input-content)) |
| 2040 | (let* ((output-file (org-texinfo-compile input-file)) | 2040 | (when-let* ((output-file |
| 2041 | (output-content (with-temp-buffer | 2041 | ;; If compilation fails, consider math to |
| 2042 | (insert-file-contents output-file) | 2042 | ;; be not supported. |
| 2043 | (buffer-string)))) | 2043 | (ignore-errors (org-texinfo-compile input-file))) |
| 2044 | (output-content (with-temp-buffer | ||
| 2045 | (insert-file-contents output-file) | ||
| 2046 | (buffer-string)))) | ||
| 2044 | (let ((result (string-match-p (regexp-quote math-example) | 2047 | (let ((result (string-match-p (regexp-quote math-example) |
| 2045 | output-content))) | 2048 | output-content))) |
| 2046 | (delete-file input-file) | 2049 | (delete-file input-file) |
diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el index 2fe88323c35..bbabce80b4d 100644 --- a/lisp/progmodes/python.el +++ b/lisp/progmodes/python.el | |||
| @@ -5854,7 +5854,14 @@ statement." | |||
| 5854 | (save-excursion | 5854 | (save-excursion |
| 5855 | (python-nav-beginning-of-statement) | 5855 | (python-nav-beginning-of-statement) |
| 5856 | (when (and (not (python-syntax-context-type)) | 5856 | (when (and (not (python-syntax-context-type)) |
| 5857 | (looking-at (python-rx dedenter))) | 5857 | (looking-at (python-rx dedenter)) |
| 5858 | ;; Exclude the first "case" in the block. | ||
| 5859 | (not (and (string= (match-string-no-properties 0) | ||
| 5860 | "case") | ||
| 5861 | (save-excursion | ||
| 5862 | (back-to-indentation) | ||
| 5863 | (python-util-forward-comment -1) | ||
| 5864 | (equal (char-before) ?:))))) | ||
| 5858 | (point)))) | 5865 | (point)))) |
| 5859 | 5866 | ||
| 5860 | (defun python-info-line-ends-backslash-p (&optional line-number) | 5867 | (defun python-info-line-ends-backslash-p (&optional line-number) |
diff --git a/lisp/progmodes/ruby-ts-mode.el b/lisp/progmodes/ruby-ts-mode.el index d1034d467ab..97c7cf6480c 100644 --- a/lisp/progmodes/ruby-ts-mode.el +++ b/lisp/progmodes/ruby-ts-mode.el | |||
| @@ -469,7 +469,7 @@ non-nil." | |||
| 469 | (let* (first-call ) | 469 | (let* (first-call ) |
| 470 | (while (and parent | 470 | (while (and parent |
| 471 | (setq first-call (treesit-node-parent parent)) | 471 | (setq first-call (treesit-node-parent parent)) |
| 472 | (string-search "call" (treesit-node-type first-call))) | 472 | (equal "call" (treesit-node-type first-call))) |
| 473 | (setq parent first-call)) | 473 | (setq parent first-call)) |
| 474 | (treesit-node-start (treesit-search-subtree parent "\\." nil t)))) | 474 | (treesit-node-start (treesit-search-subtree parent "\\." nil t)))) |
| 475 | 475 | ||
| @@ -883,32 +883,24 @@ a statement container is a node that matches | |||
| 883 | "Return the fully qualified name of NODE." | 883 | "Return the fully qualified name of NODE." |
| 884 | (let* ((name (ruby-ts--get-name node)) | 884 | (let* ((name (ruby-ts--get-name node)) |
| 885 | (delimiter "#")) | 885 | (delimiter "#")) |
| 886 | (when (equal (treesit-node-type node) "singleton_method") | ||
| 887 | (setq delimiter "." | ||
| 888 | name (treesit-node-text (treesit-node-child-by-field-name node "name")))) | ||
| 886 | (while (setq node (treesit-parent-until node #'ruby-ts--class-or-module-p)) | 889 | (while (setq node (treesit-parent-until node #'ruby-ts--class-or-module-p)) |
| 887 | (setq name (concat (ruby-ts--get-name node) delimiter name)) | 890 | (if name |
| 891 | (setq name (concat (ruby-ts--get-name node) delimiter name)) | ||
| 892 | (setq name (ruby-ts--get-name node))) | ||
| 888 | (setq delimiter "::")) | 893 | (setq delimiter "::")) |
| 889 | name)) | 894 | name)) |
| 890 | 895 | ||
| 891 | (defun ruby-ts--imenu-helper (node) | 896 | (defun ruby-ts--imenu-helper (tree) |
| 892 | "Convert a treesit sparse tree NODE in an imenu list. | 897 | "Convert a treesit sparse tree NODE in a flat imenu list." |
| 893 | Helper for `ruby-ts--imenu' which converts a treesit sparse | 898 | (if (cdr tree) |
| 894 | NODE into a list of imenu ( name . pos ) nodes" | 899 | ;; We only use the "leaf" values in the tree. It does include a |
| 895 | (let* ((ts-node (car node)) | 900 | ;; leaf node for every class or module body. |
| 896 | (subtrees (mapcan #'ruby-ts--imenu-helper (cdr node))) | 901 | (cl-mapcan #'ruby-ts--imenu-helper (cdr tree)) |
| 897 | (name (when ts-node | 902 | (list (cons (ruby-ts--full-name (car tree)) |
| 898 | (ruby-ts--full-name ts-node))) | 903 | (treesit-node-start (car tree)))))) |
| 899 | (marker (when ts-node | ||
| 900 | (set-marker (make-marker) | ||
| 901 | (treesit-node-start ts-node))))) | ||
| 902 | (cond | ||
| 903 | ((or (null ts-node) (null name)) subtrees) | ||
| 904 | ;; Don't include the anonymous "class" and "module" nodes | ||
| 905 | ((string-match-p "(\"\\(class\\|module\\)\")" | ||
| 906 | (treesit-node-string ts-node)) | ||
| 907 | nil) | ||
| 908 | (subtrees | ||
| 909 | `((,name ,(cons name marker) ,@subtrees))) | ||
| 910 | (t | ||
| 911 | `((,name . ,marker)))))) | ||
| 912 | 904 | ||
| 913 | ;; For now, this is going to work like ruby-mode and return a list of | 905 | ;; For now, this is going to work like ruby-mode and return a list of |
| 914 | ;; class, modules, def (methods), and alias. It is likely that this | 906 | ;; class, modules, def (methods), and alias. It is likely that this |
| @@ -916,8 +908,14 @@ NODE into a list of imenu ( name . pos ) nodes" | |||
| 916 | (defun ruby-ts--imenu () | 908 | (defun ruby-ts--imenu () |
| 917 | "Return Imenu alist for the current buffer." | 909 | "Return Imenu alist for the current buffer." |
| 918 | (let* ((root (treesit-buffer-root-node)) | 910 | (let* ((root (treesit-buffer-root-node)) |
| 919 | (nodes (treesit-induce-sparse-tree root "^\\(method\\|alias\\|class\\|module\\)$"))) | 911 | (tree (treesit-induce-sparse-tree root |
| 920 | (ruby-ts--imenu-helper nodes))) | 912 | (rx bol (or "singleton_method" |
| 913 | "method" | ||
| 914 | "alias" | ||
| 915 | "class" | ||
| 916 | "module") | ||
| 917 | eol)))) | ||
| 918 | (ruby-ts--imenu-helper tree))) | ||
| 921 | 919 | ||
| 922 | (defun ruby-ts--arrow-up-start (arg) | 920 | (defun ruby-ts--arrow-up-start (arg) |
| 923 | "Move to the start ARG levels up or out." | 921 | "Move to the start ARG levels up or out." |
diff --git a/lisp/savehist.el b/lisp/savehist.el index b532668f8a4..ea8968c771b 100644 --- a/lisp/savehist.el +++ b/lisp/savehist.el | |||
| @@ -232,8 +232,9 @@ If AUTO-SAVE is non-nil, compare the saved contents to the one last saved, | |||
| 232 | savehist-coding-system)) | 232 | savehist-coding-system)) |
| 233 | (run-hooks 'savehist-save-hook) | 233 | (run-hooks 'savehist-save-hook) |
| 234 | (let ((print-length nil) | 234 | (let ((print-length nil) |
| 235 | (print-level nil) | 235 | (print-level nil) |
| 236 | (print-quoted t)) | 236 | (print-quoted t) |
| 237 | (print-circle t)) | ||
| 237 | ;; Save the minibuffer histories, along with the value of | 238 | ;; Save the minibuffer histories, along with the value of |
| 238 | ;; savehist-minibuffer-history-variables itself. | 239 | ;; savehist-minibuffer-history-variables itself. |
| 239 | (when savehist-save-minibuffer-history | 240 | (when savehist-save-minibuffer-history |
diff --git a/lisp/subr.el b/lisp/subr.el index c67c7158b76..05c022847d3 100644 --- a/lisp/subr.el +++ b/lisp/subr.el | |||
| @@ -7151,7 +7151,7 @@ CONDITION is either: | |||
| 7151 | - the symbol t, to always match, | 7151 | - the symbol t, to always match, |
| 7152 | - the symbol nil, which never matches, | 7152 | - the symbol nil, which never matches, |
| 7153 | - a regular expression, to match a buffer name, | 7153 | - a regular expression, to match a buffer name, |
| 7154 | - a predicate function that takes a buffer object and ARG as | 7154 | - a predicate function that takes BUFFER-OR-NAME and ARG as |
| 7155 | arguments, and returns non-nil if the buffer matches, | 7155 | arguments, and returns non-nil if the buffer matches, |
| 7156 | - a cons-cell, where the car describes how to interpret the cdr. | 7156 | - a cons-cell, where the car describes how to interpret the cdr. |
| 7157 | The car can be one of the following: | 7157 | The car can be one of the following: |
| @@ -7177,8 +7177,8 @@ CONDITION is either: | |||
| 7177 | (string-match-p condition (buffer-name buffer))) | 7177 | (string-match-p condition (buffer-name buffer))) |
| 7178 | ((pred functionp) | 7178 | ((pred functionp) |
| 7179 | (if (eq 1 (cdr (func-arity condition))) | 7179 | (if (eq 1 (cdr (func-arity condition))) |
| 7180 | (funcall condition buffer) | 7180 | (funcall condition buffer-or-name) |
| 7181 | (funcall condition buffer arg))) | 7181 | (funcall condition buffer-or-name arg))) |
| 7182 | (`(major-mode . ,mode) | 7182 | (`(major-mode . ,mode) |
| 7183 | (eq | 7183 | (eq |
| 7184 | (buffer-local-value 'major-mode buffer) | 7184 | (buffer-local-value 'major-mode buffer) |
diff --git a/lisp/transient.el b/lisp/transient.el index 96e711e950c..4affc414fa6 100644 --- a/lisp/transient.el +++ b/lisp/transient.el | |||
| @@ -2516,17 +2516,22 @@ prefix argument and pivot to `transient-update'." | |||
| 2516 | 2516 | ||
| 2517 | (defun transient--invalid (msg) | 2517 | (defun transient--invalid (msg) |
| 2518 | (ding) | 2518 | (ding) |
| 2519 | (message "%s: `%s' (Use `%s' to abort, `%s' for help) [%s]" | 2519 | (message "%s: `%s' (Use `%s' to abort, `%s' for help)%s" |
| 2520 | msg | 2520 | msg |
| 2521 | (propertize (key-description (this-single-command-keys)) | 2521 | (propertize (key-description (this-single-command-keys)) |
| 2522 | 'face 'font-lock-warning-face) | 2522 | 'face 'font-lock-warning-face) |
| 2523 | (propertize "C-g" 'face 'transient-key) | 2523 | (propertize "C-g" 'face 'transient-key) |
| 2524 | (propertize "?" 'face 'transient-key) | 2524 | (propertize "?" 'face 'transient-key) |
| 2525 | ;; `this-command' is `transient--undefined' or similar at this | 2525 | ;; `this-command' is `transient-undefined' or `transient-inapt'. |
| 2526 | ;; point. Show the command the user actually tried to invoke. | 2526 | ;; Show the command (`this-original-command') the user actually |
| 2527 | (propertize (symbol-name (transient--suffix-symbol | 2527 | ;; tried to invoke. For an anonymous inapt command that is a |
| 2528 | this-original-command)) | 2528 | ;; lambda expression, which cannot be mapped to a symbol, so |
| 2529 | 'face 'font-lock-warning-face)) | 2529 | ;; forgo displaying the command. |
| 2530 | (if-let ((cmd (ignore-errors | ||
| 2531 | (symbol-name (transient--suffix-symbol | ||
| 2532 | this-original-command))))) | ||
| 2533 | (format " [%s]" (propertize cmd 'face 'font-lock-warning-face)) | ||
| 2534 | "")) | ||
| 2530 | (unless (and transient--transient-map | 2535 | (unless (and transient--transient-map |
| 2531 | (memq transient--transient-map overriding-terminal-local-map)) | 2536 | (memq transient--transient-map overriding-terminal-local-map)) |
| 2532 | (let ((transient--prefix (or transient--prefix 'sic))) | 2537 | (let ((transient--prefix (or transient--prefix 'sic))) |
diff --git a/lisp/treesit.el b/lisp/treesit.el index 2b0eca7f5c2..e3c7d569ea6 100644 --- a/lisp/treesit.el +++ b/lisp/treesit.el | |||
| @@ -3056,11 +3056,17 @@ function signals an error." | |||
| 3056 | (apply #'treesit--call-process-signal | 3056 | (apply #'treesit--call-process-signal |
| 3057 | (if (file-exists-p "scanner.cc") c++ cc) | 3057 | (if (file-exists-p "scanner.cc") c++ cc) |
| 3058 | nil t nil | 3058 | nil t nil |
| 3059 | `("-fPIC" "-shared" | 3059 | (if (eq system-type 'cygwin) |
| 3060 | ,@(directory-files | 3060 | `("-shared" "-Wl,-dynamicbase" |
| 3061 | default-directory nil | 3061 | ,@(directory-files |
| 3062 | (rx bos (+ anychar) ".o" eos)) | 3062 | default-directory nil |
| 3063 | "-o" ,lib-name)) | 3063 | (rx bos (+ anychar) ".o" eos)) |
| 3064 | "-o" ,lib-name) | ||
| 3065 | `("-fPIC" "-shared" | ||
| 3066 | ,@(directory-files | ||
| 3067 | default-directory nil | ||
| 3068 | (rx bos (+ anychar) ".o" eos)) | ||
| 3069 | "-o" ,lib-name))) | ||
| 3064 | ;; Copy out. | 3070 | ;; Copy out. |
| 3065 | (unless (file-exists-p out-dir) | 3071 | (unless (file-exists-p out-dir) |
| 3066 | (make-directory out-dir t)) | 3072 | (make-directory out-dir t)) |
diff --git a/lisp/window.el b/lisp/window.el index 08ce8498655..d53136d406b 100644 --- a/lisp/window.el +++ b/lisp/window.el | |||
| @@ -7510,8 +7510,8 @@ Its value takes effect before processing the ACTION argument of | |||
| 7510 | If non-nil, this is an alist of elements (CONDITION . ACTION), | 7510 | If non-nil, this is an alist of elements (CONDITION . ACTION), |
| 7511 | where: | 7511 | where: |
| 7512 | 7512 | ||
| 7513 | CONDITION is passed to `buffer-match-p', along with the buffer | 7513 | CONDITION is passed to `buffer-match-p', along with the name of |
| 7514 | that is to be displayed and the ACTION argument of | 7514 | the buffer that is to be displayed and the ACTION argument of |
| 7515 | `display-buffer', to check if ACTION should be used. | 7515 | `display-buffer', to check if ACTION should be used. |
| 7516 | 7516 | ||
| 7517 | ACTION is a cons cell (FUNCTIONS . ALIST), where FUNCTIONS is an | 7517 | ACTION is a cons cell (FUNCTIONS . ALIST), where FUNCTIONS is an |
| @@ -7568,12 +7568,16 @@ all fail. It should never be set by programs or users. See | |||
| 7568 | (defun display-buffer-assq-regexp (buffer-or-name alist action) | 7568 | (defun display-buffer-assq-regexp (buffer-or-name alist action) |
| 7569 | "Retrieve ALIST entry corresponding to buffer specified by BUFFER-OR-NAME. | 7569 | "Retrieve ALIST entry corresponding to buffer specified by BUFFER-OR-NAME. |
| 7570 | This returns the cdr of the alist entry ALIST if the entry's | 7570 | This returns the cdr of the alist entry ALIST if the entry's |
| 7571 | key (its car) and BUFFER-OR-NAME satisfy `buffer-match-p', using | 7571 | key (its car) and the name of the buffer designated by |
| 7572 | the key as CONDITION argument of `buffer-match-p'. ACTION should | 7572 | BUFFER-OR-NAME satisfy `buffer-match-p', using the key as |
| 7573 | have the form of the action argument passed to `display-buffer'." | 7573 | CONDITION argument of `buffer-match-p'. ACTION should have the |
| 7574 | form of the action argument passed to `display-buffer'." | ||
| 7574 | (catch 'match | 7575 | (catch 'match |
| 7575 | (dolist (entry alist) | 7576 | (dolist (entry alist) |
| 7576 | (when (buffer-match-p (car entry) buffer-or-name action) | 7577 | (when (buffer-match-p (car entry) (if (stringp buffer-or-name) |
| 7578 | buffer-or-name | ||
| 7579 | (buffer-name buffer-or-name)) | ||
| 7580 | action) | ||
| 7577 | (throw 'match (cdr entry)))))) | 7581 | (throw 'match (cdr entry)))))) |
| 7578 | 7582 | ||
| 7579 | (defvar display-buffer--same-window-action | 7583 | (defvar display-buffer--same-window-action |