From 79e050f9e5ea2fbdc725deb37fe6c71d9ce7c4cf Mon Sep 17 00:00:00 2001 From: Eshel Yaron Date: Sat, 18 Jan 2025 11:18:30 +0100 Subject: [PATCH] Add 'major-mode-name' symbol property --- lisp/arc-mode.el | 2 ++ lisp/calc/calc.el | 2 ++ lisp/dired.el | 2 ++ lisp/emacs-lisp/derived.el | 1 + lisp/image-mode.el | 2 ++ lisp/org/org-agenda.el | 2 ++ lisp/progmodes/compile.el | 2 ++ lisp/simple.el | 2 ++ lisp/wdired.el | 1 + 9 files changed, 16 insertions(+) diff --git a/lisp/arc-mode.el b/lisp/arc-mode.el index 696684e914c..18dd0f42f8e 100644 --- a/lisp/arc-mode.el +++ b/lisp/arc-mode.el @@ -780,6 +780,8 @@ archive. (rename-buffer (concat " " (buffer-name))) (archive-extract))))) +(put 'archive-mode 'major-mode-name t) + ;; Archive mode is suitable only for specially formatted data. (put 'archive-mode 'mode-class 'special) diff --git a/lisp/calc/calc.el b/lisp/calc/calc.el index 80559c1657c..c1aee896851 100644 --- a/lisp/calc/calc.el +++ b/lisp/calc/calc.el @@ -1366,6 +1366,8 @@ Notations: 3.14e6 3.14 * 10^6 ;; be displayed in order to accept user input. (setq-local touch-screen-display-keyboard t)) +(put 'calc-mode 'major-mode-name t) + (defvar calc-check-defines 'calc-check-defines) ; Suitable for run-hooks. (defun calc-check-defines () (if (symbol-plist 'calc-define) diff --git a/lisp/dired.el b/lisp/dired.el index beab1b9cd20..6fcf31c166a 100644 --- a/lisp/dired.el +++ b/lisp/dired.el @@ -2832,6 +2832,8 @@ Keybindings: (add-hook 'context-menu-functions 'dired-context-menu 5 t) (run-mode-hooks 'dired-mode-hook)) +(put 'dired-mode 'major-mode-name t) + ;;; Idiosyncratic dired commands that don't deal with marks diff --git a/lisp/emacs-lisp/derived.el b/lisp/emacs-lisp/derived.el index 6b10150d04d..18fe4f7b411 100644 --- a/lisp/emacs-lisp/derived.el +++ b/lisp/emacs-lisp/derived.el @@ -243,6 +243,7 @@ No problems result if this variable is not bound. (if (fboundp 'derived-mode-set-parent) ;; Emacs≥30.1 (derived-mode-set-parent ',child ',parent) (put ',child 'derived-mode-parent ',parent)) + (put ',child 'major-mode-name t) ,(if group `(put ',child 'custom-mode-group ,group)) (defun ,child () diff --git a/lisp/image-mode.el b/lisp/image-mode.el index 653a7833162..dfd3d5504f6 100644 --- a/lisp/image-mode.el +++ b/lisp/image-mode.el @@ -679,6 +679,8 @@ Key bindings: (require 'image-converter) (image-converter-initialize)))) +(put 'image-mode 'major-mode-name t) + (defun image-mode--display () (if (not (image-get-display-property)) (progn diff --git a/lisp/org/org-agenda.el b/lisp/org/org-agenda.el index b36c20cd7cf..a2cf3c77be7 100644 --- a/lisp/org/org-agenda.el +++ b/lisp/org/org-agenda.el @@ -2400,6 +2400,8 @@ The following commands are available: (org-agenda-set-mode-name) (run-mode-hooks 'org-agenda-mode-hook)) +(put 'org-agenda-mode 'major-mode-name t) + (substitute-key-definition #'undo #'org-agenda-undo org-agenda-mode-map global-map) (org-defkey org-agenda-mode-map "\C-i" #'org-agenda-goto) diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el index f3a89860240..4111ae92088 100644 --- a/lisp/progmodes/compile.el +++ b/lisp/progmodes/compile.el @@ -2440,6 +2440,8 @@ Runs `compilation-mode-hook' with `run-mode-hooks' (which see). (setq buffer-read-only t) (run-mode-hooks 'compilation-mode-hook)) +(put 'compilation-mode 'major-mode-name t) + ;;;###autoload (put 'define-compilation-mode 'doc-string-elt 3) diff --git a/lisp/simple.el b/lisp/simple.el index 164f5c089bf..83a3e71b380 100644 --- a/lisp/simple.el +++ b/lisp/simple.el @@ -561,6 +561,8 @@ Other major modes are defined by comparison with this one." (kill-all-local-variables) (run-mode-hooks)) +(put 'fundamental-mode 'major-mode-name t) + (define-derived-mode clean-mode fundamental-mode "Clean" "A mode that removes all overlays and text properties." (kill-all-local-variables t) diff --git a/lisp/wdired.el b/lisp/wdired.el index c7409446b19..7bae26e9259 100644 --- a/lisp/wdired.el +++ b/lisp/wdired.el @@ -215,6 +215,7 @@ symbolic link targets, and filenames permission." (interactive) (error "This mode can be enabled only by `wdired-change-to-wdired-mode'")) (put 'wdired-mode 'mode-class 'special) +(put 'wdired-mode 'major-mode-name 't) (declare-function dired-isearch-search-filenames "dired-aux") -- 2.39.5