Suggestion: Output list of macro names and keystrokes


It would be really handy to have a context menu item to output (text, CSV, etc.) the highlighted macros in the Macros panel. As you can see from the discussion in the link above, there are a couple of workarounds, but it would be very nice to be able to do it within KM.



If you link to a forum topic, just put the link (not a tiny URL thing) in a line by itself and Discourse will insert a summary which gives a much better result (and avoids any dependency on third-party URL expansion).

You can export the selected macros, which export is in XML, which can be parsed any way you like to extract whatever information you might want.

Keyboard Maestro could export information in any number of different formats, but it would have to choose one of them to solve the desired request, and then which one would it choose? Just the name? Just the name and trigger? What about other information you might want, what about the icon, or the full macro details. Which should I choose? Why CSV over XML or JSON?

This is the reason it is not done - I don't know what to do…


I would suggest exporting in CSV, since that is a very common format and usable by most apps that might be used to work with it. I would suggest exporting both the macro name and trigger since, I suspect, that is what most people would be interested in. Also, if only the macro name is needed, it's easy to delete the other.

Now, you know what to do! :smiley_cat:



1 Like

One advantage of this - especially in CSV format - is it would help me make a crib sheet of shortcuts.

I don’t know if I’d ever print it but at least making a PDF eventually would be helpful.

1 Like

I agree with @tonycr46, and would suggest you start with that as a minimum feature.

Given that, it should not be too hard to prompt the user with a list of macro properties, and allow him/her to select the ones to be exported. I've seen this approach in many apps.

Hey Peter,

I think I'd let the user put tokens for the values they want in an action field.

The user themselves could decide upon CSV or TSV by emplacing the literal characters between the tokens in the field.

This technique would be flexible and (I think) have the least amount of design time.