In the process of blogging here, as well as writing extensive documentation for my own apps, I end up writing about keyboard combinations a lot. Over the years I’ve made this easier on myself in various ways, but I think I’ve finally perfected a Jekyll plugin to make the process simple and the results consistent across my sites. I’m calling it, not too cleverly, “kbd.”
Welcome to the lab.
Welp, I did it. Bunch 1.4.0 is officially out, and is showing up as an automatic update for unsuspecting Bunch users as I write this. This should probably (definitely) have been a major version bump to 2.0, but I didn’t because that seemed grandiose. I mean, it is a grandiose update, but let’s not get ahead of ourselves.
Quick recap for newcomers: Bunch is a macOS automation tool that runs on plain text files. At its most basic, you can just type out a list of apps you want to launch. Save the text file to Bunch’s folder, and it shows up in a menu in your menu bar. When you click it, all those apps launch. When you click it again, all those apps quit. It goes way, way beyond that capability, but that’s the idea. Everything you need to set up a context (writing, podcasting, zooming, relaxing… whatever you’re doing next) in plain text. Add new automations just by creating new text files, and edit automations as easily as typing in a text editor.
I added a “What’s New?” page to the Bunch site. I culled the list of changes since the last stable release from 247 entries to the 36 items that I think users should be aware of. I won’t rewrite that here, but if you’re on the stable version (1.3.6) and have never touched the 1.4 betas, I encourage you to check it out and get a feel for all the updates. The changelog itself is overwhelming at this point, so hopefully the “What’s New?” page distills it enough to be a starting point for exploring new features.
Side note: I’m sure I’ve mentioned it before, but the Bunch docs are all written in Markdown and the site runs on Jekyll. The markdown is in a public GitHub repo. When I release a Bunch update, the repo get a matching version tag. I wrote a Jekyll plugin that shows diffs of the docs between releases as a section at the top of the changelog. Because the first thing I do after adding features or making improvements is to write about them, the “Recently Updated Documentation” section offers a nice, detailed look at the latest changes.
Version 1.4 is easily 10x more powerful than the last 1.3 version. It’s hard to quantify in any meaningful way, but the addition of frontmatter, expansion of variables, inclusion of conditional logic, interactive dialogs, single site browsers, embedded snippets, and a hundred other shiny new things make it a major upgrade. My only fear is that users still on 1.3 were entirely happy with the way it was, and this will just overwhelm them. Hopefully, though, everyone will be as delighted as I am by version 1.4.
The Beta program will continue as it has, with frequent releases for those willing to help test whatever craziness I come up with. I’ll be making more regular updates on the stable channel, though, so there’s no longer any pressure to get on the beta just because the stable channel is so far behind it. If you do want to get the latest stuff first, just grab the Beta — you’ll see the link under the big download button on the download page.
Lastly, I know of a couple people working on videos/posts about Bunch. I’m super into that. If you want to share your thoughts with the world and need anything from me, don’t hesitate to ask.
There Will Be
Web excursions brought to you in partnership with CleanMyMac X, all the tools to speed up your Mac, in one app.
- GitFinder - git client with Finder integration
- A fast and lightweight (but quite full-featured) git client for Mac with Finder integration.
- “A modern Pinboard app for 2021.” Mac and iOS. It’s new and currently being developed, which sets it apart from every other Pinboard app available on macOS right now. I would be sold on it if I could find a URL handler for adding a new bookmark. Maybe it’s there, but not documented. Overall a solid app with good share extensions, organization/searching, and in-app viewing.
- A really well done menu bar calendar app for Mac. With my new job and restricted Exchange servers, I was no longer able to use Fantastical as my primary calendar app. Dato gave me back quick dropdown access to events (with keyboard shortcut), one-click Zoom joins, and even shows my next meeting as a text block in my menu bar (with countdown). I lose all of Fantastical’s great natural language event/task creation, but it covers all the other bases for me.
- How to fix macOS Accessibility permission when an app can’t be enabled
- Sharing this as I’ve heard I’m not the only one recently hit with a sudden failure of the Big Sur Accessibility permissions. Started up my Mac and was confronted with a couple dozen requests for permissions, all of which showed they were already granted. This fix took care of it. It does require re-enabling everything, but at least it works when you do.
- “Replies is an easy to use customer support tool that becomes smarter as longer you use it. Reuse your previous answers to save time and money.” I used the “Contact Support” menu item in HoudahSpot and was intrigued by the interface it offered (using Replies), including searching for previous answers. Bookmarked for possible inclusion in my own apps, and think it would be cool to see in other apps, too.
Thanks to A Fine Start for sponsoring BrettTerpstra.com again this week!
Do you like lists? Do you like lists of lists? If so, listen up. I have a treat for you.
A Fine Start is a new tab page for your web browser. It lets you make lists of links — lists of lists of links to be exact. A Fine Start’s job is to show you these lists whenever you open a new tab.
What kind of links you keep is up to you. But here’s a list of link list suggestions:
- 💬 A list of social media sites
- 🍿 A list of TV and movie streaming sites
- 📈 A list of your daily productivity tools
- 📰 A list of news and blogs
- 🕹 A list of places to procrastinate
- 💅 A list of your friends’ quirky homepages
- 📚 A list of documentation and references
- 😊 A list of guilty pleasures
- 🤯 A list of other apps that let you make lists
Your lists are limited only by your imagination. Make them, sort them, then have immediate access to them whenever you open a new tab.
Happy list making!
Thanks to TextExpander for sponsoring BrettTerpstra.com this week!
TextExpander takes the repetition out of your work so you can focus on what matters most.
Say goodbye to repetitive text entry, spelling and message errors, and trying to remember the right thing to say. When you use TextExpander, you can say the right thing in just a few keystrokes.
Better than copy and paste, better than scripts and templates, TextExpander snippets allow you to maximize your time by getting rid of the repetitive things you type — all while still customizing and personalizing your messages.
TextExpander can be used on any platform, in any app, anywhere you type.
Take your time back and increase your productivity.
Get 20% off your first year by visiting textexpander.com today.
Everything is still happening in the Bunch Beta releases, but I’ve redirected all Bunch web traffic to the new site where the beta download is the prominent button, so hopefully new users are more likely to be on the 1.4 beta than on the (now seriously behind) stable channel. I swear I’m very close to releasing the Beta as the public release, but I keep adding things that I want tested. The plan is to draw a line today, test existing features, then make a public 1.4 release in the next week or two. The beta will continue to be where I release new features, and you can stay on the beta channel indefinitely. I’ll make stable releases more often, so those who don’t choose the cutting edge won’t end up a year behind. Which is, of course, how betas are supposed to work.
I wrote a macOS Service way back in 2012 that I’ve used ever since. It allows you to write some text and include special placeholders, then select it and repeat the text, incrementing the placeholders with each iteration. I last updated it in 2014 with better indentation handling and zero-padding, but otherwise it hasn’t seen many changes. Until this morning.
Thanks to A Fine Start for sponsoring BrettTerpstra.com again this week! Embrace the hyperlink with a new tab page that focuses on what makes that web work!
Hyperlinks are awesome. The web wouldn’t even be a web without them. A Fine Start gives the almighty hyperlink the respect it deserves.
When you open a new browser tab, A Fine Start gives you a list of links that you control. You can add whatever links you want and group and sort them however you see fit.
But where are all the widgets and photos and inspirational quotes, you ask? Not here. Not in this new tab. This space is a pristine sanctuary for the textual hyperlink, unimpeded by the whims and tomfoolery of the “modern” web.
Open a new tab, get to your destination. It’s fast, it’s simple, and it feels right.
Either way, it’s fast and effective. And it’s free. There’s an optional upgrade for convenient syncing between browsers — no password required — for just $5 a month.
Embrace the hyperlink. Get A Fine Start.
I wrote a tool called howzit a while back. It allows you to keep track of all of the build tools and procedures for any project in a Markdown file, and easily reference topics in your terminal with a command like
howzit deploy. Over time it became a task runner, too, and eventually I even had it updating my MacBook Pro’s Touch Bar with available tasks as I changed directories. It’s definitely become part of my development toolkit.
I recently added a few new features to it that I thought made it worth mentioning again. Let me start by saying this, though: if you’re mostly looking for a good task runner, there are some great projects like mask and maid that you should also check out. Howzit really focuses on being an easy-to-reference notepad. That said, its capabilities as a task runner are also pretty complete.
Howzit now allows default configuration options to be stored in a config file. It writes the defaults to
~/.config/howzit/howzit.yaml, which can be easily opened in your editor by running
howzit --edit-config. All of the command line flags that modify how output is displayed can be adjusted in that file.
Next, you can now use code blocks within your notes and make them executable. Just include a fenced code block with the language
```run execute some code ```
It will display as formatted code when you view your notes on the command line, but will execute as a script if you run with
Topic Matching Options
When you run
howzit and specify a topic to display, it uses partial matching to display the nearest match to your argument. So
howzit depl would display the section titled “Deploy.” Now you can change the
matching configuration option to
exact. Fuzzy matching gets a bit over-eager if you have a lot of topic titles containing the same characters, but can be a nice shortcut, allowing
howzit bld to match “Build.”
See the docs to learn more!