How To Create a Simple Text Expansion Macro

A couple of possibly relevant posts from the thread KC is pointing to.

TIP: Resolving Catalina/Mojave Accessibility/Security Permissions Issues - #8 by peternlewis

TIP: Resolving Catalina/Mojave Accessibility/Security Permissions Issues - #17 by ccstone

1 Like

It looks like an Accessibility Permission Problem, which it sounds like you have resolved, and now moved on to the Screen Recording Permission problem.

1 Like

Correct. On my OS, there’s no way to add apps to the screen recording section of the Security pane. It looks like I can only activate or deactivate apps that have registered to be on that pane.


That may be true for Catalina, although I believe even then you can add it in.

For Catalina, you can try using the Screen Capture action to trigger the security inclusion. Unfortunately, Catalina does not include the API for requesting permission explicitly (actually the header files say it does, but they don't exist so the app crashes if they are called, which is super awesome).

Thanks Peter for sticking with this. That worked as you predicted … although I’ve now got “terminal” added to the list of screen capture apps, but not KM.

I’m assuming that KM can do screen recordings but, as a newbie I don’t see how. I assume we want to get permission for this so I can use this feature going forward.


Just create a temporary macro, and use the Screen Capture action to capture the whole desktop.

Awesome, done!

What’s the best path toward mastery of KM from scratch, in your opinion?


1 Like

The best way to start using Keyboard Maestro is to start simple:

  • Read the Quick Start (Help menu)
  • Do the Tutorial (Help menu)
  • And then grow your macros organically, starting simple.
  • Ask on the forum for help with any macros you get stuck on.
  • Consider enrolling in David Spark’s Keyboard Maestro Field Guide.
1 Like

Fantastic, thanks for your incredible help.


Hey Russell,

Years of intense usage?  :sunglasses:

Seriously though – and adding to Peter's list:

  • Turn off all the stock Keyboard Maestro macros.

  • Look through them and turn back on anything especially interesting or useful to you.

    • Keep the one's you've turned off for later reference.
  • Look at how all those macros are built – dissect them and see how they work.

  • Look carefully through all of the Keyboard Maestro Editor menus.

    • You won't remember everything, but you'll make a start at understanding what is where.

    • DO remember all the insert-by-name menu items and keyboard shortcuts.

  • Create a new macro and hit Cmd-K to bring up the macro selector panel.

    • Look through all the categories and actions.

      • I use Insert-Action-by-Name instead of the actions panel when inserting them, but I know them all well after nearly 18 years of use.
  • Use the Keyboard Maestro Wiki.

  • Search the forum when you're stuck or need ideas.

  • Don't bang your head against the wall for more than 30 minutes trying to figure something out – ask for help on the forum (after you've searched).



Not sure if this has been covered, but today I realised there's a simple trick to still benefit from super short snippets without compromising the longer variants (i.e. having both ";am" and ";amp" work without ";am" making ";amp" inaccessible as a "sub snippet" of sorts).
That may be trivial for some, but somehow I haven't come up with it until now. The trick would be to add space to the shorter snippet triggers, so that it would work as ";am ", while still allowing you to access ";amp" etc.
The downside though is that you might think the macro is broken if you forget which ones contain spaces.


Good points. I don't use that feature of KM, but I remember another thread which suggested surrounding the shortcut with a pair of characters, like this:


(notice that the "=" character does NOT require using the shift key. So it's easy to type, like your semi-colon.)


Hm, I might actually consider swapping ; for = for my shortcuts, not that I think of it. Though a minor change, "=" is more on the way than ";"

Or just type ;amm

1 Like

I suppose you are looking for a good way to deal with snippets in general.

I consider them to have two parts.

  1. the abbreviation
  2. the trigger

The abbreviation must be easy to remember. For example:

syl = see you later

The trigger must not cause conflicts during normal writing and must be easy to activate. Therefore I use the spacebar, but twice.


sly + space, space = see you later

Since I never use the spacebar twice in a row during normal writing, this works perfectly for me. Just a thought.

1 Like

I use snippets a lot, not enough to need textexpander though, I find Keyboard Maestro copes well as long as one is careful. One thing I do is create a snippet then place the cursor back inside it so I can fill in some components, then have after a time delay, a cursor move to start the rest of the sentence; again for snippets one uses a lot this works well though feels a bit clumsy at first. It is like what you suggest in reverse as it were. Thanks too for the suggestion about avoiding the Shift key, that can really slow something down, in fact I have snippets designed specifically to avoid Shift.

For snippets that require a parameter, you can include the parameter in the trigger if you use a regex trigger and presuming the parameter has a known-ish format. For example, a macro with a date might look like:

Date Example.kmmacros (2.3 KB)


What a wonderful idea. It almost makes me want to use text triggers.

1 Like

Thanks I will work through that as well as just copy it. Up my game a bit.