Listen to this story
|
A StackOverflow survey considers Rust one of the fastest-growing languages, with it being ranked as the most-liked language by its users. In addition, major tech companies are already using Rust, including Meta, which included Rust in its panel of officially supported server-side programming languages earlier this year.
Explaining what makes Rust such a hit, StackOverflow’s top Rust contributor Jake Goulding (aka Shepmaster) said Rust solves the pain points of many other languages, providing a step forward with only a limited number of downsides.
If you’re one of the fans of Rust and love to work with lean, mean tools tailored exactly to your needs, this list is for you! Here are the 7 essential tools worth trying.
THE BELAMY
Sign up for your weekly dose of what's up in emerging technology.
Rust-analyzer
Developed by Ferrous Systems, Rust-analyzer is a free and open-source project. It is an implementation of Language Server Protocol for the Rust programming language. It provides features like quick fixes to automatically apply Clippy lints and better auto-complete along with predicting things as you type them.
It is a modular compiler frontend for Rust and a part of rls-2.0 effort to create IDE support.
Download our Mobile App
Check out the GitHub repository.
Vim
Vim is a commonly used command-line text editor in Linux and Unix. It provides Rust file detection, syntax highlighting, formatting, Syntastic integration—the list goes on. It requires Vim 8 or higher for full functionality. Vim is a robust setup used to efficiently edit Rust code.
Check out the GitHub repository.
Emacs
A text editing tool that comes out of the box with Linux and macOS. This not-so-popular cousin of Vim offers powerful capabilities with language support and can help users navigate faster in macOS with the same keybindings. The elementary modes being used are the following: rustic, lsp-mode, company, yasnippet, and flycheck.
Check out the GitHub repository.
Clippy
Clippy is a lint collection to catch usual mistakes and improve the Rust code. It will definitely keep you on your toes and teach you a lot. All the common workspace options should work with Clippy. Furthermore, it can be used for projects that do not use cargo. To do so, run clippy-driver with the same arguments used for rustic.
Check out the GitHub repository.
Cargo
The Rust package manager allows packages to declare their dependencies and ensure you’ll always get a repeatable build. To a large extent, Cargo normalises the commands needed to build a programme or library. The same command can be reused to build different artefacts, regardless of their names.
Rather than invoke rustic directly, we can invoke something common such as cargo build and let the cargo construct the correct invocation. Furthermore, it will auto-fetch from a registry any dependencies defined for the artefact and arrange to be incorporated into the build as needed.
Check out the GitHub repository.
Serde
Serde is a framework for efficiently serialising and deserialising Rust data structures. It consists of data formats and provides a layer through which the two groups interact with each other.
Check out the GitHub repository.
bacon
bacon is a background rust code checker. It’s designed for minimal interaction, so it can run alongside the editor and be notified of warnings and errors. Furthermore, it conveys the information needed even in a small terminal so that the user can keep more screen estate for several other tasks.
bacon watches the content of the source directories and launches cargo checks on changes. To prevent any blocking, watching and computations are done in the background.
The screen is cleaned after the compilation is complete to prevent replacement of useful information by the lines of an unfinished computation. Moreover, errors display before warnings because they are usually fixed first. Rendering is adapted to the dimensions of the terminal to ensure you get a proper usable report. Additionally, bacon manages rewrapping on resize.
Check out the GitHub repository.