BBEdit 12.1.4 Release Notes

BBEdit 12.1.4 contains fixes for reported issues.

For details on all the new features and enhancements available in BBEdit 12, please see its release notes.

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

Release notes for previous versions may be found here.


BBEdit 12.1.4 requires Mac OS X 10.11.6 or later, and is compatible with macOS 10.13 "High Sierra".

If you are using macOS 10.13 "High Sierra", please make sure that you have updated to the latest available OS version (10.13.4 or later).


  • Added support to the x-bbedit URL scheme for opening files, and optionally specifying line and column number. The syntax is the same as the txmt URL support in place since BBEdit 8.0, namely:


    where /path/to/some/file is the actual file path.

    You can also specify an explicit line to select when opening the file:


    If desired, you can add a column position, which will place the insertion point before the indicated character on that line:


    Try clicking on this URL, and you'll see that it opens one of your local files in BBEdit, even though you're viewing it in a browser window:


    An x-bbedit URL is guaranteed to always launch BBEdit when opened from another application, unlike a file or editor URL, which is at the mercy of the OS to decide which application to start for any given file.


  • Updated the built-in PHP completion tags.

  • Made a change to work around a system behavior that allows compiled AppleScripts to be searched as though they were plain text (which didn't usually end well).

  • Made a change so that the OpenPDFsAsText expert preference is correctly processed in any situation where the application needs to determine if a file should be considered text. The Expert Preferences help for this setting has also been updated to advise that this setting is now off by default, and that changes to the setting take effect the next time the application is started.

  • Fixed bugs which contributed to making Undo malfunction when changes involving inline input or non-Roman (e.g various CJKV) input methods were used.

  • Fixed bug in which SFTP timeout errors were not reported correctly (the typical manifestation was an error code 7 rather than the actual correct code).

  • Command-Period will now correctly work to cancel an SFTP connection operation which is in the process of timing out.

  • Made a change to reduce the amount of work done when logging in to an SFTP server, which improves performance over slow links or when unresponsive servers are involved.

  • Changed the SFTP client internals to work around some SFTP server implementations (I'm looking at you, Pantheon and at you, OpenVMS) which would cause failures when trying to perform routine operations, such as checking for the existence of a directory before creating it, or requesting file attributes.

  • Fixed bug in which turning on "Allow the Escape key to trigger text completion" would allow the Escape key to trigger text completion when in free mode.

  • Fixed bug in which "also in this folder" items on the Counterparts menu were out of order when the document in question was located on an APFS volume (or some other location where the natural file system order is not alphabetic).

  • Fixed a regression in which trying to open a directory located in /private (e.g. /private/etc/) would report an error rather than opening the directory.

  • Fixed regression in which items opened via FTP/SFTP were not added to the recent item history as they should have been.

  • Added let to the JavaScript keyword list.

  • Added var to the Java keyword list.

  • Fixed bug in which a -50 error would be reported when using a three-finger tap in an area where there was no text (or in which it was not possible to detect a suitable word for lookup).

  • When pasting into a new document, any language hint on the clipboard is now applied beforehand, so that no time is spent trying to guess the language after pasting (which can take a long time if the text being pasted is very large).

  • Reduced the rate of change when using a pinch gesture to change magnification.

  • The default setting for "Allow pinch-to-zoom to change magnification" (in the Editing preferences) is now off. This will reduce the incidence of accidental magnification changes on computers where a trackpad is in use.

  • If a plug-in language module is missing its BBLMLanguageDisplayName key, BBEdit will now decline to load it, rather than crashing.

  • Fixed bug in which Emacs navigation gestures didn't work in text fields in the file info popover, but instead were passed through to the document's edit view.

  • Fixed bug in which menu items revealed by the Help menu's search box would be disabled if the front window was a palette.

  • Fixed a bug in which the end of a heredoc string was not detected in some situations where it should have been.

  • Fixed a bug in which having the HTML markup button palettes open would slow the application down when more than a few document windows were open.

  • Fixed bug in which removing markers from a document did not immediately update the listing in the Markers palette.

  • Fixed a performance bug in the Objective-C/C++ language guesser.

  • Fixed case in which "New (with selection)" and "New (with Clipboard)" would be slowed down by unnecessary language guessing.

  • Made a change to shave a bit of (constant) time off application startup.

  • Fixed a bug in which typing a quote to close an HTML attribute value would inappropriately auto-pair the typed character in some circumstances.

  • Fixed bug in which the HTML syntax checker would incorrectly report that some extended mailto: URLs needed character encoding.

  • Fixed crash which would occur in the Ruby function scanner under certain conditions.

  • Added canonical to the list of values for the rel attribute for which BBEdit will not generate a warning when checking HTML syntax.

  • Fixed an API usage pattern to avoid triggering a bug in the OS (38957113/36742395) which would cause BBEdit to hang when the Universal Clipboard is in use on macOS 10.13.x.

  • Floating palettes that depend on which window or document is active are now opened at the very end of the startup process, to reduce the amount of work done by those palettes while reopening windows and documents at startup.

  • Fixed crash which would occur when trying to use the CREATION{DATE,TIME} or MODIFICATION{DATE,TIME} placeholders in a document which didn't (yet) exist on disk, such as when creating a new HTML document with a template.

  • Fixed bug in which a menu attachment on BBEdit•Quit would not run when the Quit menu command was chosen.

  • The "Quit" menu command is now correctly titled "Quit BBEdit".

  • Fixed out-of-bounds memory access when using "Preview in BBEdit" on a document that had no syntax coloring data.

  • If a document does not exist on disk, the CREATION{DATE,TIME} and MODIFICATION{DATE,TIME} placeholders will insert the current {date, time} rather than simply deleting the placeholder.

  • The applicationShouldQuit and applicationDidQuit attachment points will now run when the application is quit for any reason, including a normal "sleep" quit in which state is saved. (Previously, these attachments only ran when the application was set to quit without saving state.)

  • Fixed a bug in which the SGML parser (and thus the PHP in HTML function scanner) would get confused by something that looked like the end of an XML processing instruction inside of a single-quoted string.

  • Fixed crash which would occur if an error occurred while reading a file on disk during preparation of an auto-recovery snapshot.

  • Made changes to guard against a crash that can happen while attaching or removing a display.

  • Fixed event rollover and crash which could occur when trying to open multiple FTP/SFTP items at once from a project sidebar.

  • Fixed bug in which using the "Open Selection" contextual menu for multiple selected FTP/SFTP items in the sidebar would only open the first selected item.

  • Made some adjustments to the text in the Crash Reporter submission window.

  • Fixed bug in the bbedit command-line tool in which a line number specifier ahead of the requested file was not applied when opening the file. The following should now behave as expected:

    bbedit +236 /path/to/some/file.txt

    as well as:

    bbedit /path/to/some/file.txt +236
  • Adjusted column autoresizing in the "Go to Named Symbol" panel so that the rightmost column has enough room for the line number when the font size is very large.

  • The "wrap around" search indicator now shows the direction in which the search is wrapping (based on whether it was a forward search or in reverse).

  • Fixed bug in which using the Escape key to dismiss a popover wouldn't work in cases where the popover didn't have a text field (such as the Editing Options popover, or the Info popover for an untitled document).

  • Fixed bug in which documents opened via FTP or SFTP URL from the command line along with a line number specification would not select the requested line in cases where the document was already open.

  • Made a change so that the application overrides certain undesirable settings that are globally set by the OS, such as the one that causes a period to appear when pressing two spaces.