Brackets Sprint 37 Build

Article by: Bryan Chin

Brackets Sprint 37 Build

It’s time, once again, for a new Brackets build. This release has a balance of new features, under-the-hood improvements, and some key bug fixes in recently-added features.

Exclude Files and Folders from Searches

“Find in Files” now has the ability to exclude files and folders from your search. This is very useful if you have a lot of files that you don’t need to search, for example, in node_modules folders.

New Exclude Files and Folders from Find in Files bar

To set the files or folders to exclude, click on the “Exclude files…” button. Then, in the dialog, simply type a list of patterns specifying the files and folders you want to exclude. Simple strings match any item whose full path includes that string. You can also use wildcards/globs to specify more complex patterns.

For more information, see Using File Filters.

Signed Builds on Mac and Windows

Until now, Brackets builds have been unsigned, which made them cumbersome to install and run. You had to know the special “right-click and choose Open” on Mac OSX or “click the ‘More info’ link to install under SmartScreen” on Windows 8 tricks in order to run or install. Starting with Sprint 37, Brackets builds will now be signed on both Mac and Windows, so you’ll no longer have to deal with those problems.

Preferences Infrastructure Improvements

Last sprint, we introduced a new preferences system. In this sprint, we’ve enhanced it to also store view state – transient information that isn’t really preferences, but needs to be saved between Brackets sessions (for example, the width of the sidebar). With this addition, the Preferences API is now finished and fully available for extension authors to take advantage of.

We’ve also added a few more preferences, including the ability to configure a proxy for extension installation, as well as to tweak editor behaviors like inserting code hints when you hit Tab. For more information, see the Preferences documentation.

Improved File Watcher and Live Development Stability

We also introduced a new file watcher infrastructure last sprint that made it possible for Brackets to auto-refresh the file tree and the open editor when changes were made outside Brackets. In this sprint, we’ve fixed a critical bug in this infrastructure that sometimes made it so Brackets would stop noticing file changes when multiple files were changed at once. This would typically surface when switching branches in source control.

We were also finding that Live Preview had become less stable in recent sprints – specifically, starting the browser connection was flaky. We’ve made a number of improvements in this area, so Live Preview should start much more reliably now.

Please let us know if you find any other issues in these areas.

Looking Forward

Another major piece of work we started in this sprint is one that’s been requested by many users: support for multiple cursors and selections. Marijn Haverbeke is in the process of adding this functionality to CodeMirror, and we’re integrating it into Brackets as well. If all goes well, our plan is to ship this in Sprint 38.

Community Contributions

As always, the Brackets community has added many other improvements and fixed bugs. Thanks to everyone who’s contributed!

Allow inline cubic-bezier/steps editor on empty timing functions by Marcel Gerber
Keep Find in Files results in predictably sorted order (and) by Tomás Malbrán
Move Working Files sort options from context menu to new settings dropdown by Alessandro Artoni (followup fixes by Tomás Malbrán)
New preference: Insert code hints with Tab by Tomás Malbrán
New preference: Sort directories to top in file tree (vs. intermingled with files) by Tomás Malbrán
New preferences: Disable ‘smart indent’; disable auto-inserting HTML close tags by Tomás Malbrán
If preferences JSON is invalid, show a warning and then run without the setting changes from that file by Arzhan “kai” Kinzhalin (Intel Corp)
Replace can use `$&` to insert whole regexp match by Marcel Gerber
Allow specifying a port number in Live Preview custom server URL by andoband
Add Indonesian translation (and) by Nasaruddin and Resi Respati
Disable Close Others context menu items when irrelevant by Marcel Gerber
Strip leading/trailing whitespace from extension URL by Marcel Gerber
OS-specific labels for “Show in OS” context menu item by Marcel Gerber
Make Overwrite cursor mode visually distinct from Insert mode (and) by Bernhard Sirlinger
Don’t hide user-editable source control files like .gitignore by Tom Van Schoor
Find in Files: Expand/collapse all sections via Ctrl/Cmd-click by Sathyamoorthi
Bezier inline editor: tab between points to move them with keyboard by Marcel Gerber
Add CSS value code hints for `flex`, `flex-basis` properties by Marcel Gerber
Highlight .ascx files (ASP.NET User Controls) as plain HTML by Clay Miller
Highlight .plist (Property List) files as XML by Clay Miller
Fix some native memory leaks on Mac by Brandon Jones
Fix font zoom viewport for new CodeMirror (and) by Tomás Malbrán
Fix #6828: Return Brackets-style paths from extension-installation code by Arzhan “kai” Kinzhalin (Intel Corp)
Fix Toggle Line Comment in JSON files by Marcel Gerber
Prep work for supporting native menubar on Linux (not enabled yet) by MattSturgeon
Fix #6612: Reset scroll position in Find in Files results more reliably by Tomás Malbrán
Fix #5923: Don’t scroll hidden list tab in Extension Manager by Marcel Gerber
Update jQuery to 2.1.0 (from 2.0.1) by Bernhard Sirlinger
Fix failing ProjectManager unit test by Lance Campbell
Fix CodeInspection unit tests on non-English locales by Bernhard Sirlinger
Code cleanup: Close Others context menu by Marcel Gerber
Code cleanup: Remove unneeeded .livehtml flag by Marcel Gerber
Code cleanup: Remove duplicate CSS code hint value by Bernhard Sirlinger
Code cleanup: Avoid `.not.toBe(null)` in unit tests by Michael Hernandez (Intel Corp)
setup_for_hacking script: Support git repo locations with spaces in path on Windows by Andrew Dal Cin
Fix brackets-shell build script on Mac case-sensitive file systems by Martin Prins
Fix #6452: Prevent Debug > Reload Brackets from being run re-entrantly by Lance Campbell
Use names from each language’s own locale in the Debug > Switch Language UI by Michael Hernandez (Intel Corp)
Czech translation update by kvarel
German translation update by Marcel Gerber
Persian-Farsi translation update by Mohammad Yaghobi
Polish translation update by Olgierd Grzyb
Romanian translation update by Micleusanu Nicu
Spanish translation update by Tomás Malbrán
Russian translation fix by wpt
Russian translation fix by Arzhan “kai” Kinzhalin (Intel Corp)
Update localization instructions by Michael Hernandez (Intel Corp)

Leave a Reply

Your email address will not be published. Required fields are marked *