diff --git a/doc/emacs/display.texi b/doc/emacs/display.texi index c022321f8dc..65e462576da 100644 --- a/doc/emacs/display.texi +++ b/doc/emacs/display.texi @@ -783,7 +783,7 @@ Most windows do not have a header line---only some special modes, such Info mode, create one. The @code{header-line-active} and @code{header-line-inactive} faces (which -are the ones used on the header lines) inherit from this face. +are the ones actually used on the header lines) inherit from this face. @cindex faces for header lines @item header-line-active diff --git a/etc/NEWS b/etc/NEWS index 55487aeb3a6..b6c21018779 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -163,9 +163,10 @@ obsolete. Use 'M-x list-packages' to install the 'idlwave' package from GNU ELPA instead. +++ -** New face 'header-line-active'. -This inherits from the 'header-line' face, but is the face actually used -on the header lines (along with 'header-line-inactive'). +** New faces 'header-line-active' and 'header-line-inactive'. +These inherit from the 'header-line' face, but the faces actually used +on the header lines are now these two: the selected window uses +'header-line-active', non-selected windows use 'header-line-inactive'. ** In 'customize-face', the "Font family" attribute now supports completion. diff --git a/lisp/man.el b/lisp/man.el index 816c75d749c..d5ac8b93d99 100644 --- a/lisp/man.el +++ b/lisp/man.el @@ -973,6 +973,27 @@ foo(sec)[, bar(sec) [, ...]] [other stuff] - description" (search-forward-regexp "\\=, *\\([^ \t,]+\\)" bound t))))) (nreverse table))) +(defvar Man-man-k-flags + ;; It's not clear which man page will "always" be available, `man -k man' + ;; seems like the safest choice, but `man -k apropos' seems almost as safe + ;; and usually returns a much shorter output. + (with-temp-buffer + (with-demoted-errors "%S" (call-process "man" nil t nil "-k" "apropos")) + (let ((lines (count-lines (point-min) (point-max))) + (completions (Man-parse-man-k))) + (if (>= (length completions) lines) + '("-k") ;; "-k" seems to return sane results: look no further! + (erase-buffer) + ;; Try "-k -l" (bug#73656). + (with-demoted-errors "%S" (call-process "man" nil t nil + "-k" "-l" "apropos")) + (let ((lines (count-lines (point-min) (point-max))) + (completions (Man-parse-man-k))) + (if (and (> lines 0) (>= (length completions) lines)) + '("-k" "-l") ;; "-k -l" seems to return sane results. + '("-k")))))) + "List of arguments to pass to get the expected \"man -k\" output.") + (defun Man-completion-table (string pred action) (cond ;; This ends up returning t for pretty much any string, and hence leads to @@ -1007,9 +1028,13 @@ foo(sec)[, bar(sec) [, ...]] [other stuff] - description" ;; error later. (when (eq 0 (ignore-errors - (process-file + (apply + #'process-file manual-program nil '(t nil) nil - "-k" (concat (when (or Man-man-k-use-anchor + ;; FIXME: When `process-file' runs on a remote hosts, + ;; `Man-man-k-flags' may be wrong. + `(,@Man-man-k-flags + ,(concat (when (or Man-man-k-use-anchor (string-equal prefix "")) "^") (if (string-equal prefix "") @@ -1021,7 +1046,7 @@ foo(sec)[, bar(sec) [, ...]] [other stuff] - description" ;; But we don't have that, and ;; shell-quote-argument does ;; the job... - (shell-quote-argument prefix)))))) + (shell-quote-argument prefix))))))) (setq table (Man-parse-man-k))))) ;; Cache the table for later reuse. (when table diff --git a/src/pdumper.c b/src/pdumper.c index c0b36b1ca44..c8baa311854 100644 --- a/src/pdumper.c +++ b/src/pdumper.c @@ -2128,7 +2128,7 @@ dump_marker (struct dump_context *ctx, const struct Lisp_Marker *marker) static dump_off dump_interval_node (struct dump_context *ctx, struct itree_node *node) { -#if CHECK_STRUCTS && !defined (HASH_itree_node_50DE304F13) +#if CHECK_STRUCTS && !defined (HASH_itree_node_03626AFCA9) # error "itree_node changed. See CHECK_STRUCTS comment in config.h." #endif struct itree_node out; diff --git a/test/lisp/net/tramp-tests.el b/test/lisp/net/tramp-tests.el index d658b061116..59b4bbb7c6a 100644 --- a/test/lisp/net/tramp-tests.el +++ b/test/lisp/net/tramp-tests.el @@ -45,6 +45,12 @@ ;; might be too heavy. Setting $REMOTE_PARALLEL_PROCESSES to a proper ;; value less than 10 could help. +;; This test suite obeys the environment variables $EMACS_HYDRA_CI and +;; $EMACS_EMBA_CI, used on the Emacs CI/CD platforms. + +;; The following test tags are used: `:expensive-test', +;; `:tramp-asynchronous-processes' and `:unstable'. + ;; A whole test run can be performed calling the command `tramp-test-all'. ;;; Code: @@ -82,7 +88,7 @@ (defvar tramp-remote-process-environment) (defvar tramp-use-connection-share) -;; Declared in Emacs 30. +;; Declared in Emacs 30.1. (defvar remote-file-name-access-timeout) (defvar remote-file-name-inhibit-delete-by-moving-to-trash) @@ -264,6 +270,13 @@ being the result.") "srw" (file-attribute-modes (file-attributes file))) (string-match-p (rx bos (literal tramp-fuse-name-prefix) (regexp tramp-method-regexp) ".") + (file-name-nondirectory file)) + ;; Prior Emacs 31.1, the FUSE mount points where + ;; "tramp-rclone.*" and "tramp-sshfs.*". We should + ;; exclude them as well, in order not to make + ;; trouble. + (string-match-p (rx bos (literal tramp-temp-name-prefix) + (| "rclone" "fuse") ".") (file-name-nondirectory file))) (tramp--test-message "Delete %s" file) (if (file-directory-p file) @@ -7945,7 +7958,7 @@ process sentinels. They shall not disturb each other." (skip-unless (tramp--test-enabled)) (skip-unless (tramp--test-sh-p)) (skip-unless (not (tramp--test-crypt-p))) - ;; Starting with Emacs 29.1, `dired-compress-file' is performed by + ;; Starting with Emacs 29.1, `dired-compress-dir' is performed by ;; default handler. (skip-unless (not (tramp--test-emacs29-p)))