BBEdit 9.6.2 Release Notes

This page documents all feature enhancements and bug fixes included in the BBEdit 9.6.2 update.

For details on all the new features and enhancements offered since BBEdit 9.0, please see its release notes.

For information on changes made in previous versions, please see the release notes archive.

For detailed information on using any of BBEdit's features, please refer to the user manual (choose "User Manual" from BBEdit's Help menu).


BBEdit 9.6.2 requires Mac OS X 10.5 or later (10.5.8 or later recommended).

This version is a Universal application: it runs natively on both Intel-based and PowerPC-based Macs.


  • Added JSON language support (syntax coloring and "function" navigation).


  • When generating markup in HTML5 documents (that is, there's an explicit <!DOCTYPE HTML> declaration), BBEdit will now generate markup according to XHTML rules. This can be controlled via expert preference, so if you preferred the pre-9.6.2 behavior:

    defaults write com.barebones.bbedit HTMLCorePreferences:UseXMLMarkupRulesForHTML5 -bool NO


  • Fixed bug in which dragging an FTP/SFTP document to a project from another window's document drawer would be rejected, and a malloc warning typically got logged to the console.

  • When closing a results window during a multi-file Find All, BBEdit will no longer interrupt the process with a sheet if there were no results.

  • Fixed crash in CVS "Get Revision History".

  • Corrected problem where some CVS commands would report an error 11104 if there was no window open.

  • Typically, the identifier in DOCTYPE declarations is enclosed in "double quotes", but 'single quotes' are allowed too and they are (once again) supported for purposes of determining a document's HTML/XHTML dialect.

  • Fixed hang which would occur when looking for directory-relative settings files, and certain unexpected errors occurred during the file search.

  • Fixed bug in which deleted svn items were not represented correctly in the results, so attempting to operate on them (e.g. commit) would fail.

  • Fixed bug in which an out-of-memory condition during the final phase of a Replace All was not correctly detected, so BBEdit would report a successful Replace All when in fact no change had been made.

  • Significantly reduced the amount of memory required to do a Replace All, which increases the chances of success when operating on very large files.

  • The threshold set by the Editor:SoftWrapLengthThreshold expert preference was not correctly enforced due to a math error; files whose size exceeded half the threshold would incorrectly have wrapping disabled.

  • Fixed bug in which the file selection dialog for "Run AppleScript Filter" in text factories would disable folders (even though they were still selectable).

  • Fixed bug in which using the Return or Enter key in the Save to FTP/SFTP dialog would attempt to save the file, even if a folder had been selected in the list. Using Return or Enter will now open the folder.

  • Corrected the RGB value of CSS green as displayed in the markup dialogs. (It's now actually green, instead of lime.)

  • Fixed bug in which saving a file that had been selected in a project's file list would cause the selection to be reset (along with undesired scrolling of the project file list, in cases where the file was the only one selected).

  • OMG did you see the Christmas episode of "Glee"? Was that awesome, or what?

  • Fixed a bug in which applying a Text Factory to a document which did not exist on disk would report an error at the end of factory execution.

  • Fixed a class of bugs in which the selection range was not properly maintained or adjusted after performing various markup operations.

  • Fixed bug in which saving a UTF-16 file with no BOM would fail with a -50 error.

  • Fixed bug in which the "Make Writeable" alert was incorrectly presented for files when you weren't the owner or an eligible group member; and using "Make Writeable" would fail. (For example, /etc/profile.) Now, when the "Make Writeable" alert appears, it's because you're owner or group, but the file doesn't have write permissions for either.

  • Reworked the mechanics behind text factory application (and multi-file search) so that it's now possible to script factory application to not only files and folders and document references, but also to specified text ranges. AppleScript recording of "Apply Text Factory" from the Text menu now works correctly.

  • Fixed crash when a file loaded by a #bbinclude statement was zero-length.

  • Fixed cosmetic glitch when expanding an empty node in a project list (and a few other places).

  • Fixed bug in which Subversion operations on files whose working copy paths contained an at-sign ("@") would fail.

  • When scanning directories for processing during multi-file search or text factory application, any aliases that resolve to files are processed (if the target of the alias would be eligible), and any aliases that resolve to non-files are skipped. This should resolve complaints about errors being reported during MFS/factory processing when non-files are encountered.

  • Fixed bug in which "Show POD" and related commands didn't work.

  • Failing to reopen a document when starting up (or restoring from sleep state) will no longer cause the entire process to be abandoned.

  • Results (syntax check, etc) contained entirely within a single file are now generated as a flat list, rather than a top-level node for the file with a list of subordinate items.

  • Results windows from common tasks (markup syntax, SCM operations, and a few others) are now singletons, whose contents are replaced with the results from the most recent invocation. If there are no results, BBEdit will close the window.

  • Fixed bug in which list items which should have been scrolled fully into view were not.

  • Added factory default filename extension mapping for ".erb" to "Ruby in HTML". (If you're updating from a previous version, you will need to add the mapping yourself, in the "Languages" preferences.)

  • Added mappings to the application's property list so that files whose names end in .erb and .json are known by the system as being editable with BBEdit.

  • Closed another loophole in app state restoration, when SCM results (and other non-search results) windows are part of the saved state.

  • Restored the "Unix Scripting Tools" button palette to working order.

  • Fixed a bug in the markdown module which prevented coloring of indented link defs.

  • Fixed formatting goof in Update Site Images results reporting.

  • Fixed a small handful of memory leaks.

  • Corrected selection range after HTML/XML Un/Comment.

  • Obsidium? You gotta be kidding. The ponies are busy in their winter workshop. It's covered, so nobody will know what they're up to until it's done.

  • Restored previous behavior in SCM output log files (most recent entry header is now selected and scrolled into view).

  • Fixed bug in which the default site was checked when doing "Check Site Links", even if you selected a different site.

  • When you click on a displayed file name in a project file list, BBEdit will check to see if its contents look like text and open it if so (in the case where the file's metadata are insufficient).

  • Added support for the <s> element as specified by the HTML5 spec at

  • Updated the list of HTML5's legal values for the rel attribute on <a>, <area>, and <link> tags, based on a union of the values provided on the WHATWG and lists (per a recommendation of a helpful member of the HTML5 working group).

  • Fixed bug in which file filters with date terms didn't work correctly.

  • Armorplated the site of a reported crash in order to prevent future occurrences.

  • Fixed bug in which services returning UTF-16 data would have half of it ignored.

  • When providing data to services, the application now provides UTF-8 natively, as well as UTF-16 and Mac Roman (the latter is skipped if the text being provided contains Unicode glyphs that can't be mapped to Mac Roman).

  • Removed special-case handling of text and URL clippings. Drop a .webloc file on the application icon, and you'll get its XML. (Dragging text and URL clippings into editing views works as before.)