Difference between revisions of "Rust"
Jump to navigation
Jump to search
(racer support) |
(run cargo tasks) |
||
Line 36: | Line 36: | ||
* '''jump to definition''' (bound to '''M-.''') | * '''jump to definition''' (bound to '''M-.''') | ||
* '''describe functions and types''', | * '''describe functions and types''', | ||
+ | |||
+ | = Run Cargo tasks = | ||
+ | |||
+ | [https://github.com/kwrooijen/cargo.el cargo.el] ("cargo" in MELPA) gives us a set of key combinations to perform Cargo tasks within our Rust projects. | ||
+ | |||
+ | See also [[Compilation]]. | ||
[[Category:Programming languages]] | [[Category:Programming languages]] | ||
[[Category:Programming]] | [[Category:Programming]] |
Revision as of 14:51, 22 May 2017
Let's setup Emacs for Rust development, shall we ?
rust-mode
- syntax highlighted,
- code formatting, optionally automatic,
- Imenu support,
- navigation by semantics (go to the beginning or end of the current defun), (see also helm-swoop, helm-ag, tags,…)
- playpen helpers (send the selected code to play.rust-lang.org),
- …
In Debian testing and unstable you can also install it with apt install elpa-rust-mode
(but the MELPA way is prefered).
Code formatting with rustfmv
Formatting is also provided by this mode. If you want auto formatting everytime you save a buffer, put this in your Init File:
(setq rust-format-on-save t)
On-the-fly syntax checking: Flycheck-rust
See flycheck-rust (on MELPA). See Flycheck.
Emacs-racer
See emacs-racer (also in MELPA) for documentation and screencasts. It provides:
- code completion of variables, functions and modules (not macros yet due to a racer limitation) (see also company-mode)
- jump to definition (bound to M-.)
- describe functions and types,
Run Cargo tasks
cargo.el ("cargo" in MELPA) gives us a set of key combinations to perform Cargo tasks within our Rust projects.
See also Compilation.