BBEdit 16.0 is a major upgrade, which includes significant new features; visible changes to existing features; and fixes for reported issues.
Because BBEdit 16 builds on features that were added during the BBEdit 15 cycle (as well as previous versions), please take a few moments to browse the release notes archive and review the release notes for any versions that you may not have seen.
To get a high-level overview of what’s new in BBEdit 16, with screen shots, see the What’s New in BBEdit 16 page.
For a comprehensive list of the changes introduced in BBEdit 16.0, please see the BBEdit 16.0 change 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).
BBEdit 16 requires macOS 14.0 or later.
For whichever version of macOS you are using, please make sure that you have updated to the latest available OS version. This will resolve any functional issues caused by bugs and regressions in out-of-date versions of the OS.
If you have been using any previous version of BBEdit in Free Mode, starting BBEdit 16.0 will reset your 30-day evaluation period, so that you can have a full trial of the new features.
If you have previously purchased a license from us for BBEdit 15 or older, you will have a full 30-day evaluation period in which to try out BBEdit 16’s new features. License upgrades are available at a discount for existing customers, and some customers may be eligible for a free upgrade (based on date of purchase). Please see the BBEdit upgrades page for information and instructions.
Fixed a bug in which externally opening a disk-based project which was already open would select its project settings pane.
Fixed bug in which password prompts from sudo and ssh in
shell worksheets were not being handled by the application as
they should have been.
Allow hours and days in the Unix script progress window, for scripts that take that long to run.
Fixed bug in which the file panel presented by the “Run Unix Filter” text factory configuration panel was a little too aggressive in filtering things.
Improved the experience when editing Markdown files which are
used as input for various content systems such as Jekyll which
use custom attributes to signal Markdown content inside of div
and other blocks.
Fixed regression in which a partial line selection was inappropriately used for determining the range of text to be processed for line-oriented transformations (such as Process Lines Containing). This usually resulted in no work being done.
Fixed a regression in codeless language module scanning which would cause a hang or crash in some cases.
Improved recognition of DSL-style Perl function declarations, as used by Dancer2.
Corrected navigation and selection behavior when using Visual
(Line) mode with vi key bindings enabled.
Fixed reporting when the W3C validator service returns HTTP status 503 (“service unavailable”).
Made a change to prevent a crash which could occur during system theme switching (light mode to dark).
Fixed bug in which fold ranges for parameterless math environments in TeX files weren’t correct unless the opening delimiter was followed with a space.
Updated stale content in the What’s New page in the help book.
Adjusted links to “Editors at War”.
Fixed deadlock which would occur when a remote SFTP server unexpectedly closed down the connection unilaterally.
Fixed a layout glitch in which expanding and collapsing the site settings view in a project window would reshape the window.
Fixed bug in which projects included in a multi-file search didn’t search any image files referenced by the project.
Fixed cases in which sidebar search in notebooks would sometimes fail to find notes that matched the search words.
Made a change to only use the W3C validator (by default) when
the document’s DOCTYPE declaration signals HTML5, and not for
older HTML document types.
Corrected the behavior of “G” when used as an operation
modifier in vi command mode.
Corrected repeat-operator behavior in vi emulation.
Corrected off-by-one stacking placement when creating new windows.
Fixed keyboard input mapping issue when a
DefaultKeyBinding.dict file is in use with equivalents
specifying numeric keypad keys.
Corrected vi visual/operator G selection endpoint calculation.
Corrected link to the W3C checker help on the web site.
Fixed bug in which opening a single file from an FTP browser window would sometimes open it again in cases where the corresponding document was already open.
Made a change so that commands sent in shell worksheets no longer appear in the shell’s own global history.
If a service error is returned by the W3C validator during a batch check (folder/site), the error is logged into the results rather than being allowed to interrupt the batch operation.
Fixed bug in which FTP/SFTP client connections weren’t correctly being reused, leading to unnecessary reauthentication (which was generally invisible but would become a nuisance when 2FA was in use).
Made a change to fix reported symptoms in which the App Store subscription status was not presented correctly at startup.
Fixed bug in which changing W3C validator settings in the HTML-specific language preferences didn’t affect the behavior as intended.
Fixed bug in which the application would incorrectly determine the download file size of a remote SFTP file, sometimes leading to unexpected results if the file had been changed on the server in between the local determination of the file size and the actual download.
Made changes to improve handling of W3C validator rate limits, which show up as HTTP 503 (“service unavailable”) errors during batch checks.
Fixed performance bug in “Check Site Links”.
File name case warnings when checking links include the actual name of the file on disk.
Corrected cosmetic behavior of indeterminate progress bars in application-modal progress dialogs.