diff options
| author | Stefan Monnier | 2023-02-24 14:18:24 -0500 |
|---|---|---|
| committer | Stefan Monnier | 2023-02-24 14:18:24 -0500 |
| commit | a129f257720dbef9adcaff58862d45ac142f93f6 (patch) | |
| tree | 99b56f2ee6e9ff4b749345efebc074901826b046 /src | |
| parent | 926e3fb3be5c84e71316c6f184abe05bdb29bff2 (diff) | |
| download | emacs-a129f257720dbef9adcaff58862d45ac142f93f6.tar.gz emacs-a129f257720dbef9adcaff58862d45ac142f93f6.zip | |
kmacro: Simplify register code and recent change
While reviewing uses of `last-kbd-macro` for more problems like
those of bug#61700 I noticed that we don't need the `kmacro-register`
type any more (we can directly use the new `kmacro` type instead).
Also `macros.el` requires `kmacro` so rather than autoload
`macro--string-to-vector` it's simpler to move the function to
`kmacro.el`. And while at it fold into it the `stringp` test that's used
before every call to that function.
* lisp/kmacro.el (kmacro--to-vector): Rename from
`macro--string-to-vector`, move from `mcros.el`, and make it work for
vectors.
(kmacro-ring-head, kmacro-lambda-form): Simplify accordingly.
(cl-print-object): Remove unused declaration.
(kmacro-register): Delete type. Use `kmacro` objects instead.
(register-val-jump-to, register-val-describe, register-val-insert):
Rewrite accordingly.
(kmacro-to-register): Put the `kmacro` object.
* lisp/macros.el (macro--string-to-vector): Move to `kmacro.el`.
(insert-kbd-macro): Use `kmacro--to-vector`.
* src/macros.c (end_kbd_macro): Always generate a vector.
Diffstat (limited to 'src')
| -rw-r--r-- | src/macros.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/macros.c b/src/macros.c index 0db0af89a71..d1541d2817f 100644 --- a/src/macros.c +++ b/src/macros.c | |||
| @@ -128,9 +128,9 @@ end_kbd_macro (void) | |||
| 128 | update_mode_lines = 20; | 128 | update_mode_lines = 20; |
| 129 | kset_last_kbd_macro | 129 | kset_last_kbd_macro |
| 130 | (current_kboard, | 130 | (current_kboard, |
| 131 | make_event_array ((current_kboard->kbd_macro_end | 131 | Fvector ((current_kboard->kbd_macro_end |
| 132 | - current_kboard->kbd_macro_buffer), | 132 | - current_kboard->kbd_macro_buffer), |
| 133 | current_kboard->kbd_macro_buffer)); | 133 | current_kboard->kbd_macro_buffer)); |
| 134 | } | 134 | } |
| 135 | 135 | ||
| 136 | DEFUN ("end-kbd-macro", Fend_kbd_macro, Send_kbd_macro, 0, 2, "p", | 136 | DEFUN ("end-kbd-macro", Fend_kbd_macro, Send_kbd_macro, 0, 2, "p", |