summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lisp/init-rust.el7
1 files changed, 7 insertions, 0 deletions
diff --git a/lisp/init-rust.el b/lisp/init-rust.el
index ce55e14..0391cb7 100644
--- a/lisp/init-rust.el
+++ b/lisp/init-rust.el
@@ -1,9 +1,16 @@
+(defun rust-mode-buffer-local-variables ()
+ ;; eglot passes tab-width as tab size when formatting code, when using rustfmt
+ ;; this should be 4
+ (setq-local tab-width 4))
+
(use-package rust-mode
:ensure t
:init
(when (executable-find "rustfmt")
(setq rust-format-on-save t))
+ :hook (rust-mode . rust-mode-buffer-local-variables)
+
:bind (:map rust-mode-map
;; C-c f runs rustfmt on the buffer
("C-c f" . rust-format-buffer)