0

I run debian stable on my box and after updating to debian 12 today, one function in my .emacs file is giving me a headache (I am not an elisp expert and I do not remember where it came from). The function is



(fset 'aux
   (lambda (&optional arg) "Keyboard macro." (interactive "p") (kmacro-exec-ring-item (quote ([21 escape 120 101 115 104 101 108 108 return escape 120 114 101 110 97 109 return 97 117 120 105 108 105 97 114 121 return] 0 "%d")) arg)))


using M+aux, this function used to open a second eshell on emacs and rename it "auxiliary"

After updating debian and emacs, now the function opens a new eshell, but passes the command auxiliary, after which eshell complains because the command does not exist.

What happens and how to recover the previous behavior of the function?

Drew
  • 29,895
  • 7
  • 74
  • 104
larry77
  • 1,309
  • 14
  • 29
  • 1
    That code defines an Elisp command named `aux`. The definition is a from a keyboard macro (no connection with Lisp macros). It runs command `rename-auxilliary` in an eshell buffer. Show the error message you get or describe the problematic behavior. – Drew Jun 10 '23 at 23:30

1 Answers1

0

Indeed this was a macro. I recorded a new one

 (fset 'aux
  (kmacro-lambda-form [f5 escape ?x ?r ?e ?n ?a ?m ?e ?- ?b ?u ?f ?f ?e ?r return ?a ?u ?x ?i ?l ?i ?a ?r ?y return] 0 "%d"))

Which gets the job done.

larry77
  • 1,309
  • 14
  • 29