Brackets (text editor)

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Brackets
Brackets logo
Developer(s) Adobe Systems
Initial release 4 November 2014; 3 years ago (2014-11-04)[1]
Stable release
1.11 / 25 September 2017; 45 days ago (2017-09-25)
Preview release 1.2 Pre - Linux CEF 2171 (January 22, 2015; 2 years ago (2015-01-22)) [±][2]
Repository github.com/adobe/brackets
Development status Active
Written in HTML, CSS and JavaScript
Operating system macOS, Windows and Linux
Size ~40 MB
Available in 38 languages[3]
Type Text editor
License MIT License
Website brackets.io

Brackets is an open-source editor written in HTML, CSS, and JavaScript with a primary focus on web development.[4] It was created by Adobe Systems, licensed under the MIT License, and is currently maintained on GitHub. Brackets is available for cross-platform download on Mac, Windows, and Linux.

On November 4, 2014, Adobe announced the 1.0 release of Brackets. The update introduced new features such as custom shortcut key combinations and more accurate JavaScript hinting. Brackets has a major focus on development in JavaScript, CSS and HTML. With release of version 1.0 Adobe announced a feature that extracts design information from a PSD file for convenience of coding in CSS.[5] As of June 28, 2016, the feature is officially discontinued, due to "low usage".[6] However, Extract is still available via Photoshop and Dreamweaver, both of which are part of their paid service, Adobe Creative Cloud.[7] The latest version release of Brackets is 1.11.[8]

History[edit]

Adobe first started development of a text editor for web development on Edge Code, which was discontinued as of November 2014.[9] This was later transformed into Adobe Brackets. With the release of Brackets 1.0, Adobe announced that the development of an open source software for web development was ready and was not an experimental project anymore. Brackets contains more than 282 community contributors and more than 400 requests for bug fixes and new features. Every version of Brackets has more than 100,000 downloads and stands to be 16th most popular project on GitHub as of January 16, 2015.[10]

The Brackets repository on GitHub (Bracket repository) currently has 139 branches, 93 releases and 17165 commits as of 29 January 2017. The source code is freely available under the MIT license. A developer can alter features on Brackets and personalize it for one's own convenience by forking the software code.[11]

Features[edit]

Brackets provides several features[12] including:

Quick Edit[edit]

Quick edit enables inline editing of CSS, Color Property, and JavaScript elements for developers. This built-in feature can be applied to multiple functions or properties simultaneously and all updates are applied directly to the file associated with the changed elements.

HTML File
Applying quick edit to HTML elements will display all corresponding CSS properties in a box beneath the selected element. Users can choose to create new CSS rules directly within the editor and edit a tag's CSS properties inline without leaving the context of the HTML file.
JavaScript File
On JavaScript functions, quick edit performs the same procedure as with HTML elements but displays the selected function’s body within the drop down box. All updates to the function’s body will propagate and update directly within the corresponding JavaScript file.
Files containing Hex or RGB color properties
For color properties, quick edit will return an inline color picker for previewing and color adjustment functionality.

Live Preview[edit]

When one clicks the respective code snippet in CSS/HTML the web browser immediately shows the output relating to that code snippet in web browser. This feature is termed as Live Highlight. Also, the feature Live Preview in Brackets pushes code edits instantly to the browser to present an updated webpage as the developers modify the code. Brackets contains a Node.js backend that predicts what the code does as the developer types the code.

Live preview of code change on browser

Two scenarios to Live Preview:

No Back End Logic:
Using Live Preview, Brackets will launch the chosen HTML file in Google Chrome by supplying static content from Brackets built-in server. This procedure does not require any back end logic to support viewing changes to the HTML file.
Back End Logic:
With back end logic, Brackets will direct Google Chrome to a provided project URL running on a separate server but will disable support for HTML-related features. As a result, the browser will not be able to update any HTML, PHP, etc. files in real time and element highlighting will also be disabled for these files. Only edits and element highlighting related to CSS files will be reflected in real time. All non-CSS file updates will be auto-reloaded instead. These limitations exist because providing live editing functionality for HTML files requires injecting annotations into the HTML code before the code is loaded into the browser. These injections are normally handled by Brackets built-in server but are non-existent when projects make use of separate personal servers.

Functionality[edit]

  1. HTML & CSS real time updates (without reloading)
  2. Element Highlighting: Elements selected in HTML and CSS files are highlighted within the browser.

Live preview limitations[edit]

  • Currently only works with desktop Google Chrome (not open-source Chromium), as the target browser.
  • Opening developer tools in Google Chrome will close all live development connections.
  • All files to be viewed must be inside a currently open folder in Brackets.
  • Only one HTML file can be previewed at a time.
  • Real time updates are paused when syntactically invalid HTML is encountered. Brackets will resume pushing changes to the browser when the syntax is corrected.

Split View[edit]

This feature splits the main view into 2 parts. User can split view either vertically or horizontally as per one's own convenience, thus allowing user to work on 2 files at same time. Thus developer can simultaneously work on two different files of two different types. Features such like Live preview, Quick edit works in both views. Currently this feature is limited such that the same file cannot be opened simultaneously in both views.

Multiple File Format Support[edit]

Brackets supports codes from multiple file types from C++, C, VBScript to Java, JavaScript, HTML, Python, Perl and Ruby. The complete list comprises more than 38 file types. This gives the user flexibility to work on various files of a project simultaneously.

Brackets supports a feature called "PSD lens" that helps to smoothly extract each of pictures, logos and design styles from PSD file without opening Photoshop to check for them. By calling this feature a preview Adobe conveys that there is much work ahead before this feature can be perfected. This feature brought in positive reviews from developers but many issues were reported during the initial stages of the feature release. The problem was later solved using an extension.

Theseus Integration[edit]

Brackets integrates Theseus, an open-source JavaScript debugger that enables developers to set break points, step through code, and inspect the value of variables in real time.[15] Theseus can be used to debug any extension in Brackets and is easily installed using the built-in extension manager. Theseus also works in conjunction with Live Preview through a proxy server that records a function and its associated values every time the function is called.

Functionality[edit]

  • Displays number of times a function is called next to the function’s definition.
  • Logs all arguments received, values returned, and exceptions thrown by a function call within Brackets.

Extensions[edit]

Being built with HTML, CSS, and JavaScript, developers can provide additional functionality to Brackets by creating extensions.[12][16] These extensions can be found and installed using the built-in extension manager. Extensions can also be found online via Brackets Extension Registry.

See also[edit]

References[edit]

External links[edit]