MACRO: [KMFAM] Favorite Actions and Macros v1.4 Released 2021-12-09

Which part worked?

Just making a macro with an action of Semaphore Reset. I triggered it and everything started working.

@peternlewis Peter - We had a situation where a Semaphore didn’t get unlocked. You can wade back through if you want, or here’s the gist:

While one of my my macros was running, which had a semaphore locked, @nikivi shut down KM. The semaphore didn’t get unlocked. I can’t duplicate this on my machine, so I’m not sure what happened.

Got any ideas?

PS to @nikivi: A semaphore is something that can only be locked by one process at a time. I lock the semaphore at the start of a KMFAM macro, and it should automatically get unlocked when the macro finishes. This way I make sure that only one KMFAM macro runs at a time. Otherwise, some variables might get confused. (If you need specifics, let me know.)

Dan, is it possible to use your macro, or one of it’s sub-macros, in another macro to insert one or more Actions at a specific point?

Can you give me an example? I always understand better with concrete examples, even if they’re made up.

Suppose I have a macro that inserts Actions using the KM menu, but at some point I want to use one of my Fav Actions.

I think @MitchellModel has a use case here:

I don’t have an immediate need, or even a long term need at this point.
I was just asking for information, not to suggest that you develop this capability if it does not already exist.

Can you give me a specific example? The reason I’m asking is that it’s conceivable this is something I have on the backburner, but I want to make sure it’s the same thing.

Actually, I have a set of utility macros that I’ll clean up and post. They’ll help do all of these types of things easily.

I’ll get them done in the next day or so.

I would if I could, but I don’t have a current use case, let alone a sample macro.
I was just asking for info.
If you don’t already have it, please don’t spend any time on it on my account.

No, I’ve been meaning to put these together for awhile. With a little direction, people can really do some fun stuff with this. It’s about time I do it.

Are we talking about the same thing?

If I copy an action, I can click on the macro (in the macro column), or in the text field of the macro name, and Paste will paste to the end of the macro.

I checked this works with 7.2.1, so it is not something I have fixed since then. So I’m confused.

Semaphores are not stored to disk. So my guess would be that the macro was actually still running in the Keyboard Maestro Engine, and by “shut down KM” all that happened was the Keyboard Maestro Editor was quit. If the Keyboard Maestro Engine was quit, then all semaphores would be reset.

I could be wrong, there could be some way for Semaphores to be left locked when the macros are all quit, but its unlikely as there is actually a safety feature built in so that whenever there are no macros running, if there are any semaphores still locked, they will be released with an error report in the log file.

1 Like

Yeah. I was thinking that same thing. I won’t worry about it unless it happens again.


Yeah, I can verify that also. It must have something to do with some of my code somewhere, although I can’t imagine what. But I’m obviously doing something wrong somewhere.

Thanks for the help.

Loving this and diving into loading my own utilities folder into this. (Can't wait to see your utility macros) Totally inconsequential question about the screen shots: It seems there an ideal editor window size that corresponds with the ideal Favorite Macro screen shot?

This is my preferred layout:

Which produces this, with a cut off right edge:

It seems that this is the ideal layout:

Which produces an ideal screenshot:

Is this something addressable, from my end or yours, or is it a consequence of the way you've written the code? It in no way lessens the usefulness, I am just curious :slight_smile:


That last image doesn’t let me expand it to it’s normal size, so I can’t quite tell what’s different. Can you updated it with a better one? Thanks.

PS: And no problem. I knew there would be tweaking necessary for the images, but I had no idea what it would be, so I just figured you guys would tell me. :slight_smile:

I’m surprised I haven’t heard about any isues with Retina displays. Maybe I shouldn’t have said that out loud… :open_mouth:

Sorry, I'll try again, with just the screenshot images. Also, I am on a Retina display if that helps diagnose.

I have found a temporary solution by resizing the windows. Not ideal but functional! :slight_smile:

Oh, sorry, I misread your post. But now I'm not sure what your question is, so let me just say this:

I grab the image of the selected action(s), using the KM Editor's "Copy as Image" menu action. At that point, I have to decide what to do with it, if it's too wide. If I leave it as is, it will get shrunk down when it is displayed, so it fits horizontally in the window.

So, for example:

would become this:

So I chose instead to just crop the image on the right. My thinking was, you can still see enough to figure out what the action does.

So the question is, do you think I should do something different? What's your thoughts?

In all cases for me so far, I’ve been able to see enough of the image to clearly identify the Action. So I think your choice was excellent. This is not the place to try to read/understand in detail the whole Action.

1 Like

@DanThomas @JMichaelTX Yes it definitely shows enough to identify what’s what. I guess my real question was “was the cropping intentional.” I think I was indulging in some obsessive behavior :slight_smile: I think you made the right choice between the two options.

1 Like