This is a list of miscellaneous resources I’ve come across dealing with data visualization in several forms.
These are mostly utility libraries and viewers that I had scattered all over the place and that are best concentrated on a single page for reference.
Archive for October 2012
American Express, meanwhile, has offered a brief note of concern for my well-being, and a vague promise of assistance as needed. If that help is needed, I should just call, visit their website, or tweet at them. I should definitely not, however, email them, as that would obviously be a ridiculous way to communicate.
Is it ever reasonable to send a customer an e-mail that specifically says not to reply? I’ve always been told, but not really believed, that financial companies don’t like to communicate via e-mail out of security/privacy concerns. But what could be more private than a tweet?
Check the Weather is my new favorite iPhone weather app. It has a very clean design—just a few screens that you can swipe through—but includes the hourly temperature and precipitation information that I care about. It also has extended forecasts for 9 days ahead and supports Dark Sky. The Idlewild font in the initial version really put me off, but with version 1.1 you can choose Helvetica or Futura. Previously, I had used My-Cast for years. I still like it, but Check the Weather requires fewer taps.
Update (2013-01-07): Now that it’s winter, I’ve stopped using Check the Weather. It does not provide any information about the kind or amount of snow to expect.
Scrolling is exhausting — it never ends. There is no sense of accomplishment. I once heard someone refer to infinite scrolling on websites as “a game you can never win.”
I prefer pagination for a different reason. With scrolling, I feel like I have too much control. I constantly have to “measure” how far to scroll and make the proper precise movement. My eyes have to track the content as it moves. It’s exhausting because of the concentration it requires compared with just pressing a button and having the right thing happen.
Update (2012-11-01): Lukas Mathis:
If I’m reading a novel, the experience I’m having should be the book’s story unfolding in my head, not my fingers scrolling the page every few seconds. In this case, good UX design means not interfering with the actual experience the user is having: the book’s story.
Look at iOS’s home screen. There are pages of apps. You jump between pages, you don’t scroll. Is the home screen’s pagination an artifact of paper book technology, or is it simply a better idea than having a home screen that can be scrolled? I’d argue that it’s a better idea.
Perhaps there was another way, but researching via the Internet didn’t turn any up. I’d be happy if someone was able to post something in the comments to help anyone in the future, but I believe this highlights one of the big problems with iCloud: there’s no way to really get at your data in the cloud. I would have loved being able to go to icloud.com, log in, and click a button to restore my contacts to where they were at 10:38am, before I accidentally deleted them all and gave myself three hours of unnecessary work.
This is the sort of situation where the cloud should be an advantage. iCloud should have a Restore Contacts feature like Gmail’s. In fact, perhaps it would make more sense to sync one’s Mac and iPhone with Google rather than iCloud.
Other enhancements make it easier to find and view sets of events. Most notably, Smart Filters store sets of calendars, view settings, and event filters as toolbar buttons. With them, you can easily just look at holidays and birthdays, for instance, or clear out the non-essential events to focus on just those calendars that you share with work colleagues. Also welcome is a new Find dialog that helps you find individual events scattered throughout your entire calendar, independent of the current view.
I initially tried BusyCal due to the iCal regressions in Mac OS X Lion. With Mountain Lion, I am back to using Calendar, chiefly because I find its month view much more visually pleasing. BusyCal’s colored text on a colored background is harder to read. However, BusyCal continues to have better features: a month view that’s useful at the end of the month, more flexible scrolling, better searching, etc. It also has a global menu, although it pales in comparison with Fantastical’s. BusyCal is unfortunately only available from the Mac App Store, meaning that the upgrade pricing will be short-lived. There’s a free 30-day trial on the Web site.
It’s becoming more and more difficult to ignore the numerous reports that iOS 6 on an iPhone or iPad can use far more cellular data than iOS 5 or earlier systems did. Anecdotal evidence is hardly to be trusted, even when it arrives in large quantity, but surely a massive thread such as this one on the Apple Support Communities cannot consist entirely of people who are mistaken or misapprehending the phenomena. Moreover, some of us here at TidBITS are convinced that we’ve experienced the problem in our own lives.
I’ve yet to hear a compelling reason that I should update to iOS 6. In favor of iOS 5: lower cellular data usage, better Maps, better Contacts groups, better battery life, and a phone keypad that isn’t hideous.
The answer is interesting; it’s because they can’t. Apple won’t let them. If a label has uploaded an album to the iTunes Store and wants to add a digital booklet later, the only way they can do this is to delete the original, and create a new album listing with a new SKU. And if they do this, then purchasers will no longer be able to re-download music listed under the old SKU.
Sudoku Grab is a collection of some fairly basic image processing techniques that most engineering students at University could probably figure out how to put together. All of the algorithms used are either commonly available and can be found on the Internet or can be written pretty easily. Obviously tweaking them and getting them all running together seamlessly is the real trick…
The other issue that this kind of quality control can’t cover, is services and frameworks where Apple itself has no internal clients. The biggest example being Game Center.
There are other examples of this problem, the most obvious of which is probably the application sandbox.
In the end, the “up to 150 Mbps” or “2x” improvement is a sort of silly marketing point that should have been confined as a note in the tech specs and not trumpeted as “advanced,” “new” or, in fact, in any way special during the launch event. Adding two-stream or even three-stream support to future iOS devices would have a greater impact on improving throughput than this channel bonding tweak affords.
LaTeX and MathML are supported by iBooks Author beginning with version 2.0. iBooks Author supports all LaTeX commands that can be converted to MathML with blahtex. Additional supported LaTeX extensions are listed below.
This is a great improvement, and it would be nice to see this sort of support in Pages or in Cocoa itself. However, in my opinion equations rendered via MathML do not look as nice as those rendered by LaTeX itself. And, since this is not a full LaTeX processor, there does not seem to be a way to define custom commands.
This is almost certainly done using Apple’s Core Storage logical volume manager, introduced in OS X 10.7. As a volume manager, Core Storage has the chops to weld the two separate drives together into a single entity and handle the relocation of files between one tier and the other.
I am 100% certain this is HFS+ sitting on top of CoreStorage based on comments made to me by by certain former coworkers who are still at Apple.
With Fusion Drive enabled, Apple creates a 4GB write buffer on the NAND itself. Any writes that come in to the array hit this 4GB buffer first, which acts as sort of a write cache. Any additional writes cause the buffer to spill over to the hard disk. The idea here is that hopefully 4GB will be enough to accommodate any small file random writes which could otherwise significantly bog down performance. Having those writes buffer in NAND helps deliver SSD-like performance for light use workloads.
That 4GB write buffer is the only cache-like component to Apple’s Fusion Drive. Everything else works as an OS directed pinning algorithm instead of an SSD cache. In other words, Mountain Lion will physically move frequently used files, data and entire applications to the 128GB of NAND Flash storage and move less frequently used items to the hard disk. The moves aren’t committed until the copy is complete (meaning if you pull the plug on your machine while Fusion Drive is moving files around you shouldn’t lose any data). After the copy is complete, the original is deleted and free space recovered.
Update (2012-10-25): Apple’s HT5446:
Presented as a single volume on your Mac, Fusion Drive automatically and dynamically moves frequently used files to Flash storage for quicker access, while infrequently used items move to the hard disk. As a result you'll enjoy shorter startup times, and as the system learns how you work you'll see faster application launches and quicker file access. Fusion Drive manages all this automatically in the background.
Reliability: with the Fusion drive, if either drive goes south then the system dies. Two drives will be less reliable than one drive, end of story. That’s because the Fusion drive approach apparently is either/or: a file is either on the SSD or it’s on the hard drive; the SSD drive is not a write-through caching solution but a sort of extra-smart JBOD. A caching solution would have had fault-tolerant aspects and supported more than one hard drive, but that involves its own complexities also. Bottom line is that SSD prices are steadily dropping and that simpler is better (but at a higher price for a larger SSD, for those who want guaranteed faster performance without the complexity).
Update (2012-10-31): Lee Hutchinson:
Two blog posts by Tumblr user Jollyjinx have shed some more light on the inner workings of Apple's Fusion Drive.
Update (2012-11-03): Lloyd Chambers:
Hence I dismiss the jollyjinx.tumblr.com ‘Fusion’ claims in their entirety as a unreliable, and a failure of test methodology.
Or perhaps you were on Twitter, clicking on some links, and you want to go back later and re-open some of those URLs you found. Yet your history shows only the shortened “t.co” URLs.
Safari is still my browser of choice, but that used to be because it seemed so much better than all the other browsers. Now, other browsers seem to have better features and possibly fewer bugs, but I avoid them because they aren’t very Mac-like.
A couple of days a go, my friend Linn sent me an e-mail, being very frustrated: Amazon just closed her account and wiped her Kindle. Without notice. Without explanation. This is DRM at [its] worst.
See also this post in the Kindle Help Forum.
Update (2012-10-22): Jonathan Rentzsch:
Fortunately Apple’s iTMS DRM dog never barked. But after today’s Amazon Ebook controversy I decided it’s time to share my similar Amazon Ebook Insurance Policy[…]
But on Monday night, after a number of websites had written about the case, the account was restored and the 30-40 books that Nygaard was available again. […] IT consultant has not yet received any explanation or apology from the company. She believes the massive attention to the Amazon has helped to get the matter resolved.
Moom relies on something called the Accessibility system to do what it does. The good news is that OS X includes Accessibility support automatically in standard windows. That is, if the developer uses OS X’s built-in tools to work with windows, Accessibility support is a free add-on—the developer doesn’t need to do any extra work to support Moom.
But some applications use custom window code—for various reasons, they choose to create the windows and buttons on their own. In those cases, Accessibility support must be added by hand.
Apple’s idea of making all of your files accessible to you from anywhere through iCloud overlooks two specific user needs: Sometimes you want to open files in multiple programs, and sometimes more than one person needs access to a file.
Justin Williams has an updated edition of his developer and power user tool list. Of note, he has a Magic Trackpad, which I’ve found to be terrible for pointing and clicking, but he has it to the left of the keyboard and uses it only for gestures (with the left hand, I guess). On the other side, he has a real mouse (a Razer).
Update (2012-10-17): Clark Goble lists his tools.
Undoubtedly overkill, but the time for sacrificing basic usability to personal cleverness was the 1990s, when the Web was new and its user experience fundamentals were unknown enough to justify experimenting.
No more infinite scrolling, please. Aside from breaking the Back button, it doesn’t work well with products like Instapaper and EagleFiler.
FoldingText combines the best of what we’ve learned from WriteRoom and TaskPaper into a new tool for plain text productivity. The foundation is a plain text outliner that uses Markdown formatting. But that’s just the start. I think the movie does a good job of showing what it’s really all about, go watch it!
RSS.app is the ideal tool for the casual RSS user. The app is almost invisible: It is embedded in the status menu and uses Mountain Lion’s Notification Center to alert you of new posts.
Neat idea, and a good way to get at your subscriptions that became inaccessible after Apple removed RSS support in Mountain Lion. However, Apple rejected it from the Mac App Store citing rule 2.8:
Apps that are not very useful or do not provide any lasting entertainment value may be rejected.
Ideally the OpenSSL project would do a better job at API compatibility, but it’s really not in their unixy source-code-oriented worldview. Sure we could get big into the project to try to improve it, but we’d rather put the resources into making OS X rock harder.
Both SecTransform and lowly CommonCrypto offer API compatibility, allowing us to add functionality and fix security problems even in shipping apps, which is awesome for users.
OpenSSL is kind of a mess.
SecTransform looks pretty nice. It’s becoming tempting to require Lion.
With all the graphics specified using pure geometry, CoreGraphics can now do its thing and automatically handle varying device resolutions, wether it’s a retina display or a zoomable interface or even print, all without ever having to deal with the different resolutions in code. Although I haven’t tested it, the code should also use less memory, because it doesn’t create potentially large temporary bitmaps, and for the cherry on top it’s also a fraction of the code.
It’s tempting to rewrite my graphics code in his MPWDrawingContext style.
Stripe has done a simple, but beautiful thing: it turned the garbage that is the average payment form and made it suck less. The button alone may not blow you away (if you’re a designer, it may), but the fact that something this gorgeous has the potential to become wide-spread makes us excited.
The problem is that with the Stripe interface appearing in an
<iframe>, rather than as a distinct Web page, there’s no way for the customer to know that it’s legit. You can’t tell whether it’s a secure connection, which domain is serving the form, or whether there’s a green extended validation bar.
It’s good that you can use the touchscreen to turn pages, but why not include dedicated page-turning buttons as well? The e-ink Kindles are designed to do one thing really well: display long-form text. Page-turning is at the heart of the Kindle reading experience. An active Kindle reader is going to go to the next page hundreds — in some cases, I’m sure, even thousands — of times every week. There should not just be buttons for page-turning, but great buttons. Buttons exquisitely designed and engineered to be perfectly placed and delightfully clickable. The problem with using the touchscreen to turn pages is that you have to move your thumb, from the bezel to the display and then back to the bezel after tapping, each time. With page-turning buttons on the bezel, like on the old pre-touchscreen Kindles, you never had to move your thumbs while reading. Not having to move your thumbs is one way a dedicated e-reader could hold an advantage over tablets like the iPad and Kindle Fire — a missed opportunity here.
Also, page-turning buttons would reduce the number of fingerprints on the screen and let you turn the page while wearing gloves.
I created this summary chart as a way to visualize a few key iOS device properties. This has helped me decide which mix of devices I use to get reasonable coverage for development and testing.
So a smaller filesize AND a better quality on both screen types! […] The bottomline is that heavy compression doesn’t affect the final image as much as you would expect. This is because of the greater amount of pixels in the Retina image, compression artifacts are scaled down and therefore almost unnoticeable.
Via Hacker News, which questions the results. However, regardless of the precise file sizes, I imagine that the conclusion of JPEG compression beating upscaling will hold. There’s also a follow-up article (translated).
Katsumi Kishikawa’s ClassicMap is a free (and open-source) app that brings Google Maps to iOS 6 (via Vincent Pickering). It doesn’t support directions, but it’s in some ways better than using Apple’s Maps app or Google Maps in Mobile Safari.
A developer training firm named Shiny Development has been tracking waiting times for the App Store review process as closely as it can, and it has bad news for would-be app developers: The waiting times for the Mac App Store are growing longer. In the last six months or so, the waiting time for getting a Mac App published has gone from under seven days to almost as high as a month, according to Shiny’s data. Apple’s process is largely closed off—there is a little bit of information for developers on the main dev Web site, but otherwise Shiny has mostly gathered this information from the various developers it tracks and corresponds with online.
It’s no wonder that Apple doesn’t report the average review time for Mac apps the way it does for iOS ones. And it’s scary as a developer to think that you could ship a bug (or have Apple ship an OS update that introduces one). You work as quickly as possible to get a fix ready, and then Apple sits on it for a month—or longer if you’re unlucky enough to have one of the above-average review times. Even after waiting, there’s no guarantee that your update will be approved. Recently, Apple has rejected apps for not conforming to new, unwritten requirements, e.g. relating to 1024×1024 icons that no user will really see.
As with iOS 5, it is not possible to create new groups from the iPhone. You have to use the Contacts or Address Book application on the Mac.
When you have no groups, there’s a Reload button in the upper left corner of the screen. When you do have groups, the button changes to say Groups; then the Reload button appears after you tap on Groups.
In iOS 5, there was a column view for showing All Contacts or one particular group. This was quick and logical. In iOS 6, there is instead a separate screen showing all your groups (plus All Contacts) with checkmarks next to them. This is kind of like the iOS 5 interface for Calendars. One advantage to the iOS 6 interface is that you can display the union of multiple groups; with iOS 5 you had to show all the contacts or just one group. However, I nearly always want to see either All Contacts or just one group, and iOS 6 makes this more difficult.
At first glance, it appears that showing just one group is a major pain with iOS 6. You would have to uncheck all the groups that you don’t want to see. However, there’s a shortcut that makes it easier: when All Contacts is already checked, you can tap it to uncheck all the groups at once.
In summary, to change from viewing one group to viewing another, on iOS 5 you could:
- Tap Groups (to go left).
- Tap the name of the group you want (to go right).
On iOS 6 it takes more steps:
- Tap Groups (to open the dialog).
- Double-tap All Contacts to uncheck the current group. (Or scroll to find the current group and then tap it to uncheck.)
- Tap the group that you want to see (to check it).
- Tap Done (to close the dialog).
If you’re viewing All Contacts and want to view a group, on iOS 5 you could:
- Tap Groups (to go left).
- Tap the name of the group you want (to go right).
On iOS 6 it takes more steps:
- Tap Groups (to open the dialog).
- Tap All Contacts (to uncheck all the groups).
- Tap the group that you want to see (to check it).
- Tap Done (to close the dialog).
An annoying aspect of the current Mac hardware experience, with FireWire on the way out, is that external storage no longer “just works.” Nearly every USB hard drive I’ve used—across a variety of Macs, enclosures, hubs, UPSes, and buildings—has either exhibited power problems or random disconnects. Moreover, I’m sure that these power issues are widespread, but they are rarely discussed in product reviews and spec sheets.
Particularly problematic are the bus-powered 2.5-inch drives. The USB 2.0 Toshiba Canvio is the best that I’ve used. As far as I know, it operates correctly with the specified amount of USB current. But try connecting more than a couple to a USB hub, even the NewerTech one that boasts of delivering “all the power needed for all seven ports,” and watch it disconnect or fail to mount. The other hubs that I’ve tried, even from reputable companies, are worse.
The USB 3.0 Toshiba Canvio is even more problematic. It draws more power than is allowed by the USB spec, so that it doesn’t work at all with newer MacBook Airs and MacBook Pros that supply only the specified power to the USB ports, although it can work via a powered hub.
Sometimes betas are ok, sometimes Apple employees makes mistakes. But there’s only one person who could truthfully claim to know what Steve Jobs would or would not have done, and he unfortunately passed away nearly a year ago.
Steve Jobs presided over a whole bunch of things “Steve Jobs would never have shipped.”
I think that there are a few different kinds of Mac indie developers. Those who don't want to have to deal with customer databases and payment processing might as well just use the Mac App Store as the distribution mechanism. Then there are the people who want to be able to sell directly to customers, but want a full-service company to handle the processing issues. FastSpring is great for that. But if you want more control over your purchasing experience, and you can set up some scripts on your server to manage license generation and charge cards, then Stripe is a great way to go. (And also, possibly, PayPal for those prefer that option.)
I’m pretty happy with PayPal Website Payments Pro for payments and E-junkie for the shopping cart, but if I were going to make a change it would probably be to Stripe. (FastSpring looks nice but overly expensive.) Stripe’s fees are higher than PayPal’s volume rate. PayPal adds a few fees, e.g. for the Pro API and for International transactions, but Stripe charges fees for refunds. Overall, my guess is that PayPal is cheaper, but not by a lot. Stripe sounds easier to use, but that’s balanced by the fact that I’ve successfully used PayPal for many years with essentially no problems. It would be nice if E-junkie integrated support for Stripe the way it has for Google Checkout and other processors.
Update (2012-10-24): Dan Wood:
This is a followup to that, describing what we did to build our online store, and what decisions came into play for its user experience.
For years, we’ve followed Apple’s documented recommendation that .strings files should be saved in UTF-16 format […] But this has caused so many headaches, that I finally decided it’s time to defy this recommendation, and go UTF-8 for our .strings files.
Xcode now converts strings files to UTF-16 when building a project, so I now store them in UTF-8, which works better with version control and other tools.
My son just bought the Blu-Ray of Prometheus, which claims to include a digital copy. He really likes the movie, and he wanted to be able to watch it on his laptop or iPad when he next travels.
It says “this movie plays everywhere,” which turned out to be as true as Microsoft’s PlaysForSure. (In this case, I would simply recommend not watching Prometheus.)
There are some classes that can’t have weak references assigned to them, such as
NSFont(and others). In OS X 10.7 you can’t have weak references to those, and other classes like
NSWindowController(and others), due to legacy or technical details, such as a custom retain and release implementation (Thanks to Mike Ash for the hint as to why some of these classes are off-limits). But there are times you might want to point to them and not create a strong reference. Perhaps it’s to break a retain cycle. You’d use
Andi Sporkin, a spokeswoman for the settling publishers, said the deal grants Google the rights to display up to 20 percent of the work, and also grants Google permission to sell the books and journals via Google Play, its online and Android-based marketplace.
I ended up removing that code while doing the fix thinking I must have been drunk/high/had a gun to my head when I wrote that code originally. Initial tests seemed to confirm it as things were working at first. A couple days later I discovered an older bug had resurfaced. Sure enough, I began to realize why I wrote that odd piece of code back when.
Occasionally I read a book with footnotes placed at the back, which throws Whispersync for a loop. But a more common problem crops up when someone else in my family wants to read a book I’ve already read: Since I’ve read to the end, Whispersync is no help until I open that copy of my book on all my devices, navigate back to the beginning, and then go to the Amazon website, find the book in question, and choose Reset Furthest Page Read.
And then there are the problems with updating books.
Linux man pages were often extremely short stubs that said little beyond “go to the info page.” OS X man pages, thank goodness, aren’t that stripped down, but they have their own problem: they sometimes tell you to go to an info page that doesn’t exist.
Sure, convenience is king, and that’s why iCloud is so important—it does everything for you with absolutely no time or effort on your part. But you get out what you put in, so once in a while plug into iTunes and hit the backup button as well. Heck, if your iPhone or iPad is your life, plug into something like PhoneView and do a second backup as well. Keep the iTunes copy in the default folder, put the PhoneView archive in Dropbox. The more important your data, the better you need to take care of it. Apple absolutely has to make sure the technology works, but making the best use possible of that technology it is our responsibility.
Bitcoin is a peer-to-peer digital currency. It does not depend on any particular organization or a person and is not backed by any commodity like gold or silver. Bitcoin is a name for both the currency and for the protocol of storage and exchange. Just like any other money (dollars, gold or sea shells), Bitcoin does not have much direct use value. It is valued subjectively according to one’s ability to exchange it for goods.
The basic outline of the problem is that sometimes a particular application will get into a state where any events sent to it using
AESend, for that matter) would not be delivered to the target application, and
AESendMessagewould simply block until the timeout value was reached, then return an
This affected his iPhoto Library Manager as well as e-mail clients such as MailMate, Postbox, and GyazMail communicating with SpamSieve. The bug can also affect TotalFinder and applications that use the ODBEditor events.
As a short-term fix, you can log out of your Mac or kill the appleeventsd process. Medium-term, the applications sending the events can be rewritten to use
typeKernelProcessID rather than
typeApplicationBundleID to specify the target application. Of course, we hope that Apple will eventually fix the bug.
Update (2012-10-05): This bug also seems to cause hangs at launch for applications using the Growl 1.3 SDK.
Update (2013-03-16): The bug appears to be fixed in Mac OS X 10.8.3.
Update (2013-10-29): It looks like this bug may be back in Mac OS X 10.9 Mavericks.
Remote view controllers are an exciting new feature for iOS. I sincerely hope that Apple will use this technology in iOS 7 to enhance data sharing and communication between third-party apps without compromising the iOS security model. We need it.
The CD was supposed to have the last word when it came to convenience and sound quality. And for a while, it did. The CD dominated record sales for more than two decades — from the late 1980s until just last year, when sales of digital tracks finally surpassed those of physical albums. It’s a cycle that has played out many times in the history of the music industry, with remarkable consistency.
This is a case where these service should be able to survive outside the App Store as mobile websites, but I simply don’t see what problem Apple is solving by keeping them out of the store.
It’s strange that after Apple acquired Chomp and redesigned the App Store app, it seems to be harder to use the app and harder to find new titles. Yet Apple doesn’t want third parties to help them solve the discoverability problem.
Update (2012-10-04): Federico Viticci:
I believe Apple’s main “issue” is with apps that look like an alternative App Store, containing links to App Store apps. By avoiding “similarity” and “confusion”, Apple wants to ensure users will rely on Apple’s App Store for search and discovery, not a third-party App Store lookalike. If you think about it, it makes sense for Apple to want people to use the App Store: more people means more data, more data should lead to better Genius and Search results over time. From this standpoint, I’d argue Apple wants users not to just open direct links in the App Store, but to use the App Store.
Slate is a window management application similar to Divvy and SizeUp (except better and free!). Originally written to replace them due to some limitations in how each work, it attempts to overcome them by simply being extremely configurable. As a result, it may be a bit daunting to get configured, but once it is done, the benefit is huge.
I’m happy with Moom, but perhaps there’s some interesting code here if you want to learn how to use the Accessibility APIs.
It’s frustrating to have such a large purchase become obsolete so quickly. And this is even fast by iOS standards — after all, iOS 6 runs (with many features disabled) on the iPhone 3GS, which was released 9 months before the iPad 1.
He thinks support was dropped because the iPad 1 has a larger screen but only 256 MB of RAM. I’m surprised there hasn’t yet been an outcry when apps are updated and people are no longer able to re-download the versions that work on their old devices.
- Retina text rendering.
- Commands for moving the current line up and down. I had been using AppleScripts to do this.
- A new Go > Named Symbol sheet to help you quickly jump to a function or marker by typing a few characters of its name. Previously, I had been type-selecting in the pop-up menus, but this lets you search by non-prefix substrings.
- Mac OS X’s Versions feature is not supported in the normal way, but there’s the potentially more useful “Compare Against Previous Version” command, which may prove handy for the few text files I edit that aren’t stored in Git.
- A smarter Open Counterpart command that finds all files with the same basename, not just the extension pairs built into BBEdit.
- New floating windows to display markers, jump points, and functions. Previously, these had only been available in pop-up menus, which were more difficult to search. Jump points are more useful now that you can visualize them.
- You can now create new documents via AppleScript that are marked as not modified—useful for temporary documents that you don’t want to be prompted to save when closing.