# rust-mode

> major-mode for editing Rust source code in emacs

**Wikidata**: [Q110215999](https://www.wikidata.org/wiki/Q110215999)  
**Source**: https://4ort.xyz/entity/rust-mode

## Summary
Rust-mode is a major-mode for editing Rust source code in GNU Emacs, providing specialized syntax highlighting, indentation, and other features tailored to the Rust programming language. It is distributed as free software under the Apache Software License 2.0 and the Expat license.

## Key Facts
- **Primary use**: Source code editor for Rust, specifically designed as an Emacs mode.
- **Aliases**: emacs-rust-mode, elpa-rust-mode.
- **Licenses**: Apache Software License 2.0 and Expat license.
- **Part of**: NonGNU ELPA since August 7, 2021.
- **Latest stable version**: 1.0.5, released on June 26, 2022.
- **Maintained by**: The Rust project (Q9661).
- **Distributed by**: Emacs Lisp Package Archive (ELPA) since August 7, 2021.
- **Programming language**: Written in Emacs Lisp.
- **Operating system**: Designed for GNU/Linux (Q3251801).
- **Instance of**: Free software, software library for GNU Emacs, and Emacs extension.

## FAQs
### Q: What is rust-mode used for?
A: Rust-mode is an Emacs major-mode designed for editing Rust source code, offering features like syntax highlighting, indentation, and other Rust-specific tools.

### Q: Is rust-mode free software?
A: Yes, rust-mode is distributed under the Apache Software License 2.0 and the Expat license, making it free software.

### Q: How do I install rust-mode?
A: Rust-mode can be installed via the NonGNU ELPA repository or directly from its GitHub repository.

### Q: Who maintains rust-mode?
A: Rust-mode is maintained by the Rust project, which oversees its development and updates.

### Q: What programming language is rust-mode written in?
A: Rust-mode is written in Emacs Lisp, the dialect of Lisp used in GNU Emacs.

## Why It Matters
Rust-mode plays a crucial role in the Rust programming ecosystem by providing a specialized editing environment within GNU Emacs. As Rust gains popularity for systems programming, tools like rust-mode help developers write, debug, and maintain Rust code efficiently. By integrating Rust-specific features into Emacs, rust-mode enhances productivity for Rust developers who rely on Emacs for their workflow. Its availability as free software ensures accessibility and community-driven improvements. The tool’s inclusion in package archives like ELPA makes it easily discoverable and installable for users of GNU Emacs.

## Notable For
- **First major-mode for Rust in Emacs**: Rust-mode was one of the first specialized editing modes for Rust in GNU Emacs, addressing the need for Rust-specific tooling.
- **Stable releases**: Rust-mode has seen multiple stable releases, including version 1.0.5, indicating its maturity and reliability.
- **Free software**: Its dual licensing under Apache 2.0 and Expat ensures broad compatibility and permissive use.
- **Community-driven**: Maintained by the Rust project, it benefits from the Rust community’s support and contributions.
- **Cross-platform availability**: While primarily for GNU/Linux, its distribution via ELPA makes it accessible across platforms where Emacs is used.

## Body
### Overview
Rust-mode is a major-mode for GNU Emacs designed to enhance the editing experience for Rust source code. It provides syntax highlighting, indentation, and other Rust-specific features, making it a valuable tool for Rust developers who use Emacs.

### Licensing and Distribution
Rust-mode is distributed under the Apache Software License 2.0 and the Expat license, classifying it as free software. It is available through the NonGNU ELPA repository, which hosts it since August 7, 2021. The latest stable version is 1.0.5, released on June 26, 2022.

### Development and Maintenance
The project is maintained by the Rust project (Q9661), ensuring its alignment with Rust’s development roadmap. It is written in Emacs Lisp, leveraging the Emacs ecosystem for functionality.

### Installation and Availability
Rust-mode can be installed via NonGNU ELPA or directly from its GitHub repository. It is also available as a package in various Linux distributions, including Gentoo (app-emacs/rust-mode) and Debian (elpa-rust-mode).

### Technical Details
Rust-mode is designed for GNU/Linux (Q3251801) and integrates with Emacs’s major-mode system. It is part of the broader Emacs extension ecosystem, providing specialized tools for Rust development within Emacs.

## References

1. [Source](https://elpa.nongnu.org/nongnu/rust-mode.html)
2. [Source](https://github.com/rust-lang/rust-mode/blob/master/LICENSE-APACHE)
3. [Source](https://github.com/rust-lang/rust-mode/blob/master/LICENSE-MIT)
4. [Rust-Mode version 1.0.3. 2021](https://lists.gnu.org/archive/html/gnu-emacs-sources/2021-12/msg00027.html)
5. [Rust-Mode version 1.0.2. 2021](https://lists.gnu.org/archive/html/gnu-emacs-sources/2021-11/msg00046.html)
6. [Rust-Mode version 1.0.1. 2021](https://lists.gnu.org/archive/html/gnu-emacs-sources/2021-10/msg00097.html)
7. [Rust-Mode version 1.0.0. 2021](https://lists.gnu.org/archive/html/gnu-emacs-sources/2021-10/msg00051.html)
8. [Rust-Mode version 0.5.0. 2021](https://lists.gnu.org/archive/html/gnu-emacs-sources/2021-08/msg00034.html)
9. [Source](https://github.com/rust-lang/rust-mode/releases/tag/1.0.4)
10. [Rust-Mode version 1.0.5. 2022](https://lists.gnu.org/archive/html/gnu-emacs-sources/2022-06/msg00040.html)
11. [Release 0.3.0. 2016](https://github.com/rust-lang/rust-mode/releases/tag/0.3.0)
12. [Release 0.4.0. 2019](https://github.com/rust-lang/rust-mode/releases/tag/0.4.0)