Good afternoon folks, We're currently working on a update to BBEdit 14 which adds some new features and refinements, and addresses a few recently 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. :-) Complete change notes to date for all the pre-release builds in this cycle are available here: <https://s3.amazonaws.com/BBSW-download/14.1_Notes.txt> The change notes are organized into additions, changes, and fixes, and are annotated where appropriate with case numbers. So if you recognize a number corresponding to a support case that was opened for you, you can now verify that it's been fixed correctly. 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 <supp...@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. Here is the list of changes made since the 14.0 public release: ============================================================================ version 14.1 (416129) (2022-01-19) Additions --------- * [DOC] When a note is the active document, or is open in a window by itself, the "Close & Delete" command on the File menu will read "Remove Note", and choosing it will close the note and remove it from its notebook. As always you can assign a keyboard equivalent to this command using the "Menus & Shortcuts" preferences. * [DOC] BBEdit can create and open multiple notebooks. Use File -> New -> Notebook to make a new one; and open them from the Finder or elsewhere as usual. Notebooks can reside anywhere you like. If using a file sharing service (Dropbox, iCloud Drive, etc) you should take care to ensure that the notebook is open in only one running BBEdit at a time. Any notebook you create is supplementary to the built-in shared notebook. Open notebooks are listed in the "Search in:" list in the Multi-File Search window. * [DOC] "Process Lines Containing" provides the option to invert the match test, such that lines which do *not* match the provided search string or pattern are collected, rather than those which do. If desired you can get this behavior by selecting "not containing" in the "Process Lines Containing" panel, or, if scripting, providing the "`inverting test: true`" parameter. * [DOC] You can arrange notes in a notebook's sidebar by clicking on the popup indicator on the right-hand side of the sidebar header. There are options for arranging by name, modification date, and creation date. * [DOC] Image files are browseable in disk browsers and projects, and openable into ordinary window sidebars. The image view includes metadata details, and a "Remove Metadata" button is available for deleting image metadata if desired. (BBEdit will create a macOS version snapshot of the image file before doing so, if possible.) BBEdit will attempt to pick a background color (shade of gray) that provides reasonable contrast with the image. If desired you can adjust the background color using the slider adjacent to the image, and BBEdit will remember this setting per-image. * [DOC] The File Info item (in the navigation bar) and "Get Info" command (from the menu bar or contextual menu) will show an image thumbnail and the image metadata in respective tabs in the info popover. * [DOC] For non-image files, the "Metadata" tab in the "Get Info" will display (in a vaguely human-readable presentation) the file system and/or Spotlight metadata available for the item. + [DOC] When deploying a web site project, a new option is available: "Remove image metadata". This will remove *all* metadata from the uploaded image file (without affecting the local original). It's off by default. * Added "BBEdit Retro" (light and dark) built-in color schemes. If you prefer monochromatic text, or if you want to see what life was like in BBEdit before version 4.0 was released in 1996, these are for you. * Emmet expansion works for CSS/SCSS (as determined by the document's language, and/or the location in the document). * [DOC] Added support for doing useful things with `paths` files which are written out by [FindAnyFile](https://findanyfile.app/). The file format and semantics are described [here](https://github.com/utiscc/DotPathsFileSpec). Multi-File Search can use a paths file as a list of files to be searched. Drag one in to the "Multi-File Search window" or use the "Other" button as needed. (You can search multiple paths files in a single search, if desired.) The `bbedit(1)` and `bbfind(1)` tools can likewise use paths files as input, as a list of files to be opened/searched (respectively). Relevant details are in each tool's man page. * [DOC] BBEdit can load codeless language modules written using YAML or JSON. This may lower the barrier to entry, since (depending on your individual predilections) either is simpler to read (and write) than XML property lists. The keys and values remain as documented. [NFR] The documentation hasn't been updated yet, but will be soon. Meanwhile please ask if you have any questions. * Made a change so that filename extensions are hidden for some types of items in the Multi-File Search source list. * Added a parameter to the `odoc` scripting event, so that when opening a `.paths` file, the client can specify whether it should be treated as text (opening into an ordinary document view) or as a list of paths to be opened into the front window. The default is `false`, so that `.paths` files opened via conventional means open as text documents. Applications which generate paths files can add this Apple Event keyword to the `odoc` event: ``` #define keyOpenAsPathsFile 'PthF' // typeBoolean/typeTrue/typeFalse ``` + If you are using macOS Monterey (12.x), Shortcuts.app will offer a couple of useful actions: "Create Text Document" and "Create Note". These will do what their names suggest, and create the respective item using contents provided in the shortcut action. Changes ------- * [DOC] Reworked the appearance of the "Commands" window a little bit. * [DOC] Rearranged the "New" submenu on the File menu, so that there are fewer separators. Things that don't relate to the creation of text documents (or notes) are below the separator and in alphabetical order. * [DOC] Font selection for text views (for Editor Defaults and other places) limits the maximum font size to 144pt, to eliminate confusion caused by miskeying in the font panel's size field, which itself can specify an arbitrarily large size. * [DOC] For documents in languages for which a language server is installed and running, "Show Symbol Help" on the Edit menu will show detailed information based on the start of the selection range in the document. (This is based on the LSP "hover" feature, for those who are curious.) As always for LSP features, not all servers support this feature, nor is help guaranteed to be available at any given point in the document. * [430335] When using "Show Blame" (Git) or "Show Annotation" (Subversion), the resulting annotation will place the insertion point at the beginning of the line that was selected in the source document (if there was one). * When removing a note, BBEdit will rename the file in the Trash to reflect the title displayed in the application, to make it easier to identify (and if necessary rescue) the note file. * For brand-new preferences, "Wrap around" for text searches defaults to "on". (This is consistent with macOS behavior). You can always turn it off in the Find window, if desired. * It's possible to select text in the Clipboard window. (Be careful what you wish for.) * Made a change so that the Clippings palette remembers which clipping sets were twisted open across invocations (and runs of the application). * #! menu commands implemented by language modules (e.g. "Run" for Python) documents will present progress in a window sheet, rather than application-modally. * Made an internal change so that multiple language modules which support LSP can share a single server instance, if desired. For example, all of the C-family languages use `clangd`; JavaScript and Typescript both use `typescript-language-server`; and PHP and "PHP in HTML" both use `intelephense`. With this change, these languages are configured to respectively use a single server instance, instead of starting one server per language. This reduces memory and CPU utilization for supported languages and servers. * [437705] If you *really* need BBEdit to display glyphs for characters in the Unicode "private use area" (which isn't really possible, unless you've got a custom font), you can use this Terminal command: `defaults write com.barebones.bbedit DisplayPrivateAreaGlyphs -bool YES` This will take effect the next time you start the application. * [438929] Made the green background used in function menu and completion item badges a little darker, to improve contrast. * [DOC] When hovering over a saved search set in the Multi-File Search window source list, a tooltip will appear that displays the items contained in the search set. (NB: search sets are a deprecated feature; we recommend that you use projects instead.) Fixes ----- * Fixed crash which would occur at startup when the conda configuration script ("`conda.sh`") existed but could not be read. This typically occurred in Mac App Store builds in which sandbox access was not granted. * Fixed a bug in which Mac App Store builds might not be able to discover whether `conda` is installed, unless sandbox access had previously been granted. * Fixed bug in which a 12610 error would occur when trying to save changes in a Zip archive when using the Mac App Store build and sandbox access had not been granted. * Fixed bug in which the second Zip-related error to occur would cause the application to exit quietly. * [437554] Fixed a crash which would occur when a file system API would sometimes unexpectedly "soft fail" by returning a "success" result without actually providing the requested data. * [432993] Made a change to guard against the possible cause of a (non-reproducible) hang reported while making a selection in a Differences window. * Fixed memory leak when using the "Commands" command, which would occur if there were any saved Notes. * [432213] Guard against a nonreproducible crash when a file system API unexpectedly returns nil ("should never happen"). * Made various internal changes to improve the efficiency and OS compatibility of the machinery that runs Unix shell scripts and does other Unix-y things. * Made some systemic changes to improve the performance of some text transformations: Add/Remove Line Numbers, Process Lines Containing, Process Duplicate Lines, Prefix/Suffix Lines, and Strip Trailing Whitespace. * Reduced the transient memory requirements of the "Precompose Unicode" transformation when applied via a menu command or the AppleScript interface. * Fixed bug in which clicking in a popover's trigger location when that popover was already open (e.g. clicking on the gear for Text Options) would close the popover, and then immediately reopen it. * Improved progress reporting when uploading files by dragging them to the FTP/SFTP browser window. * Fixed bug in which right-clicking on an item in a disk browser would also cause it to be viewed in the display area. * Adjusted the vertical alignment of icons used in menu item titles when running on macOS 11.0 and later. * [434072] The Perl function scanner will no longer allow anonymous functions (basically, `sub` followed by a brace with nothing but whitespace in between) to confuse function and fold generation. Such constructs are also included in the function menu, appropriately named. * The Ruby language module will color `%i(...)` and `%I(...)` literals as it does other compound literals. * Made a change so that svn "Revert" or git "Discard Changes" will ask Time Machine to create a file version for the file being reverted, so that it's possible to use "Compare Against Previous Version" to rescue an inadvertent revert. * Made a change so that Open File by Name and "Commands" take less time to come up when the Open Recent history includes files on remote file systems (e.g. SMB/NFS). * [426845] Add missing file filter terms to the scripting dictionary. * Fixed malformed alert messages when using "Compare with Base" and similar Subversion commands for items not in the repository (or scheduled for addition). * [439071] Fixed bug in which typing into an empty untitled document would reset its editing and display options to the defaults for its initial language (usually "Text File", unless changed in the Languages preferences), thus discarding any options changes made just before typing. * [438932] Fixed bug in the Java function scanner which would cause fold generation to break in cases where a `new` keyword was placed in an infelicitous location. * [439066] Fixed bug in which some Git commands were incorrectly disabled for the active document. * Made a change to improve performance and reduce memory utilization in the code which locates ctags files. * If the built-in updater gets an error trying to move the BBEdit application to the trash, it'll ask if you want to try deleting it immediately instead. (This may still fail, since moving to the trash often fails because you don't have permissions to modify `/Applications`. But in cases where it fails because something's wrong with your Trash, this change may help.) * Made a change to the built-in updater to preflight the availability of a Trash folder for the application. If this fails, BBEdit will not offer to self-update, since the chances of the updater being able to successfully move the application are slim to none. * Fixed bug in which some failed POSIX API operations would report the wrong error code. * [439140, 439185] Fixed bug in which the window title bar icon did not always change when it should have. * [439183] Fixed crash which would occur when searching recent files/folders during an "Open File by Name" operation and one or more items no longer existed on disk. * [439160] Made a change to guard against (potential) recursive alias loops in installed frameworks, which would cause a crash during startup. * Fixed bug in which the note that was selected when closing a notebook was not necessarily the note that was selected when reopening the notebook. * Projects and notebooks now include a mechanism to guard against unintentional simultaneous use from multiple computers. * Fixed bug in which using the "Open" command with a notebook active would set the file panel's directory to a location inside of the notebook. * [380804 and others] Made a change to address a crash that was sporadically reported during application startup (although we were never able to reproduce it and still aren't sure how it happened, but that's just how it is sometimes). *fin* The package can be downloaded from our web server: <https://s3.amazonaws.com/BBSW-download/BBEdit-14.1_416129.dmg> Enjoy, R. -- This is the BBEdit Talk public discussion group. If you have a feature request or need technical support, please email "supp...@barebones.com" rather than posting here. Follow @bbedit on Twitter: <https://twitter.com/bbedit> --- You received this message because you are subscribed to the Google Groups "BBEdit Talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to bbedit+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/bbedit/5D97796B-586E-4372-82C2-048959365715%40barebones.com. -- This is the BBEdit Talk public discussion group. If you have a feature request or need technical support, please email "supp...@barebones.com" rather than posting here. Follow @bbedit on Twitter: <https://twitter.com/bbedit> --- You received this message because you are subscribed to the Google Groups "BBEdit Talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to bbedit+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/bbedit/9C0D6838-8524-4450-B9C5-5D9EE85B0AD5%40barebones.com.