emacsorphanage / macrostep

interactive macro-expander for Emacs
GNU General Public License v3.0
15 stars 6 forks source link

Fix collection of macro forms for Emacs master #9

Closed lwf closed 1 year ago

lwf commented 1 year ago

As of Emacs commit ca4bc9baf9d2c861ad776da07e56381da8e3722a, macroexpand-1 is used by macroexpand-all rather than macroexpand.

tarsius commented 1 year ago

Please explain this in more detail.

I am guessing the goal here is also to get more warning about obsolete intermediate expansions. However unlike the modified Emacs code, our code does not seem to deal with obsolete expansions, so maybe not.

If there is another reason to switch the function, what is it? Did you run into some issue, which is fixed by this change, and if so how and why does that fix work?

lwf commented 1 year ago

Due to macroexp-macroexpand having been modified to use macroexpand-1, forms are no longer enumerated properly which causes propertization to fail. This means movement commands such as macrostep-next-macro will not work (you can still put point on a macro form manually and use macrostep-expand).

The code originally submitted did not override both macroexpand and macroexpand-1. I have updated the PR to correct this.

tarsius commented 1 year ago

Thanks!