It’s all about templates, macros and workflows in 2020

Over this holiday break I have been excitedly playing with Alfred and Keyboard Maestro to the point where I might be wasting time trying to find ways to save time.

In reality, I've created multiple workflows in each application to accomplish some trivial, but still useful tasks.

While looking up some examples for Keyboard Maestro, I followed the demo and set my machine to empty the system trash every Friday night at 10pm. Yes, the system does it, but this is more efficient.

I took that idea and set Keyboard Maestro to empty the trash in DevonThink Office at the same time. Keyboard Maestro can enter keystrokes and press dialog buttons. That's nice!

It even adds the extra option to make sure the system was idle in case I was doing something.

Because I've done it more than once manually, I built a Keyboard Maestro workflow to copy files out of my Dropbox folder to my local system so they could be used by DevonThink.

Again, these are rather trivial tasks, but they are solid learning blocks and they perform useful work. Work that I don't have to worry about.

I took that same idea and applied it to Alfred. I've created several keywords to make consistent work environments. One Alfred workflow for automation starts Katalon, CodeRunner, SnippetsLab, Github Desktop and opens the project in Finder.

It's hardly a chore to start some apps, but it means I don't have to go looking for an app. It's already running. When I need it, it's there, and my flow isn't disrupted.

The same is true for my writing apps. I type a keyword and Scrivener, WordWeb, WordPress, TextSoap and MWeb are all launched. My writing project is loaded and is ready to go. I could even add options to close apps like Messages, Slack and email so my focus doesn't wander.

Again, not difficult, but consistent. And a consistent environment means I can get more done with less distraction.

Another workflow that came up was specifically because I was at home.

While working from home over the holiday break, I needed to share my screen a few times. It's no problem to do so, however, I wanted to shut down multiple apps so notification messages wouldn't pop up. This meant closing Messages, Mail, monitoring tools, Affinity Dashboard, and others.

No one needs to know that a pair of shoes I'm interested in has gone on sale. Nor do they need to see some scammer trying to tell me my iTunes account has been suspended and I need to log in to confirm ownership.

That is a horrible business presentation.

Now, I can use Alfred to close these apps without my need to remember the name of each one. When I'm finished, I restart them all, and restore the state of my machine.

I'm even working on creating shell scripts and triggers that emulate some of the functionality of Hazel. I can move and copy files based on their name or extension. I can have the action triggered by keyword or run on a schedule.

Using these two tools, I'm very quickly creating a set it and forget it mentality.

Just think of what will happen when I actually know what I'm doing!

Other articles of interest:

Leave a Reply

Your email address will not be published. Required fields are marked *

Recent Comments
  • Working with Dates and Date Formatting in Katalon Studio (15)
    • Sangeethaa: How to get previous day’s date(Yesterday’s date)? Actually I was using today.previous() before,it was working fine till today morning.Now its not retrieving right date. Can anyone please guide me on this.
    • Don Pedro: That could be a little tricky. First, is the text/format always going to be the same? You will need to do some parsing. Separate the first but of text at 2019. After that, split the text again to get rid of Central Standard...
    • Don Pedro: It should be of the same Date type as today. You could then do some calendar trickery with Calendar /*Calendar c = Calendar.getInstance(); //c.set(Calendar.MONTH, 1) //Set the month, 0=January, 11=December println...
    • josh: I’m testing a page with a string like “Updated November 21, 2019 16:25:32 PM Central Standard Time.” How might I capture the date and time and compare it to current time to verify that the update time was within...
    • zakir hussain: today = new Date() lastWeek = (today – 1.week) can u please help me in understanding what is the return type of lastweek? and I wanted to set nextyear date how can i do it
    • ALLAN FORD: Useful !
    • Don Pedro: Not sure I understand what you are trying to do.
  • Output status messages and test information by writing to the Log File Viewer in Katalon Studio (6)
    • Saranya: Good One. Could you plz share link to access all your katalon related blogs. ThankQ
    • Rodrigo Calabretta: I’m using the KeywordUtil.markFailed or KeywordUtil.markError and my test stops is being shown as Error and If I use in the @afterTestCase the testCaseContext.getTestCaseSta tus() to show the status test case...
  • Setting up Environment Profiles in Katalon Studio (2)
    • Don Pedro: Not quite sure I understand. The term “Execution Profile” is normally used now, but they are still GlobalVariables and are created in the same way for version 7 as previous. You make a new execution profile, then...
    • Aparna: Hello, Your documentation is excellent and has helped me understand many things. But this article above seems outdated and I need help in creating my own Global variables and all the documentation out there seems to be point to...
  • Here is my drive cluster (2)
    • Don Pedro: While I still have those drives, the drive cluster looks nothing like that now. Almost all of my external drives have had the cases removed and they have been installed into a series of MediaSonic 8 Bay Drive Enclosures. I...
    • Marin Boucher: Hi! Verry funny blog with “go to the point” on many post! I spent good time reading some of your post. Regarding this one about NAS, “many NAS” in fact, I would be curious to see a screenshot of...
  • How To Disable the Quicken Registration Prompt (27)
    • debra: didn’t work for me… my 2007 – which I am keeping on my older mac.
  • Adding entries to an open Excel spreadsheet during runtime (1)
    • IanG: Hi: Seems like nobody else has described (in detail) how Katalon can be configured to test an API by reading the first entry from a multi-row multi column XLSX spreadsheet, executing a test, writing the result to another column (or...