Skip to content

Commit

Permalink
[DOCS] Add module for Rust language
Browse files Browse the repository at this point in the history
The rust.md was based on python.md module.
  • Loading branch information
ktsiligkiris authored and bbatsov committed Apr 11, 2022
1 parent 585274f commit 0c84593
Show file tree
Hide file tree
Showing 3 changed files with 40 additions and 1 deletion.
2 changes: 1 addition & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ The following programming languages have enhanced support in Prelude:
- [Python](modules/python.md)
- Racket
- [Ruby](modules/ruby.md)
- Rust
- [Rust](modules/rust.md)
- Scala
- [Scheme](modules/scheme.md)
- SCSS
Expand Down
38 changes: 38 additions & 0 deletions docs/modules/rust.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Prelude Rust

!!! Note

This module builds on top of the shared [Programming](programming.md) module.

## Package Prerequisites

For the proper functioning of this module, you'll need to install the
following packages in your system:

* `rustc` (Rust compiler)
* `cargo` (Rust package manager)
* `rustfmt` (Rust tool for formatting code)
* `racer` (Rust completion tool, not necessary if `prelude-lsp` is enabled)
* `rls` (Rust Language Server, if the `prelude-lsp` feature is enabled)

## Rust Mode

Emacs comes with Rust programming support through the built-in
`rust-mode`. Whenever you are editing Rust code run <kbd>C-h m</kbd> to
look at the Rust mode key bindings.

## Syntax checking

Prelude ships with [Flycheck](https://github.com/flycheck/flycheck),
an on the fly syntax checker. Flycheck has support for Rust. Rust is
automatically setup in flycheck, by executing
`flycheck-rust-setup`. If the current file is part of a Cargo project,
flycheck is configured according to the Cargo project layout.

## Cargo integration

Along with `rust-mode`, `cargo-minor-mode` is also configured. You can
give cargo commands from inside the buffer to run cargo commands, like
<kbd>C-c C-c C-b</kbd> for `cargo-process-build`, <kbd>C-c C-c
C-t</kbd> for `cargo-process-test` and <kbd>C-c C-c C-r</kbd> for
`cargo-process-run`
1 change: 1 addition & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ pages:
- Dart: modules/dart.md
- Python: modules/python.md
- Ruby: modules/ruby.md
- Rust: modules/rust.md
- FAQ: faq.md
- Troubleshooting: troubleshooting.md
- Contributing: contributing.md
Expand Down

0 comments on commit 0c84593

Please sign in to comment.