This repository has been archived on 2024-10-22. You can view files and clone it, but cannot push or open issues or pull requests.
spacemacs/layers/+lang/rust
2016-05-29 22:39:21 -04:00
..
img
config.el rustfmt: Remove obsolete package 2016-02-23 20:42:25 +01:00
funcs.el Add key binding for cargo fmt 2016-04-11 20:43:03 +02:00
packages.el Use :toggle keyword instead of when forms 2016-05-29 22:39:21 -04:00
README.org [rust] Sort keybindings alphabetically 2016-04-11 20:45:47 +02:00

Rust contribution layer for Spacemacs

/TakeV/spacemacs/media/commit/07864f50d9785381dac5242acb6dde1ef4cc7cc0/layers/+lang/rust/img/rust.png

Description

This layer supports Rust development in Spacemacs.

It has auto-completion and navigation support through Racer and supports Cargo.

Install

Layer

To use this configuration layer, add it to your ~/.spacemacs. You will need to add rust to the existing dotspacemacs-configuration-layers list in this file.

Racer

You must install Racer to use this. Make sure the racer binary is available in your PATH and to set the environment variable RUST_SRC_PATH, as described in the installation instructions.

To enable auto-completion, ensure that the auto-completion layer is enabled.

Cargo

Cargo is a project management command line tool for Rust. Installation instructions can be found on the main page of Cargo.

Rustfmt

Format Rust code according to style guidelines using rustfmt.

cargo install rustfmt

To enable automatic buffer formatting on save, set the variable rust-format-on-save to t.

Key bindings

Key Binding Description
SPC m = reformat the buffer
SPC m c C remove build artifacts with Cargo
SPC m c c compile project with Cargo
SPC m c d generate documentation with Cargo
SPC m c f format all project files with rustfmt
SPC m c t run tests with Cargo
SPC m c x execute the project with Cargo
SPC m g g jump to definition