Things I Have Written

Diffable

It’s amazing the caliber of people who just randomly pop into your Twitter life sometimes. I posted about the lack of text diff tools on iOS a couple days ago, and the very next day Jacob Sam-La Rose very kindly gave me a tip that took me in a direction I didn’t expect: JavaScript and web views.

It turns out that Jacob is the author of a very handy Diff action for Drafts that uses this very trick to let people compare a draft in current form to a previously saved version. It’s really cool use of a web preview and it’s something I would have used many times in Drafts had I realized it existed.

Drafts Diff action by Jacob Sam-La Rose

As Jacob mentioned to me, the JavaScript Diff Algorithm written by John Resig is easily applied to any JavaScript parser such as Scriptable, which also allows for easy file selection for choosing two …

(Read More)

The Brilliance of Ulysses for Blogging

When I started the Hugo-based incarnation of this website, I wrote all posts for the site in iA Writer. It’s a very clean and focused Markdown text editor suited well for blogging with Hugo or other platforms that take Markdown and convert it to HTML.

Then I accidentally discovered a secret about Ulysses.

When you export a sheet to Markdown text from Ulysses, you get a text file of plain text with all your Markdown formatting. But when you attach images to that same sheet and export it as Markdown, it gives you a zip file with your Markdown document and all attached images. Furthermore, if you put the images in the text of the document, Ulysses lets you add image metadata which it then puts into the Markdown image tags that it creates.

Ulysses image attachments and metadata

The above image shows what it looks like when I attach an image to the sheet (attachment seen in the right attachments pane) and drag it into the document and add …

(Read More)

What the Diff?

Based on my luck at finding a good text diff tool on iOS, doing text diff must be the most difficult task in the universe. Is that was diff stands for? Difficult?1

There once was an amazing iPad app called Kaleidoscope that was beautiful and did an outstanding job of comparing text files, but its makers stopped updating it long ago and now it isn’t even on the App Store anymore.

Kaleidoscope for iPad was both powerful and beautiful.

Clearly this means I’m finally going to have to learn how to write iOS apps like I’ve been saying I was going to since 2008 and make my own text diff app.

This could cost me a few years of life I don’t have.


  1. Sorry. That’s a very difficult joke. ↩︎

Breaking the Shortcuts

iOS 14 beta is remarkably stable and performant, but running betas always carries a risk that a subsequent beta version will break something important to you. iOS 14 dev beta 2 (and public beta 1) broke some fundamental actions in Shortcuts – Split Text, Combine Text, and Change Case.

Because I have several shortcuts that do a lot of text parsing, not least of which are my blog post and podcast episode publishing shortcuts and helper shortcuts, I noticed this immediately. It didn’t take much troubleshooting and testing to realize that these three actions now return nothing regardless of input. They’re just completely broken.

The good news is (also thanks to changes made to Shortcuts for iOS 14) it’s very easy to create a folder for iOS 14 beta specific versions of your shortcuts, make copies to that folder, and then fix them. Folder …

(Read More)

 The Liner Project

My friend and former podcast cohost Ronnie Lutes has launched a brand new, super fun podcast called The Liner Project that mixes music, history, and Ronnie’s enjoyable knowledge and friendly personality.

I can’t wait to hear more of what Ronnie has in store for his listeners!

 Permalink

All the 14’s

I do a lot of work on my iPad and I don’t normally advocate diving into iOS betas in general anyway. And even though my iPhone isn’t as critical to me now as it was before I really got into modern iPads, I still need it to last through the day and generally be stable. So you might think I decided to avoid the iOS and iPadOS 14 betas like the plague.

Narrator: He did not avoid the iOS and iPadOS 14 betas like the plague.

The 14’s: iPadOS and iOS

The funny thing is that while Apple didn’t mention performance and stability at all during the WWDC 2020 keynote, iOS and iPadOS 14 are quite performant and very stable, remarkably so for any beta let alone the first beta. It’s about as far from last year’s iOS 13 beta experience as you …

(Read More)

Inspect Browser

I’ve been doing a lot of website testing lately as Vic and I work together on a podcast theme for Hugo. Part of website testing involves using the element inspectors and developer tools available in most (all?) desktop browsers. Sadly (I thought) I couldn’t do this in the same way on iPadOS, which I spend a huge percentage of my time working in.

I was wrong.

Inspect Browser is one of those third-party iOS apps that proves that while Apple may not care much about enabling people to get real work done on their “Pro” devices, the people out there doing the work do care.

The developer of Inspect Browser claims on the website that their app provides desktop-class web development tools and features, and they are not kidding.

JavaScript console, HTML and CSS element inspectors, device previews for responsive design work, network inspector – it’s all there. …

(Read More)

 2020-1619=?

Clay Daly is really an amazing man. I love his passion for and knowledge of photography. I love his humor and his intelligence. But right now, it’s his insight into what it’s like to be black in America that I want to share with you.

If you don’t understand why Black Lives Matter needs to be said, this episode of Just Clay is for you.

Please listen. REALLY listen.

2020-1619=?

 Permalink

You greedy, greedy RegEx

Remember not too long ago I had to confess my regular expressions deficiencies to you, the dear reader, regarding an overly verbose regular expression I needlessly crafted, not realizing the greedy nature of the RegEx rendered part of it completely unnecessary?

It happened again.

This time it happened to me with a regular expression that I’ve used many times before. It has to do with my blog posting shortcut(s) and how I handle parsing markdown footnotes in iA Writer documents.

Here’s the regular expression I was using to find footnotes in my iA Writer texts:

\[\^(.+)]

My thinking when I wrote it is that it would find anything starting with [^, followed by one or more of any character, and ending in ]. Which it did, and it usually did it the way I expected it to. But then one day I typed the following paragraph: …

(Read More)

Looping Back in FaceTime

If you’re a podcaster who records on a Mac, the odds that you’ve heard of and are using software from Rogue Amoeba as part of your recording process are pretty high.

Rogue Amoeba makes some of the greatest Mac apps ever invented. Vic and I are soundboard junkies, and Farrago is an absolutely amazing soundboard. Using Audio Hijack, we can record our mics, the soundboard, and the group call all on individual tracks. And with Loopback installed, the soundboard isn’t just local, it can be heard by everyone on the podcast by combining it with the microphone as the input source to the call.

Loopback is very cool. It allows you to set up virtual devices and use them as inputs or outputs to other programs. I have a Loopback device called “Shure Beta 87a & Farrago” that I use as my input to Skype and FaceTime calls, and that’s what lets me share my soundboard with my podcast co-hosts. …

(Read More)