I took a couple weeks of paid time off this month. Partly I wanted some downtime surrounding Macstock, and partly I just wanted to refresh myself a bit so I could tackle my work more effectively. And a little bit of it was spent putting some time into code polishing and new features. So here’s a general update, in case you were wondering.

As I’ve probably mentioned before, I switched ADHD medications a few months back. The Focalin was messing with my bipolar too much. Too many extended manic episodes and frustrating depressions, and the net result was having maybe 5 truly productive days a month. I’m back on Vyvanse now, which I’ve previously been on for years. As I’ve said before, it’s not the most effective ADHD drug for me, but it’s also much less likely to trigger manic episodes, and that’s held true. I’ve been mostly stable for the last few months, with just a couple mild episodes that result — at most — in one night without sleep and a short recovery period (as opposed to 5+ days without sleep followed by 2+ weeks of depression). Overall far more manageable than what I’ve been going through for the year prior.

Macstock

Macstock was small this year. I ended up running a couple of panels and doing some Q&A, even though I’d intended to take a year off of speaking. Between Covid and family emergencies, enough speakers dropped out that folks like Mike Rose and I had to step up to flesh out the speaker lineup. The winner for best presentation goes to my co-worker Erin Dawson, though, who did a live studio session demonstrating the creation of an original video soundtrack with no musical expertise required. It was great.

I have high hopes for seeing Macstock begin to grow again. Even when it’s small, I still have a great time seeing old friends and making new ones.

Project Updates

nvUltra is at a standstill for a few weeks while Fletcher has an increased rotation at the hospital, so most of my coding time went to Bunch.

Bunch

I love putting time into Bunch. I know a lot of people are using it (I get regular donations and feature requests, if that’s any indication), and I’d love to see more examples of what people are doing with it. Here’s my formal plea on the forums. In the meantime, here’s the latest stuff and nonsense.

Available in the stable release:

  • /opt/homebrew/bin is now included in the default path for M1 users using shell scripting
  • (Fixed) Close all Finder windows with XX (and on close with !!Finder)

In the current beta (download here):

(shortcut NAME) command
Run macOS Shortcuts with fuzzy name matching.
(shortcut Work Mode) # or (sc work m)
New browsers
Added canary: and firefoxdev: as browser prefixes that can be used to open a url in a specific app.
canary:https://brettterpstra.com
Chrome profiles
Target specific Chrome profiles using chrome[Profile Name]:http://... (also works with canary[Profile Name]:)
chrome[Personal]:https://hulu.com
Create new Bunches with AppleScript
AppleScript commands to copy or save a new Bunch with running apps.
tell app "Bunch" to save bunch with running apps named "Working" ignoring {"TweetBot"}`

howzit

I never did make a gem or package out of howzit, but you can grab the script from GitHub to update to the latest. It’s a cool script that I use daily, and I’ve made some major improvements over the last year.

Most recently:

  • Added the -F option to various pager setups based on less to avoid paging if there’s less than one page of output
  • Added special handling for the delta pager to ensure that screen contents aren’t cleared when exiting
  • Added a grep feature that allows you to select from topics matching a search pattern. Accepts regular expressions and if there’s more than one matching result, it will display a menu.

mdless

I put a little time into mdless as well. You can get the latest version with gem install mdless.

  • Code cleanup
  • Special handling for delta as a pager

It wasn’t my most productive month ever, but I also nailed an automation at the day job. Our GitHub-based publishing workflow can now publish to Oracle Content Management, meaning we can write everything in Markdown, manage it with git and Pull Requests, and still publish to official channels. That one took some hours, but I’m really happy with the result.

So that’s what’s up with me. Back to enjoying my last day of vacation! I also have some updates regarding Overtired that I’ll post tomorrow.