It should be no surprise to anyone familiar with the app, that Noodlesoft’s Hazel is amazing. Today I setup an automated system using Dropbox, Automator, and Hazel to process MultiMarkdown documents into HTML, give them web-ready filenames, and upload them to my website.
Everything on this site starts as a MultiMarkdown text file. I preview the page in Marked, and when its ready to go live, I save a copy of the file in a folder called _1_ready_
, which has 3 Hazel rules applied.
Ready
First things first, the text file needs to be converted to an HTML document. I’ve used the Run Shell Script
action to call the mmd command.
Pretty straight forward. To add some flexibility, the second Hazel rule for the _1_ready_
folder checks for changes to preexisting text files, and processes them using the same bash script. That saves me from having to delete and re-copy a file to make an update.
The last rule for the _1_ready_
folder renames the HTML file, making it entirely lowercase, replaces the spaces with underscores, and moves the new file to a folder called _2_go_
.
It’s important to make sure the name
element in the with patern:
section is set to lowercase
, and the replace text
dialog is used to swap the spaces for underscores.
Go
The _2_go_
folder automatically uploads any file it finds to the root of my site. As with _1_ready_
, the final files are left in the folder to more easily make changes later. Additionally, I keep a copy of my Blog index page and rss XML in the _2_go_
folder so I can quickly update the main page with links to the new posts.
Dropbox
The best part about this whole workflow is Dropbox. Both the _1_ready_ and _2_go_ folders are in my Dropbox, giving me the ability to drop in files from my iPhone, iPad, etc. With apps like TextExpander and Nebulous Notes, there’s no reason I can’t create, and post entirely from an iOS device. Obviously I’ll need a Mac, running and online, but the flexibility of this workflow is well worth the cost of a dedicated system.
Needless to say, I’m incredibly excited to have this new capability, and I can’t wait to see what other workflow magic I can create with Hazel
-
Many thanks to Macdrifter for recommending Transmit. I love this app. ↩
Update: I've since revised my upload method to use a Bash script, rather than Transmit. It's much faster and more efficient, so if this idea interests you, you should definitely check it out.