Function: kmacro-menu-mode

kmacro-menu-mode is an interactive and byte-compiled function defined in kmacro.el.gz.

Signature

(kmacro-menu-mode)

Documentation

Major mode for listing and editing keyboard macros.

In addition to any hooks its parent mode tabulated-list-mode might have run, this mode runs the hook kmacro-menu-mode-hook, as the final or penultimate step during initialization.

# kmacro-menu-edit-position
- negative-argument
0 digit-argument
1 digit-argument
2 digit-argument
3 digit-argument
4 digit-argument
5 digit-argument
6 digit-argument
7 digit-argument
8 digit-argument
9 digit-argument
< beginning-of-buffer
<follow-link> mouse-face
<keymap> C-M-i backward-button
<keymap> TAB forward-button
<mouse-2> mouse-select-window
> end-of-buffer
? describe-mode
C kmacro-menu-do-copy
C-x C-t kmacro-menu-transpose
D kmacro-menu-do-delete
DEL kmacro-menu-unmark-backward
DEL scroll-down-command
M-<left> tabulated-list-previous-column
M-<right> tabulated-list-next-column
RET kmacro-menu-edit-column
S tabulated-list-sort
S-SPC scroll-down-command
SPC scroll-up-command
SPC..~ undefined
U kmacro-menu-unmark-all
c kmacro-menu-edit-counter
d kmacro-menu-flag-for-deletion
e kmacro-menu-edit-keys
f kmacro-menu-edit-format
g revert-buffer
h describe-mode
m kmacro-menu-mark
n next-line
p previous-line
q quit-window
u kmacro-menu-unmark
x kmacro-menu-do-flagged-delete
{ tabulated-list-narrow-current-column
} tabulated-list-widen-current-column

Probably introduced at or before Emacs version 30.1.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/kmacro.el.gz
(define-derived-mode kmacro-menu-mode tabulated-list-mode
  "Keyboard Macro Menu"
  "Major mode for listing and editing keyboard macros."
  (make-local-variable 'kmacro-menu--marks)
  (make-local-variable 'kmacro-menu--deletion-flags)
  (setq-local tabulated-list-format
              [("Position" 8 nil)
               ("Counter"  8 nil :right-align t :pad-right 2)
               ("Format"  8 nil)
               ("Formatted" 10 nil)
               ("Keys" 1 nil)])
  (setq-local tabulated-list-padding 2)
  (add-hook 'tabulated-list-revert-hook #'kmacro-menu--refresh nil t)
  (tabulated-list-init-header)
  (unless (kmacro-ring-empty-p)
    (kmacro-menu--refresh)
    (tabulated-list-print)))