v12.0.2版本新功能

Version 12.0.2:

Note: Owners of BBEdit 11 can upgrade for US$29.99. Owners of BBEdit 10 or earlier (including customers who purchased BBEdit in the Mac App Store) can upgrade for US$39.99.

Fixes:

In order to work around a crash in the OS (Radar 35052088), BBEdit will no longer submit recently opened items to the system-wide "Recent Items" list that appears on the Apple and Dock menus. We regret any inconvenience this may cause, and hope that it is strictly temporary.

Fixed bug in which menu items indicated by searching for them using the Help search box would be disabled in situations where they shouldn't have been.

Fixed bug in which the "Update" scripting event would return an error.

BBEdit now writes out temporary files for live preview windows with 644 permissions, so that other processes (such as Apache) can read the file if necessary.

Fixed a bug in which a request from the command line (or elsewhere) to open an sftp URL without a username (or password) would return a -50 error.

Fixed a memory leak in the SFTP client listing code.

Fixed bug in which twisting open an item in the FTP/SFTP browser would not always show its contents.

Fixed a collection of bugs that conspired to slow down SFTP operations, particularly the initial connection to the remote server.

Fixed a bug in which attempting to create a new FTP/SFTP item with the same name as one that was just deleted would report that an item with the same name already existed.

Fixed a bug in which the FTP/SFTP navigation popup menu would not display all of the folder names in the ancestry chain if two adjacent folder names were spelled the same. (Thanks, NSPopUpButton, you're a real big help.)

Fixed a regression in which "Save [a Copy] to FTP/SFTP" server didn't pick up on an active connection in cases where an FTP/SFTP browser window was open.

Fixed bug in which dragging the title bar icon from a window displaying a document opened via the built-in FTP/SFTP support would drag the location of its backing file, and not the remote URL.

Fixed bug in which the "Save [a Copy] to FTP/SFTP Server" panel didn't automatically connect to the destination server in cases where it had enough information available to do so.

After connecting to a server, the FTP/SFTP browser window will move keyboard focus to the listing view; and after disconnecting, it will move focus back to the "Connect" button. This will save a press or two of the Tab key.

Fixed bug in which disconnecting from an SFTP server would never take less than two seconds, which made processes like reopening a lot of SFTP files at application startup take much longer than they should have.

Made a change to SFTP I/O to improve performance and CPU efficiency when waiting for data to arrive.

Fixed a bug in which the SFTP client would report a successful "change working directory" operation even if the desired directory did not exist. Usually this would cause problems when deploying a site and adding directories that were not present the remote server.

Fixed bug in which a -1704 error would be reported when choosing a directory from the title bar menu for a document that had been opened via the built-in FTP/SFTP support.

BBEdit will (once again) warn about malformed UTF-8 files rather than simply refusing to open them.

Fixed bug in which the "Allow the Escape key to trigger text completion" preference was ignored, and the Esc key did not work to trigger completions.

Fixed bug in which no completion sources were allowed for plain-text languages (Text File, CSV, TSV), which was not necessarily a useful outcome.

Fixed crash which would occur when quitting the application while the completion panel was open.

Fixed bug in which the mouse/trackpad event that caused dismissal of the completion panel wasn't passed through to the text afterwards.

Fixed a bug in which the initially selected item in the completion panel wasn't scrolled into view when it should have been.

Fixed a bug in which invoking a clipping from the completion panel would lead to a bizarre chain of events in which the completion panel ran an AppleScript with a display dialog verb which accepted user input, and the Return or Enter key was used to accept the input in the dialog. The result was that the script would run again, lather rinse repeat.

Fixed a bug in which completions for predefined selectors provided by the CSS/SCSS module would be out of order, leading to unexpected behavior in the completion panel.

Fixed a bug in which the first completion suggested by a document's language would be selected in the list, even if other completions were before it (such as clippings).

Rewrote ancestor discovery code (used for finding .git, .svn, and such like) to improve performance as well as behavior when used for files that aren't on the boot volume.

Fixed crash which could occur when certain changes were made in the Font panel while adjusting a font preference.

Fixed bug in which the "New Text Window" and "All Running Browsers" commands were left out of the "Preview In" submenu on the Markup menu.

Fixed bug in which the window resulting from a Preview/New Text Window operation didn't have the desired title.

Fixed bug in which certain errors reported during attempts to automatically back a file up were not reported correctly.

Fixed bug in which contextual-menu commands in the Currently Open Documents list of a project sidebar would be targeted to the Project list instead.

Made a change to the "Rearrange Columns" panel so that it can be expanded horizontally to accommodate long column header names.

Fixed a bug in which preview temp files generated for live previews didn't have the appropriate extended attributes which allowed them to be excluded from various site operations.

Fixed crash when trying to remove customized settings for a specific language (in the Languages settings).

Fixed bug in which window activation changes were mismanaged by the application. Although there weren't any reported bugs attributable to this, it was wrong and needed to be fixed.

Fixed bug in which zooming (option-click on the green button, or keyboard equivalent for the Zoom command) a window would not maximize it to the correct height.

Fixed bug in which folder aliases/symlinks in disk browsers weren't correctly followed when double-clicked.

Fixed a bug in which the non-focused pane in a split text view would drift when lines were added or removed while editing.

Keyboard events that arrive during mouse tracking are now reposted when the mouse tracking is completed, rather than being ignored and beeping.

The "handle" used for view splitters in some situations is now tinted using the prevailing color, rather than being drawn black.

Fixed crash which would occur when switching an existing Text Factory action to a one that required certain parameters to be present.

Fixed bug in which "Bring All to Front" didn't.

Fixed a bug in which typing was visibly slow while editing documents in languages implemented by codeless language modules (although the language module was itself not the source of the problem).

The factory default for showing Git ignored files in disk browsers and project folders has been changed, so that such items are now visible. The "Git Ignored Files" item in the filter menu (magnifying glass in the sidebar) can be used to adjust this setting.

Fixed a latent bug that could have caused a crash when dragging text into the Find or Multi-File Search text boxes.

Corrected behavior when attempting to initiate dragging from a background window; the drag now starts correctly rather than activating the window (and potentially obscuring the destination).

Fixed bug in which multi-file search/replace results windows would leak a small amount of memory after use.

Fixed bug in which Differences windows would leak a small amount of memory after use.

Fixed bug in which clicking in the "scroll" area of a horizontal text view scrollbar would fail to scroll in the appropriate direction.

Fixed a singleton memory leak.

Made a change to work around an OS application framework behavior which would sometimes cause Apple Events to be dispatched incorrectly, which in turn could lead to unpredictable and undesired behavior during various operations.

Fixed a bug in which quitting the application while it was hidden (by using Log Out, Restart, Shut Down, or the Quit menu on the dock icon) would fail to save its internal state. This would result in data loss in cases where the state included unsaved documents that hadn't recently been autosaved.

Fixed a memory leak when putting attributed text on the pasteboard.

Made a change to prevent a crash when closing the Clippings and/or Insert Clipping panel while running on 10.11.6.

Fixed bug in which files which were explicitly added to a project (vs being within a folder that had been added to the project) were not filtered correctly during multi-file search operations.

Please note that if you use the Multi-File Search window to specify individual files, and you are using a file filter, the files you specify must match the filter or they will not be searched.

Fixed a bug in the PHP function scanner/fold generator in which it didn't properly handle certain kinds of brace/paren/bracket nesting, and so wouldn't correctly generate folds for arrays in certain files.

Symlinks/aliases are now allowed for items in the Preview Filters and Preview CSS application support folders, which makes it easier to work with (for example) preinstalled Markdown tools and style sheets in existing project directories.

Restored heading level indicators for entries in the function menu for Markdown documents.

Fixed a memory leak which would occur when closing the Find or Multi-File Search windows.

Windows are once again listed on the application's Dock menu. Windows containing multiple documents will have those documents displayed in a sub menu for the window's item.

Fixed bug which caused the tick marks used in vertical scroll bars to be drawn in an inverted coordinate system (and thus in the wrong place in the scrollbar track) on macOS 10.11 and 10.13.

Made a change to the startup progress mechanics so that the progress panel doesn't appear unless the application takes more than a couple of seconds to restore its saved state. The application is also a better citizen during state restoration.

Added search keywords to the Editing preferences for the pinch-to-zoom control.

Made a change to display the name of each remote file that is being reopened at startup, rather than its entire URL (which usually got truncated).

The "Unix Shell Script" color scanner is now better about heredocs which begin with a "-" after the "<<" opener, and better about whitespace between the "<<" and the first string.

If the user had previously done "Skip This Version" in response to a Software Update check, manual "Check for Updates" would cease to offer updates for that version. Now, a manual "Check for Updates" will always offer the current version if it is newer than what is running. (Automatic updating will continue to honor "Skip This Version".)

Fixed a bug in which the application wouldn't remember which floating palettes were open, in cases where the application was quit while in the background (as well as when quit from the foreground, in some situations).

Fixed bug in which BBEdit would open an untitled text document at startup when the "New text document" application preference was set, even in situations when non-text documents had already been opened.

Fixed bug in which Command-D didn't work to dismiss the "do you want to save" panel on keyboards whose layouts changed depending on whether the Command key was down (Dvorak+QUERTY being the proximate example).

Fixed case in which the application would crash if it ran out of memory while saving a sufficiently large document with "Strip trailing whitespace" turned on.

The PHP fold generator was a little too aggressive about generating folds for paren and bracket ranges, and now only does so when there's at least one line break in the range.

Fixed a bug in which the "Use LCD font smoothing when available" system preference was not honored when drawing various UI elements.

Fixed a bug in which expanded package nodes in a project (or instaproject) were not rescanned when changing file filter settings.

Fixed bug in which a nib-backed script would report a -43 error if the dialog box was cancelled.

Fixed bug in which items in the Currently Open Documents pane couldn't be clicked on when a project was opened with the "Project" pane collapsed.

Fixed bug in which unsplitting a text view, switching to a different document in the same window, and then switching back to the previous document would leave a "phantom" scrollbar in the window, which would crash when clicked on.

Fixed bug in which closing the main "HTML Tools" palette would remove menus used by its buttons from the main menu bar, and subsequent invocations of the palette would be missing those menus until the application was restarted.

Fixed bug in which clicking in the "page left" or "page right" area of the horizontal scrollbar in lists (such as search results) would scroll in the wrong direction.

When creating a new Text Factory window, it is now populated with an initial step, saving a click on the "+" button.

Made a change so that auto-pairing of * and _ is no longer done within Markdown code runs (inline or fenced).

Fixed crash which would occur when trying to use the Placeholders command on a scratchpad document.

Fixed bug in which glyphs for the Return or Enter keys were not displayed in the Menus & Shortcuts preferences and other locations.

Fixed bug in which RCS keyword filtering during comparison would ignore only the first keyword on the line.

Fixed bug in which downloading the user manual over a very slow Internet connection would run the application out of memory and crash if the process took long enough.