Zum regulären Major-Mode rust gibt es den Minor-Mode racer, der die Definition von Funktionen angezeigt, wenn man mit dem Cursor auf einem Funktionsnamen verweilt, oder mit dem man zur Definition einer Funktion mit M-. springen; mit M-, kann man zurück springen. Mit racer-describe kann man sich die Hilfe zu einer Funktion anzeigen lassen; dies wird unten an C-c d bzw. C-c C-d gebunden. Durch die Einbindung des Minor-Modes company bekommt man sogar Tab-Vervollständigung.

Siehe auch: Installationsanleitung von emacs-racer; vor yasnippet v0.13 ist Yasnippet und Company gemeinsam -nutzen notwendig.

Alternativ zu Racer gibt es auch noch das Language server protocol (lsp) (Anleitung 1, Anleitung 2), was ich jedoch nicht zum Laufen bekommen habe; rustup component add rls-preview rust-analysis --toolchain nightly.

Fehlerkennzeichnung mit flyCheck

Mit flyCheck kann man sich direkt im Quelltext die Fehler hervorheben, mit C-c ! l die Fehler anzeigen und mit C-c ! p bzw. C-c ! n rückwärts oder vorwärts springen. Mehr Informationen gibt es in der Kurzanleitung.

Unter Debian müssen die Pakete elpa-flycheck und flycheck-doc installiert werden und über die Emacs-Paketverwaltung die Anpassung an Rust (M-x package-install flycheck-rust).

Anpassung in init.el:

(add-hook 'rust-mode-hook #'flycheck-mode)
(add-hook 'rust-mode-hook #'flycheck-rust-setup)

Modus für cargo

Es gibt einen Minor-Mode, um die Befehle von cargo aus Emacs heraus aufrufen zu können. Installation mit M-x package-install cargo und in init.el mit (add-hook 'rust-mode-hook #'cargo-minor-mode) aktivieren.