Run a Gradle build when you save in BBEdit
My blog is a static website which I generate with a Gradle build. Gradle builds the website if I run:
cd ~/github/sdelamo/sergiodelamo.com/;./gradlew build
My posts are Markdown files under ~/github/sdelamo/sergiodelamo.com/posts
I want BBEdit to run my Gradle build when I save a Markdown file in my blog's folder. Thanks to BBEdit's AppleScript integration it is possible.
I created an AppleScript in the Attachment Scripts folder:
The Attachment Scripts folder contains AppleScripts which are run at specific points: when BBEdit starts or quits; and when documents are open, saved, and closed.
I saved the following AppleScript script at ~/Library/Application Support/BBEdit/Attachment Scripts/Document.documentDidSave.scpt
.
It runs when I save a blog post's Markdown file:
on documentDidSave(doc)
set p to file of doc
if (p as text) ends with ".md" and (p as text) contains "github:sdelamo:sergiodelamo.com" then
set buildScript to "cd ~/github/sdelamo/sergiodelamo.com/;./gradlew build"
tell application "Terminal"
if (exists window 1) and not busy of window 1 then
do script buildScript in window 1
else
do script buildScript
end if
end tell
end if
end documentDidSave
This script allows me to focus on writing.