BBEdit is one of the best known text editing applications for the Mac. It's essentially a premium version of TextWrangler; it shares many of the same features, but offers some additional upgrades for a fee. Both applications are published by Bare Bones.
Like TextWrangler, BBEdit is versatile enough to support novice coders and experienced programmers, and it's a great application to have installed - just in case. With multiple clipboards, multiple undos and configurable shortcuts, BBEdit yields impressive results and aids very efficient coding.
Compared to TextWrangler, BBEdit is better for producing standards-compliant code, since it can validate HTML 4.01 through version 5, and XTHTML 1.0 and 1.1. It also adds a convenient Scratchpad for note taking, making it easy to jot down snippets of code, and also offers user defined clippings.
Other benefits include:
- Built in support for Subversion and Perforce.
- Integration with Apple Automator.
- Batch processing of text transformations across multiple files.
- Support for Exuberant Ctags for source code navigation.
- A very reasonable price tag of $49.95.
If you already use TextWrangler, BBEdit is a logical upgrade with a number of additional bonus features that make it well worth your cash.
Fixed bug in which dragging the "Currently Open Documents" section header to resize it in a project window would change the selection in the Currently Open Documents section.
Fixed bug in which the highlight line for dropping items in the middle of a reorderable list (such as the Currently Open Documents list in the sidebar) didn't draw when it should have.
Worked around a bug which appeared when running on macOS 10.11.6 in which closing the Find or Multi-File Search window might cause the Colors palette to appear.
Fixed bug in which files larger than 4294967295 bytes were not read in correctly when opening, which would lead to unexpected data loss if you didn't notice, made changes, and saved.
Fixed some cases in which system text substitutions were not offered by the completion panel when the substitution trigger began with a word-break character. (This change doesn't fix all possible cases in which system substitutions aren't available.)
Fixed bug in which the foreground text color was not correctly applied when copying or dragging styled text out of a document whose language was "(none)" or one which otherwise did not support any syntax coloring. (The underlying issue may also affect completion in such documents based on words from the document itself.).
Fixed bug in which setting Soft Wrap to Window Width would change the character count used for Soft Wrap to "N" Characters.
Made a change to reduce file system activity while maintaining the "Open Recent" document history. This will not likely be noticeable in most cases, but may improve performance on very slow remote file systems.
Fixed exception which would occur when trying to use the "smart zoom" (two-finger double tap) gesture in an editing or project window.
Fixed bug in which the Esc key didn't work to dismiss the Live Search bar when keyboard focus was in the search box and Emacs meta sequences were enabled.
Fixed a bug in which <<- heredoc strings in Unix Shell Script files weren't correctly terminated by an indented occurrence of the delimiter string.
In the About panel, the license code (for individual users) is now hidden initially, and requires a click to make it visible. That way, when you get excited about seeing your name in the credits and post a screen shot on social media, you won't accidentally share your license code with people who don't need to see it.
Changed the math for calculating character-based Soft Wrap to Window Width to address incorrect wrap calculations when using unsmoothed fonts (such as Monaco 9 with smoothing disabled).
If the "current search strings" scripting property hasn't been set yet (because no scripted or recorded operation has occurred), the property will now return a missing value placeholder for each appropriate member of the record.
Fixed a bug which prevented completion based on words in the file from working in "Text File" and "Software Package Notes" files.
Fixed bug in which some of the CSS tools would crash when invoked on a document that was not reasonably formed CSS (or was not CSS at all).
Made some fixes to correct malfunctioning error reporting during SSH key mismatches and other unexpected situations which would occur when connecting via SFTP.
Fixed bug in which host key verification errors returned by SSH were not being reported when attempting to connect to an SFTP server. The correct error is now reported. Note that SSH on macOS 10.13.3 and later may report key mismatches where previous versions of the OS did not. This is due to security policy changes in the OS.
Fixed bug in which AppleScripts that had been previously saved as applications would report an (incorrect) error instead of running.
When running on macOS 10.12 and later, BBEdit no longer specifies -oHostkeyAlgorithms=+ssh-dss as an option when starting ssh to open an SFTP connection. This resolves an issue in which host key mismatches would sometimes be reported when running on newer OS versions. (Correcting ~/.ssh/known_hosts would resolve it anyway, but the key mismatch introduced an unexpected extra step to the process.).
Note that if you are unable to connect to an SFTP server because it has a legacy DSS key, you can correct this as follows:
In a Terminal window, run the following command:
`bbedit -c ~/.ssh/config`.
This will open your current SSH configuration in BBEdit. It may be empty; if so that's OK.
Add the following lines to the configuration file:
Substitute the actual server name for my-server-name.example.com.
Then save the file and try connecting again.
Fixed bug in which edits to the Path field in the FTP/SFTP connection panel would sometimes fail to affect the login directory when actually connecting.
Fixed a regression in which CSS keywords were not properly colored unless there was space between the word and any subsequent punctuation.