Bare Bones Software has released BBEdit 11, a notable upgrade to the venerable text editor that, I’m extremely pleased to say, requires an upgrade fee. Why would I be happy about the opportunity for current users to spend money? Because it reinforces the fact that we are Bare Bones’ customers. We’re the ones that Rich Siegel and company are trying to please.
Think about it. It’s often said that if you use a free service like Gmail, you’re the product, not the customer. (That’s not really true; in fact, some minuscule amount of information about you is aggregated with similar information about a vast number of other people to make the product. But I digress.) There’s a corollary, which is that if you use a product that promises free upgrades for life, like Apple requires of everything in the App Store and Mac App Store, you cease to be the customer as soon as you purchase. The developer has no further incentive to make you happy and has no financial incentive to do anything but chase additional potential customers. That certainly explains iTunes.
BBEdit 11 is in some ways the anti-iTunes. It has a small number of marquee changes, and even those won’t change how you work with the app. If you’ve been using BBEdit for years, like I and most loyal customers have, why would you want that? What we want are changes that we can exploit immediately to work faster and more productively. I proved this to myself by launching BBEdit 11 and starting writing this article, without the least stumble over anything unfamiliar.
(As an aside, these changes required far more coding work behind the scenes than is obvious to the user, because BBEdit has such a long history. Rich told me he found himself replacing code that had been working fine since 1989 but that couldn’t support the new features Bare Bones wanted to add. It’s a bit like replacing parts of a building’s foundation while it’s still being inhabited.)
Let’s look at the new version’s key changes.
Editing Enhancements — I betray my calling as a writer of prose here, but BBEdit’s editing improvements are more important to me than anything else. BBEdit 11 now features automatic highlighting — via a subtle underline — of words or phrases that match selected text or the word containing the insertion point. This is surprisingly interesting; I merely have to arrow over or select the word “BBEdit” and all other instances of that word in the document are automatically underlined. Since varied word choice is important in keeping writing fresh, I’m psyched to use this capability — did I really write “features” that many times?
Those who use BBEdit for coding or authoring HTML will probably appreciate the next features even more than we prose writers, due to the focus on lines. New commands in the Edit menu enable you to move the current line up or down (Control-up arrow and Control-down arrow make it more fluid), and Delete Line (Control-Shift-Delete) removes the current line instantly. These aren’t ground-breaking, but they’ll make certain tasks faster. Similarly, New Line Before (Command-Shift-Return) and New Line After (Command-Return) are just faster ways of inserting lines above and below the current line, without having to arrow to the correct location first.
Faster, Easier Find Differences — As we write and edit TidBITS articles in BBEdit, saving versions with Subversion, we often need to compare different versions. Previous versions of BBEdit had a somewhat wonky way of showing the current file, the previous file, and a list of differences in three separate windows that tiled themselves on the screen. It worked, but opening additional documents while diffing could thoroughly confuse everything. BBEdit 11 replaces all those Find Differences windows with a single triple-paned window. Everything is still in the same place, so it looks and works like you remember, but is more coherent.
If you want to compare folders of text files, a new sidebar displays the list of differences between files and lets you copy files missing in one folder from the other.
Text Extraction — BBEdit has long had a command in its Text menu called Process Lines Containing. Many people probably don’t think about using it, but it’s fabulous, since it enables you to enter a search string (probably using grep pattern matching) and then operate on just those lines that match the string. You can delete the lines, copy them to the clipboard, or copy them to a new document. I don’t use this feature every day, but it’s one I return to regularly, such as when I want to see all the lines in my email log that show Comcast subscribers not receiving TidBITS mailings (sorry folks, it’s Comcast’s fault, and I’m still trying to get through to their highest-level techs).
In BBEdit 11, Bare Bones extended the concept behind Process Lines Containing to all searches, by adding an Extract button to the Find dialog. Now, when your search string matches multiple bits of text in a document (or in multiple documents, if you’re using Multi-File Search!), you can extract all the matched text to a new document. This Extract button works differently from Process Lines Containing in that it’s just the matched text, not the entire line, but that’s not a bad thing, since with Process Lines Containing, I often extract the matched lines and then whittle them down further with additional find/replace steps.
Improved Syntax Coloring — One of those features that required a huge amount of work under the hood is BBEdit 11’s new syntax coloring. Previously, you could set what seemed like a fair number of colors (the left screenshot below), but the choices were really quite limited. Now you can change colors on a far more granular basis (the right screenshot), with each language getting its own specific options.
A number of preset color schemes have been provided, and custom schemes can be saved and loaded, making them easy to share (see “Make Text More Readable with Solarized and Cousine,” 2 August 2013).
Enhanced Clippings — Finally, BBEdit’s Clippings system, which you can use to create, manage, and insert frequently used snippets of text, has seen a complete overhaul. Clipping sets can now be made available universally or on a per-language basis (in case you don’t want your C clippings available at the same time as your Markdown clippings).
The interface has changed a bit to accommodate the new capabilities, with a new pane in the BBEdit > Setup window where you can choose the languages for which a particular clippings set will be enabled. Plus, the Clippings palette itself is a bit easier to use, with a single unified list of available clippings. Otherwise, the feature remains familiar to anyone who relies on it.
Upgrade Details — BBEdit 11 retains its price of $49.99, but users of BBEdit 10 can upgrade for $29.99 and anyone still using BBEdit 9 or earlier can upgrade for $39.99. Those who bought BBEdit 10 on or after 1 May 2014 are eligible for free upgrades.
It’s worth noting that if you bought BBEdit via the Mac App Store, you cannot get an upgrade there, and in fact, Bare Bones Software is pulling BBEdit from the Mac App Store entirely. All upgrades and new copies must be purchased from Bare Bones directly.
Why is this? Rich Siegel gave a talk at the recent Çingleton conference where he explained. His presentation was a masterpiece of building suspense, as he went through the litany of complaints he (and most Mac developers) have, dismissing each with “It’s not that.” In the end, Rich concluded that the added stress and frustration just weren’t worth it.
I think the fact that Rich cares deeply about meeting the needs of his current customers also has something to do with it — the Mac App Store doesn’t encourage that in any way. Whether BBEdit’s disappearance from the Mac App Store is indicative of a growing trend remains to be seen, but with BBEdit 11 today, Rich and company are happy to have full control of their release schedule and to be able to support their customers directly.