Live Log and Controls?

Hey Joah,

You can use a palette as a macro-running indicator:

As for a live log – I'd use BBEdit and AppleScript the log entries.

--------------------------------------------------------
# Auth: Christopher Stone <scriptmeister@thestoneforge.com>
# dCre: 2023/05/14 18:09
# dMod: 2023/05/14 18:09 
# Appl: BBEdit, Keyboard Maestro Engine
# Task: Write Log Entries to a Named Text Document.
# Libs: None
# Osax: None
# Tags: @Applescript, @Script, @BBEdit, @Keyboard_Maestro_Engine, @Write, @Log, @Entries, @Named, @Document
--------------------------------------------------------

set kmInstance to system attribute "KMINSTANCE"
tell application "Keyboard Maestro Engine"
   set logEntry to getvariable "local_LogEntry" instance kmInstance
end tell

set logEntry to "Now is the time for all good men to come to the aid of their country."

logToBBEdit(logEntry, "LOG")

--------------------------------------------------------
--» HANDLERS
--------------------------------------------------------
on logToBBEdit(logEntry, windowName)
   tell application "BBEdit"
      tell text window windowName's text
         set end of it to logEntry & linefeed
      end tell
   end tell
end logToBBEdit
--------------------------------------------------------
I recommend BBEdit because…
  • Although BBEdit is a commercial product, the trial version reverts to a
    still very powerful and free (BBEdit-Lite) version after 30 days.
  • It is very Mac-like.
  • It has excellent support for RegEx.
  • It is very AppleScriptable.
  • It has a two versatile command line tools.
  • It has been in continuous development for over 25 years.

You could use CotEditor (freeware) instead, but it's not nearly as powerful as BBEdit.

-Chris