Request Change in KM UI -- Font Sizes



@peternlewis, I'd like to request a change in the KM UI to significantly improve readability and usability in user input fields:

  • Font family
    • IMO, all Execute Script actions should use a mono-spaced font (like Consolas) for best readability.
    • I think this would also apply to fields that are for RegEx patterns.
  • Font size
    • Either a hard-coded increase in font sizes
    • A User Preference for font family and size

This would be for all input areas that are "plain text", meaning the user can't currently change the font or size like they can in a Comment Action.

Please make sure your Browser zoom setting is at 100% when viewing this thread

The biggest issue is in Execute Script Actions that are NOT compiled. Compiled scripts like AppleScript and JXA use User set fonts/sizes as set in Script Editor Preferences.

But all of the other Execute Scripts use a fixed font and size that is almost unreadable for me, particularly when it contains a lot of consecutive, similar shaped, characters, like you often see in a RegEx pattern. Here's one for example:


Earlier today when I was experimenting with Bash scripts, I had trouble placing the cursor where I wanted it in expressions like this:
sort -n | perl -pe 's/\n/, /' | perl -pe 's/,$//'


I don't know, but I'm guessing that the font family and size for all "plain text" input fields is set by a common parameter in the KM source code.
It certainly appears that all of these input fields are using the same font family/size.

So, hopefully, this would not be a huge change for you -- but us outsiders never really know. :wink:

My strong preference would be for you to make this a KM Editor Preference setting, so each user can tailor according to their needs. I can tell you for sure that all KM users do NOT have perfect eyesight. :smile:

Thanks for your consideration of this request.
Below are some examples of the issue that I see (or have a hard time seeing. :wink: )


Below is a screenshot of the KM Actions that I find need some improvement in UI to improve readability.


I would campaign for the latter, as my preference would be to reduce the font-size and line-heights.

But I whole-heartedly concur that the script text fields need to be monospaced. If you can throw in some syntax highlighting, I think I'd turn inside out with joy.


Agreed. We have those with super-sight who want more real estate, and those that are near-blind that just want to read the darn thing. :wink:

Yep, that would be great. Since syntax highlighting is provided for AppleScript and JXA scripts, it seems possible, but I have no idea how hard. But I would not want to hold up just getting control over the font to obtain that.


Hey @peternlewis,

As you may remember I've brought this up before, and I'm firmly in the JM-camp on this one.

@CJK must have great vision...



I'd certainly agree that fixed-pitch for code makes sense. A fuller function editor for code might also make sense.


Hey Martin,

Unless there's a nice pre-built and free module for Xcode, building that would eat into Peter's productive time and not benefit enough users. (Probably.)

I'm thinking it would make more sense to facilitate exporting the code field to a real programming editor like BBEdit (or BBEdit-Lite, Atom, Etc.) and put it back again.

That said – what features would you want to see in an in-line editor?



Coming soon -- a macro to open the script in a KM Script Action in your favorite script editor.


Last it was measured, it was 20/10.


I don’t really know. I just think “shell out to another editor” has possibilities that KM shouldn’t try to emulate. As I see it, KM’s not aiming to provide a full function script editor.


The next version of Keyboard Maestro has user configurable font preferences via defaults write settings (the UI for selecting fonts for the various different kinds of fields was too much preferences for me to handle).

The font size also varies depending on the Large Text preference.

Note that this only applies to Text Views (the ones that expand multi-line), so it does not apply to regex fields generally.

With Large Text set to Larger:

or Tiny:



Thank you. This is (will be) awesome.
It eliminates two of my biggest peevs in life: word-wrapping, and horizontal scrolling.