Atom 1.33

Atom 1.33 is out! With this release, you’ll enjoy built-in Rust support, improved discoverability for Git and GitHub functionality, and faster performance for bracket matching.

Built-in Rust Support

rust support

Atom now features built-in support for the Rust programming language, using the new Tree-sitter parsing system. Thanks to a Tree-sitter Rust parser initially created by @MaximSokolov, Rust programmers should see more consistent highlighting of things like types and struct fields, as well as more reliable code folding.

GitHub Package

If you like commits, you’re in luck – the pull request detail view now shows a list of commit details. The Undo Discard button now lives behind a context menu, which should help prevent pesky accidental clicks. We’ve increased metrics instrumentation to better understand user interactions. Also, the status bar has new Git and GitHub icons, to (hopefully!) improve discoverability.

open git and github from the status-bar

Shout out to our first-time community contributors @mimidumpling and @colinschindler for their contributions, which make the GitHub package more polished.

Soft Wrapping Improvements

Previously, Atom only wrapped lines at whitespace boundaries. This meant that long character sequences like URLs would often be wrapped abruptly. Now, thanks to @ariasuni, we also soft-wrap after - and / characters, which makes URLs more readable, and matches the behavior of most other programs.

Ability to Disable Snippets

A lot of language packages provide handy snippets, which is great. But sometimes you might want to disable them. Thanks to @savetheclocktower and @Ben3eeE, you can now do so:

  1. Open a language package’s settings.
  2. Scroll down until you see the “Snippets” section
  3. Click on the “Enable” checkbox

disable snippets

Now that the default snippets are disabled, you’re free to create your own snippets.

Performance Improvements - Bracket Matching

When you move your cursor over a bracket character like ( or {, or an HTML tag, Atom highlights the matching bracket or tag. This was previously done using a regex search, which was slow in the case of widely-spaced brackets. This caused lags when moving the cursor over certain characters.

Now, for supported languages, Atom finds the matching brackets and tags using the syntax trees provided by Tree-sitter. This eliminates any lag due to bracket matching!

Don’t forget to check out all the other improvements shipping with Atom 1.33 in the release notes! :memo:

Atom Beta

Atom 1.34 Beta

With Atom 1.34 Beta comes diff rendering improvements, commit preview functionality, and an upgrade to Electron 2.0.14.

GitHub Package

Calling performance enthusiasts: the GitHub package now renders diff views with a TextEditor. TextEditor offers many performance enhancements, allowing us to render large diffs faster. Furthermore, your text editor key bindings now work in diffs.

Are you the conscientious sort, who loves to double check the specific changes that are going into each commit? When crafting commit messages do you have a desire to draw inspiration from the diff of your staged changes? If so, you’re going to love the commit preview feature. Just click the “See All Staged Changes” button above the commit message box, and you’ll see all of your staged changes in a single pane.

commit preview

Thanks to community contributor @gauravchl, Atom now supports commit message templates. You can add a template on a per-project basis or globally through your git configuration. The template text will then appear in the commit input box within Atom.

Community Contribution Highlights

When editing markdown code blocks, the Kotlin language now has syntax highlighting. Thanks @radixdev for your first-time contribution to Atom.

Long time volunteer maintainer @50Wliu fixed a nasty bug where package searches from the settings view were throwing uncaught exceptions.

Thanks to first-time contributor @edahlseng, you can now collapse all directories in tree view even if nothing is selected.

Electron 2.0.14 Upgrade

Atom is now running latest stable version of the Electron 2.x branch. This update fixes some crashes that were happening on macOS, along with some other improvements. Keeping Electron up to date makes future upgrades less painful. See Electron’s release notes for additional details.

There are many more details in the release notes.

Get all these improvements today by joining the Atom Beta Channel!