8 Awesome New Features in Sublime Text 3.1

What are developers without code editors? I can't seem to think of a clear answer to that. In recent times, code editors have evolved from traditional IDEs to smarter and faster tools. While some favor speed with a minimal user interface (Sublime Text), others choose extended functionality at the cost of lesser speed (Atom, WebStorm).

Sublime Text is one such code editor that favors speed. It is still incredibly fast

Following the recent release of the Sublime Text 3.1, we shall be discussing awesome features and improvements made in this version, from better support for high res devices to improved color schemes, ligatures, file system management and improved performance.

Table of Contents

    Here are the top 8 features and/or improvements in version 3.1

    Improved Text Rendering and Ligature Support

    While a combination or pair of special characters may be a routine thing to write, for instance >= === =>, these character pairs and associations have been modeled into ligatures, I mean, we all have been expecting these!

    The font_options key in .sublime-settings is used to customize ligatures. Below we will see what the options for ligatures and text rendering are in version 3.1.

    Also in version 3.1, there is an improved support for emoji selection and rendering. Have a look at ligatures in action.

    Below you can see an example of some ligatures in Golang.

    In Clojure.

    Better UI Support

    While infrastructure used to developed applications such as monitors scale up, it is required that the tools used on these machine scale too. Version 3.1 of sublime text features improved support for 8k monitors and high DPI devices.

    Also, there is improved support for Windows 10 systems as well as fixes in Mac systems and improved high DPI minimap rendering. In version 3.1, themes can now furnish a @3X version of images for very high DPI monitors.

    Effective Handling of Files and Folders

    Version 3.1 features improvement in handling files and folders as seen in the sidebar. This involves improved filtering options, notification on changes and also a review of how symlinks work. In 3.1, symlinks do not posses reveal arrows in the sidebar but have a Reveal Link Source context menu entry.

    Performance Fixes

    Several fixes were further implemented to improve the performance of the editor (blazing even faster). These include:

    • Improve idle CPU usage.
    • Improvement in memory usage by about 30%. Huge!
    • Fixed increased CPU usage resulting from GPU switches when a theme with a colored sidebar is used.

    Handling Large Files

    Previously, files larger than 16mb such as hi-res images and several other media assets cannot be viewed in a Sublime Text editor. The release of version 3.1 sees an improvement in the handling of larger files as files larger than 16MB can now be opened in Sublime Text.

    User Interaction

    When developing demos, having several lines of code with function definitions and declarations wouldn't hurt, how about with several hundred lines of code. In Sublime Text 3.1, goto references are included in the code and are accessed on hover.

    For instance, a function definition at the top of the script will display all instances of its declaration in the same script, when you hover over the name of the function.

    Similarly, when hovering over a function declaration, the referenced definition line is displayed.

    This reference is also available in the goto reference menu. This can be found in the goto tab of the menu bar.

    Improved Color Scheme Support

    Highlighting of source code is carried out a specific color scheme. Version 3.0 saw the addition of a new color scheme format, using the .sublime-color-scheme file format. New features include, improved color scheme reloading, improved handling of invalid.deprecated scopes in default color scheme. With the .sublime-color-scheme, we can create custom color schemes, in JSON format! Here is a custom color scheme named wiley.sublime-color-scheme with simple global settings for the background, foreground and caret.

    To achieve this, simple navigate to Preferences -> Browse Packages and create the .sublime-color-scheme file in the User folder. In addition to these global settings, rules can also be set to cover for all scopes including strings, sidebar, numbers and symbols in the editor. All these are written in good ol JSON!

    Version 3.1 also touts the hashed syntax highlighting as well as the celeste color scheme to demonstrate the syntax highlight. You can find more features on the Sublime text color scheme here.

    Syntax Definition

    Another important feature is the fixes on syntax highlighting. Syntax highlighting improvements include but not limited to:

    • Added Git Formats package for Git config files.
    • Improvements in JavaScript
    • Improvement in Java
    • Improvement in C#
    • Improvement in Python.

    For proper error handling, error messages related to syntax definitions are more defined to include the filename in the message.

    Conclusion

    Sublime text is a fast and flexible code editor and with the release of version 3.1, we looked at important features and improvements made. From performance improvements to support for higher res devices. Check out the full changelog of the release https://www.sublimetext.com/3.

    Feel free to leave your comments and suggestions under this post. Happy coding!!

    William Imoh

    24 posts

    Developer, Developer Advocate, Changing the world one semi-colon at a time!