Skip to content

Commit e2c3a7a

Browse files
committed
allow changing rustfmt hook funtctions
1 parent aadd1dd commit e2c3a7a

File tree

2 files changed

+14
-5
lines changed

2 files changed

+14
-5
lines changed

rust-mode.el

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,16 @@ This variable might soon be remove again.")
3131
(defvar electric-pair-skip-self)
3232
(defvar electric-indent-chars)
3333

34+
(defcustom rust-before-save-hook 'rust-before-save-method
35+
"Function for formatting before save."
36+
:type 'function
37+
:group 'rust-mode)
38+
39+
(defcustom rust-after-save-hook 'rust-after-save-method
40+
"Default method to handle rustfmt invocation after save."
41+
:type 'function
42+
:group 'rust-mode)
43+
3444
;;; Customization
3545

3646
(defgroup rust-mode nil
@@ -264,9 +274,8 @@ Use idomenu (imenu with `ido-mode') for best mileage.")
264274
'rust-electric-pair-inhibit-predicate-wrap)
265275
(setq-local electric-pair-skip-self 'rust-electric-pair-skip-self-wrap)
266276

267-
(add-hook 'before-save-hook 'rust-before-save-hook nil t)
268-
(add-hook 'after-save-hook 'rust-after-save-hook nil t)
269-
)
277+
(add-hook 'before-save-hook rust-before-save-hook nil t)
278+
(add-hook 'after-save-hook rust-after-save-hook nil t))
270279

271280
;;;###autoload
272281
(add-to-list 'auto-mode-alist '("\\.rs\\'" . rust-mode))

rust-rustfmt.el

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -347,15 +347,15 @@ Return the created process."
347347

348348
;;; Hooks
349349

350-
(defun rust-before-save-hook ()
350+
(defun rust-before-save-method ()
351351
(when rust-format-on-save
352352
(condition-case e
353353
(rust-format-buffer)
354354
(error (format "rust-before-save-hook: %S %S"
355355
(car e)
356356
(cdr e))))))
357357

358-
(defun rust-after-save-hook ()
358+
(defun rust-after-save-method ()
359359
(when rust-format-on-save
360360
(if (not (executable-find rust-rustfmt-bin))
361361
(error "Could not locate executable \"%s\"" rust-rustfmt-bin)

0 commit comments

Comments
 (0)