Emacs Function to Open a New Eshell and Rename it

45 Views Asked by At

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?

1

There are 1 best solutions below

0
larry77 On BEST ANSWER

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.