I have a program that generates lisp code from an object browser. It isn't a macro recorder, but allows the user to navigate the application object and then you hit the code button and it creates a text file with the code for the actions you just performed.