2019-12-07 23:09:25 +01:00
|
|
|
;;;; Rust mode configuration.
|
|
|
|
;; Add rust load hooks.
|
2020-01-06 02:22:45 +01:00
|
|
|
(use-package flycheck
|
|
|
|
:hook (prog-mode . flycheck-mode))
|
|
|
|
|
|
|
|
(use-package company
|
|
|
|
:hook (prog-mode . company-mode)
|
|
|
|
:config (setq company-tooltip-align-annotations t)
|
|
|
|
(setq company-minimum-prefix-length 1))
|
|
|
|
|
|
|
|
(use-package lsp-mode
|
|
|
|
:commands lsp
|
|
|
|
:config (require 'lsp-clients))
|
|
|
|
|
|
|
|
(use-package lsp-ui
|
|
|
|
:commands lsp-ui-mode
|
|
|
|
:bind (:map lsp-ui-mode-map
|
2020-07-30 23:02:28 +02:00
|
|
|
("M-." . lsp-ui-peek-find-definitions)
|
|
|
|
("M-," . lsp-ui-peek-jump-backward)
|
|
|
|
("M-?" . lsp-ui-peek-find-references)
|
2020-01-06 02:22:45 +01:00
|
|
|
("C-c u" . lsp-ui-imenu)
|
|
|
|
("C-c C-a" . lsp-ui-sideline-apply-code-actions))
|
|
|
|
:config (setq lsp-ui-peek-enable t))
|
2019-12-07 23:09:25 +01:00
|
|
|
|
2020-01-05 23:51:24 +01:00
|
|
|
(use-package rust-mode
|
2020-01-06 02:22:45 +01:00
|
|
|
:config
|
|
|
|
(setq rust-format-on-save t)
|
|
|
|
:hook (rust-mode . lsp))
|
|
|
|
|
2020-07-30 23:02:28 +02:00
|
|
|
(use-package lsp-rust
|
|
|
|
:after lsp-mode
|
|
|
|
:config
|
|
|
|
(setq lsp-rust-server 'rust-analyzer))
|
|
|
|
|
2020-01-06 02:22:45 +01:00
|
|
|
|
|
|
|
;; Add keybindings for interacting with Cargo
|
|
|
|
(use-package cargo
|
|
|
|
:hook (rust-mode . cargo-minor-mode))
|
|
|
|
|
|
|
|
(use-package flycheck-rust
|
|
|
|
:config (add-hook 'flycheck-mode-hook #'flycheck-rust-setup))
|
2019-12-07 23:09:25 +01:00
|
|
|
|
|
|
|
(provide 'jenga-rust)
|