Hi All -
We're currently working on a feature update to BBEdit 16; in addition to a range of notable feature additions, there are also performance improvements, refinements to existing features, and fixes for reported issues.
Note that this is a _pre-release_ version. The intent is to fix bugs and address areas of improvement based on what our customers have reported. However, since the software is at this point not fully tested, there _may_ be bugs and regressions.
If this prospect makes you nervous, then sticking with the public release versions is your best course of action. Nobody will be offended if you choose to do so; you're under no obligation to install and use anything but a public release. :-)
These change notes cover the changes since the 16.0.3 public release:
https://s3.amazonaws.com/BBSW-download/notes-16.1.txt
The change notes are organized into additions, changes, and fixes. Please take the time to review the changes before using the new build -- it'll be worth your time.
One final note: If you run into a bug in a pre-release version, PLEASE DO NOT REPORT THE BUG TO THE LIST. This includes asking about whether others have seen the same problem. Instead, please send a bug report to <
sup...@barebones.com> and we will deal with it there. This will help us keep the list discussion on topic and productive for all list members.
The list of individual changes since 16.0.3 is pretty large, so rather than paste all of them, here is a summary:
## Highlights
- **Language Playgrounds.** This is a new interface for building support for languages BBEdit doesn't include. Playgrounds produce Declarative Language Modules, a new and richer format that replaces codeless language modules. You can start from scratch or import an existing codeless module. On macOS 26 with Apple Intelligence turned on, you can also give the language's name, a sample file, and some documentation, and Apple Intelligence will draft a playground for you to start from.
- **Highlight Patterns.** In the Setup window, you can define a literal string or a Grep pattern. BBEdit highlights every match in your open documents in the color you choose, with an optional separate color for Dark Mode. Matches can also show tick marks in the scroll bar. You can create a pattern directly from the Find window or the Live Search bar, and turn patterns on or off globally or for each language.
- **Built-in HTML checker.** The W3C HTML5 syntax checker is now built into BBEdit, so checking no longer depends on the network or on remote rate limits. You can still use the W3C's service or your own local instance if you prefer.
- **Syntax coloring in Markdown code blocks.** Fenced code blocks are now colored in the language named on the fence, such as ` ```python ` or ` ```js `. Common abbreviations are recognized. Inside these blocks, commenting, auto-pairing, and spell checking follow the code's language, so comments and strings may now show spelling marks. Fences also follow the CommonMark rules, including `~~~` fences.
- **New language support:**
- Kotlin, set up to use the `kotlin-lsp` server
- SystemVerilog
- TaskPaper
- `diff` output
- JSONC (JSON with comments), added to the JSON module
- **Right-to-left text.** Extensive work on the text engine improves how right-to-left scripts display and edit. A new submenu in the Edit menu inserts bidirectional control characters.
## Other Improvements
- The language indicator in the status bar now opens a searchable list instead of a long menu.
- When you search in Settings, matching items are now highlighted in each pane.
- You can now edit Expert preferences directly in the list.
- "Copy Recognized Text" and "Copy & Append Recognized Text" copy text that BBEdit found in an image.
- There's a new "Instance variables" color in the Text Colors settings.
- Several improvements when using macOS Writing Tools.
- SFTP now has a keepalive setting, which can also follow the settings in `~/.ssh/config`, and a connection timeout of 30 seconds by default.
- The Setup window's toolbar and layout have been updated.
## Performance
- Large files open dramatically faster. UTF-8 validation, reading ASCII files, and the calculations done while loading are all orders of magnitude faster.
- BBEdit starts up faster.
- Typing is more responsive, especially in Markdown and CSS documents.
- Editing is faster in text with many combining characters, such as polytonic Greek or pointed Hebrew.
- Tag balancing and matching-tag highlighting are faster in large HTML documents.
- Word counting and spell checking are faster in very large documents.
## Notable Fixes
- BBEdit no longer hangs if an SFTP connection drops during an operation.
- Fixed a problem introduced in 16.0.2: Replace All, text factories, and some saves could hang on documents opened from an FTP or SFTP server.
- Documents from FTP/SFTP servers now reconnect to their server location when recovered after a crash, instead of coming back as untitled documents. Passwords are never saved with the recovery data.
- Attachment scripts: fixed a problem, present since 14.5, where a "should" script couldn't prevent the operation. When a script declines, the operation is now canceled as if you had canceled it yourself.
- Saving application state at quit is more reliable.
- Right Arrow now moves across folded text correctly.
- Fixed several problems with custom key bindings in `DefaultKeyBinding.dict`. A new Expert preference tells BBEdit to ignore that file.
- Text filters used for previews now use the current shell environment, including an active virtual environment.
- Many fixes to `vi` emulation, especially visual mode. `vi` keys are now off by default in the Find and Multi-File Search fields; you can turn them back on with the Expert preference `DisableViModeInFindWindows`.
- The HTML/XML coloring scanner has been rewritten.
- Coloring fixes for JSP, for Markdown lists and blockquotes, for Python binary numbers with digit separators, and more.
- Fixed a crash when using the "Use Grep" keyboard shortcut while the Live Search bar was hidden.
## Upgrade Note
If you had mapped `.sv` or other SystemVerilog file extensions to the Verilog module, remove those mappings so the new SystemVerilog module is used.
You can download the pre-release build here:
https://s3.amazonaws.com/BBSW-download/BBEdit-16.1_16B15.dmg
Enjoy,
R.
--
Rich Siegel Bare Bones Software, Inc.
<
sie...@barebones.com> <
https://www.barebones.com/>
Someday I'll look back on all this and laugh... until they sedate me.