1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-06 06:20:55 -08:00

Merge from origin/emacs-30

3b2bfdfef6 ; Fix last change (bug#79042)
740138b113 ; Fix last change
e675d5ba64 ; Update doc strings of Dired functions due to 'marked' v...
a05be41af7 ; * lisp/battery.el (battery-bsd-apm): Explain a FIXME (b...
fe3ac1575a Fix :box attribute of faces in Leuven themes.
86e32aed4a ; define-globalized-minor-mode: Fix capitalization.
This commit is contained in:
Eli Zaretskii 2025-07-19 06:56:58 -04:00
commit fa61deda32
7 changed files with 73 additions and 45 deletions

View file

@ -683,7 +683,7 @@ more..."
`(lsp-ui-doc-background ((,class (:background "#2d2058")))) `(lsp-ui-doc-background ((,class (:background "#2d2058"))))
`(lsp-ui-sideline-code-action ((,class (:foreground "#ffffff" :background "#2526c0")))) `(lsp-ui-sideline-code-action ((,class (:foreground "#ffffff" :background "#2526c0"))))
`(lui-button-face ((,class ,link))) `(lui-button-face ((,class ,link)))
`(lui-highlight-face ((,class (:box '(:line-width 1 :color "#38ffff") :foreground "#38ffff" :background "#06017f")))) ; my nickname `(lui-highlight-face ((,class (:box (:line-width 1 :color "#38ffff") :foreground "#38ffff" :background "#06017f")))) ; my nickname
`(lui-time-stamp-face ((,class (:foreground "#64df19")))) `(lui-time-stamp-face ((,class (:foreground "#64df19"))))
`(magit-blame-header ((,class (:inherit magit-diff-file-header)))) `(magit-blame-header ((,class (:inherit magit-diff-file-header))))
`(magit-blame-heading ((,class (:overline "#5d5862" :foreground "#06ffff" :background "#3c3741")))) `(magit-blame-heading ((,class (:overline "#5d5862" :foreground "#06ffff" :background "#3c3741"))))

View file

@ -737,7 +737,7 @@ more..."
`(lsp-ui-doc-background ((,class (:background "#F6FECD")))) `(lsp-ui-doc-background ((,class (:background "#F6FECD"))))
`(lsp-ui-sideline-code-action ((,class (:foreground "#000000" :background "#FFF68F")))) `(lsp-ui-sideline-code-action ((,class (:foreground "#000000" :background "#FFF68F"))))
`(lui-button-face ((,class ,link))) `(lui-button-face ((,class ,link)))
`(lui-highlight-face ((,class (:box '(:line-width 1 :color "#CC0000") :foreground "#CC0000" :background "#FFFF88")))) ; my nickname `(lui-highlight-face ((,class (:box (:line-width 1 :color "#CC0000") :foreground "#CC0000" :background "#FFFF88")))) ; my nickname
`(lui-time-stamp-face ((,class (:foreground "purple")))) `(lui-time-stamp-face ((,class (:foreground "purple"))))
`(magit-blame-header ((,class (:inherit magit-diff-file-header)))) `(magit-blame-header ((,class (:inherit magit-diff-file-header))))
`(magit-blame-heading ((,class (:overline "#A7A7A7" :foreground "red" :background "#E6E6E6")))) `(magit-blame-heading ((,class (:overline "#A7A7A7" :foreground "red" :background "#E6E6E6"))))

View file

@ -951,7 +951,10 @@ The following %-sequences are provided:
%h Remaining time (to charge or discharge) in hours %h Remaining time (to charge or discharge) in hours
%t Remaining time (to charge or discharge) in the form `h:min'" %t Remaining time (to charge or discharge) in the form `h:min'"
(let* ((os-name (car (split-string (let* ((os-name (car (split-string
;; FIXME: Can't we use something like `system-type'? ;; We cannot use `system-type' because some BSD
;; systems fall under the 'berkley-unix umbrella
;; and we're trying to make the distinction
;; among them here.
(battery--call-process-to-string "uname")))) (battery--call-process-to-string "uname"))))
(apm-flag (pcase os-name (apm-flag (pcase os-name
("OpenBSD" "mP") ("OpenBSD" "mP")

View file

@ -1931,7 +1931,10 @@ If invoked on a directory, compress all of the files in
the directory and all of its subdirectories, recursively, the directory and all of its subdirectories, recursively,
into a .tar.gz archive. into a .tar.gz archive.
If invoked on a .tar.gz or a .tgz or a .zip or a .7z archive, If invoked on a .tar.gz or a .tgz or a .zip or a .7z archive,
uncompress and unpack all the files in the archive." uncompress and unpack all the files in the archive.
When called from Lisp, if ARG is the symbol `marked', compress
only the marked files, or none if no files are marked."
(interactive "P" dired-mode) (interactive "P" dired-mode)
(dired-map-over-marks-check #'dired-compress arg 'compress t)) (dired-map-over-marks-check #'dired-compress arg 'compress t))
@ -1960,7 +1963,10 @@ uncompress and unpack all the files in the archive."
;;;###autoload ;;;###autoload
(defun dired-do-byte-compile (&optional arg) (defun dired-do-byte-compile (&optional arg)
"Byte compile marked (or next ARG) Emacs Lisp files." "Byte compile marked (or next ARG) Emacs Lisp files.
When called from Lisp, if ARG is the symbol `marked', byte-compile
only the marked files, or none if no files are marked."
(interactive "P" dired-mode) (interactive "P" dired-mode)
(dired-map-over-marks-check #'dired-byte-compile arg 'byte-compile t)) (dired-map-over-marks-check #'dired-byte-compile arg 'byte-compile t))
@ -1977,7 +1983,10 @@ uncompress and unpack all the files in the archive."
;;;###autoload ;;;###autoload
(defun dired-do-load (&optional arg) (defun dired-do-load (&optional arg)
"Load the marked (or next ARG) Emacs Lisp files." "Load the marked (or next ARG) Emacs Lisp files.
When called from Lisp, if ARG is the symbol `marked', load
only the marked files, or none if no files are marked."
(interactive "P" dired-mode) (interactive "P" dired-mode)
(dired-map-over-marks-check #'dired-load arg 'load t)) (dired-map-over-marks-check #'dired-load arg 'load t))
@ -1993,7 +2002,10 @@ or delete subdirectories can bypass this machinery. Hence, you sometimes
may have to reset some subdirectory switches after a `dired-undo'. may have to reset some subdirectory switches after a `dired-undo'.
You can reset all subdirectory switches to the default using You can reset all subdirectory switches to the default using
\\<dired-mode-map>\\[dired-reset-subdir-switches]. \\<dired-mode-map>\\[dired-reset-subdir-switches].
See Info node `(emacs)Subdir switches' for more details." See Info node `(emacs)Subdir switches' for more details.
When called from Lisp, if ARG is the symbol `marked', redisplay
only the marked files, or none if no files are marked."
;; Moves point if the next ARG files are redisplayed. ;; Moves point if the next ARG files are redisplayed.
(interactive "P\np" dired-mode) (interactive "P\np" dired-mode)
(if (and test-for-subdir (dired-get-subdir)) (if (and test-for-subdir (dired-get-subdir))

View file

@ -951,18 +951,17 @@ Return value is the number of files marked, or nil if none were marked."
(defmacro dired-map-over-marks (body arg &optional show-progress (defmacro dired-map-over-marks (body arg &optional show-progress
distinguish-one-marked) distinguish-one-marked)
"Eval BODY with point on each marked line. Return a list of BODY's results. "Eval BODY with point on each marked line. Return a list of BODY's results.
If no marked file could be found, execute BODY on the current If no marked file could be found and ARG is nil, execute BODY on the current
line. ARG, if non-nil, specifies the files to use instead of the line. If ARG is non-nil, it specifies the files to use instead of the
marked files. marked files.
If ARG is an integer, use the next ARG (or previous -ARG, if If ARG is an integer, use the next ARG (or previous -ARG, if ARG<0)
ARG<0) files. In that case, point is dragged along. This is so files. In that case, point is dragged along. This is so that
that commands on the next ARG (instead of the marked) files can commands on the next ARG (instead of the marked) files can be
be chained easily. chained easily.
For any other non-nil value of ARG, use the current file. If ARG is the symbol `marked', use only marked files; if none are
marked, don't eval BODY and return nil.
If ARG is `marked', don't return the current file if nothing else For any other non-nil value of ARG, use the current file.
is marked.
If optional third arg SHOW-PROGRESS evaluates to non-nil, If optional third arg SHOW-PROGRESS evaluates to non-nil,
redisplay the Dired buffer after each file is processed. redisplay the Dired buffer after each file is processed.
@ -971,14 +970,16 @@ No guarantee is made about the position on the marked line.
BODY must ensure this itself if it depends on this. BODY must ensure this itself if it depends on this.
Search starts at the beginning of the buffer, thus the car of the Search starts at the beginning of the buffer, thus the car of the
list corresponds to the line nearest to the buffer's bottom. returnede list corresponds to the line nearest to the buffer's bottom.
This is also true for (positive and negative) integer values of This is also true for (positive and negative) integer values of
ARG. ARG.
BODY should not be too long as it is expanded four times. BODY should not be too long as it is expanded four times.
If DISTINGUISH-ONE-MARKED is non-nil, then if we find just one If DISTINGUISH-ONE-MARKED is non-nil, then if we find just one
marked file, return (t FILENAME) instead of (FILENAME)." marked file, return (t BODY-RESULT) instead of (BODY-RESULT),
where BODY-RESULT is the result of evaluating BODY with point
on the single marked file's line."
;; ;;
;;Warning: BODY must not add new lines before point - this may cause an ;;Warning: BODY must not add new lines before point - this may cause an
;;endless loop. ;;endless loop.
@ -1031,18 +1032,21 @@ marked file, return (t FILENAME) instead of (FILENAME)."
(defun dired-get-marked-files (&optional localp arg filter distinguish-one-marked error) (defun dired-get-marked-files (&optional localp arg filter distinguish-one-marked error)
"Return the marked files' names as list of strings. "Return the marked files' names as list of strings.
The list is in the same order as the buffer, that is, the car is the The list is in the same order as the Dired buffer text, that is, the car
first marked file. is the first marked file.
Values returned are normally absolute file names. Values returned are normally absolute file names.
Optional arg LOCALP as in `dired-get-filename'. Optional arg LOCALP is as in `dired-get-filename'.
Optional second argument ARG, if non-nil, specifies files near Optional second argument ARG, if non-nil, specifies files near
point instead of marked files. It usually comes from the prefix point to return instead of marked files. It usually comes from the
argument. prefix argument of the caller.
If ARG is an integer, use the next ARG files. If ARG is an integer, return the next ARG files (previous if ARG is
negative).
If ARG is the symbol `marked', return only marked files; return nil
if none are marked
If ARG is any other non-nil value, return the current file name. If ARG is any other non-nil value, return the current file name.
If no files are marked, and ARG is nil, also return the current file name. If no files are marked, and ARG is nil, also return the current file name.
Optional third argument FILTER, if non-nil, is a function to select Optional third argument FILTER, if non-nil, is a function to select
some of the files--those for which (funcall FILTER FILENAME) is non-nil. some of the files--those for which (funcall FILTER FILENAME) is non-nil.
If DISTINGUISH-ONE-MARKED is non-nil, then if we find just one marked file, If DISTINGUISH-ONE-MARKED is non-nil, then if we find just one marked file,
return (t FILENAME) instead of (FILENAME). return (t FILENAME) instead of (FILENAME).
@ -1901,8 +1905,8 @@ see `dired-use-ls-dired' for more details.")
(defun dired-mouse-drag (event) (defun dired-mouse-drag (event)
"Begin a drag-and-drop operation for the file at EVENT. "Begin a drag-and-drop operation for the file at EVENT.
If there are marked files and that file is marked, drag every If there are marked files and the file at EVENT is marked, drag all the
other marked file as well. Otherwise, unmark all files." other marked files as well. Otherwise, unmark all files."
(interactive "e" dired-mode) (interactive "e" dired-mode)
(when mark-active (when mark-active
(deactivate-mark)) (deactivate-mark))
@ -1938,19 +1942,24 @@ other marked file as well. Otherwise, unmark all files."
;; We can get an error if there's by some chance no file ;; We can get an error if there's by some chance no file
;; name at point. ;; name at point.
(condition-case error (condition-case error
(let ((filename (with-selected-window (posn-window (let ((filename
(event-end event)) (with-selected-window (posn-window
(let ((marked-files (dired-map-over-marks (dired-get-filename (event-end event))
nil 'no-error-if-not-filep) (let ((marked-files
'marked)) (dired-map-over-marks (dired-get-filename
(file-name (dired-get-filename nil 'no-error-if-not-filep))) nil
(if (and marked-files 'no-error-if-not-filep)
(member file-name marked-files)) 'marked))
marked-files (file-name
(when marked-files (dired-get-filename nil
(dired-map-over-marks (dired-unmark nil) 'no-error-if-not-filep)))
'marked)) (if (and marked-files
file-name))))) (member file-name marked-files))
marked-files
(when marked-files
(dired-map-over-marks (dired-unmark nil)
'marked))
file-name)))))
(when filename (when filename
(if (and (consp filename) (if (and (consp filename)
(cdr filename)) (cdr filename))
@ -4055,7 +4064,10 @@ non-empty directories is allowed."
(defun dired-do-delete (&optional arg) (defun dired-do-delete (&optional arg)
"Delete all marked (or next ARG) files. "Delete all marked (or next ARG) files.
`dired-recursive-deletes' controls whether deletion of `dired-recursive-deletes' controls whether deletion of
non-empty directories is allowed." non-empty directories is allowed.
When called from Lisp, if ARG is the symbol `marked', delete
only the marked files, or none if no files are marked."
;; This is more consistent with the file marking feature than ;; This is more consistent with the file marking feature than
;; dired-do-flagged-delete. ;; dired-do-flagged-delete.
(interactive "P" dired-mode) (interactive "P" dired-mode)

View file

@ -456,7 +456,7 @@ switch on the minor mode in all major modes), nil (meaning don't
switch on in any major mode), a list of modes (meaning switch on only switch on in any major mode), a list of modes (meaning switch on only
in those modes and their descendants), or a list (not MODES...), in those modes and their descendants), or a list (not MODES...),
meaning switch on in any major mode except MODES. The value can also meaning switch on in any major mode except MODES. The value can also
mix all of these forms, see the info node `(elisp)Defining Minor Modes' mix all of these forms, see the Info node `(elisp)Defining Minor Modes'
for details. The :predicate key causes the macro to create a user option for details. The :predicate key causes the macro to create a user option
named the same as MODE, but ending with \"-modes\" instead of \"-mode\". named the same as MODE, but ending with \"-modes\" instead of \"-mode\".
That user option can then be used to customize in which modes this That user option can then be used to customize in which modes this

View file

@ -62,8 +62,9 @@ Dired and you might want to turn it off."
If no file is marked, toggle display of thumbnail on the current file's line. If no file is marked, toggle display of thumbnail on the current file's line.
ARG, if non-nil (interactively, the prefix argument), specifies the files ARG, if non-nil (interactively, the prefix argument), specifies the files
whose thumbnail display to toggle instead of the marked files: if ARG is an whose thumbnail display to toggle instead of the marked files: if ARG is an
integer, use the next ARG (or previous -ARG, if ARG<0) files; any other integer, use the next ARG (or previous -ARG, if ARG<0) files; if ARG is
value of ARG means toggle thumbnail display of the current line's file." the symbol `marked', use only the marked files, if any; any other value of
ARG means toggle thumbnail display of the current line's file."
(interactive "P" dired-mode) (interactive "P" dired-mode)
(setq image-dired--generate-thumbs-start (current-time)) (setq image-dired--generate-thumbs-start (current-time))
(dired-map-over-marks (dired-map-over-marks