fix(gs/emacs): Fix packer-format-buffer

The previous impl of this was formatting the pre-save contents of the
buffer, effectively preventing saving any changes (oops).

Change-Id: I17d4b8ba0943964d700f7dca81af4f46b149c0b8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3644
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
This commit is contained in:
Griffin Smith 2021-09-27 10:50:08 -04:00 committed by grfn
parent b330578b89
commit 05074550fe

View file

@ -5,9 +5,16 @@
(defun packer-format-buffer ()
(interactive)
(let ((buf (get-buffer-create "*packer-fmt*")))
(if (zerop (call-process "packer" nil buf nil "fmt" (buffer-file-name)))
(revert-buffer t t t)
(message "packer fmt failed: %s" (with-current-buffer buf (buffer-string))))))
(if (zerop (call-process-region (point-min) (point-max)
"packer" nil buf nil "fmt" "-"))
(let ((point (point))
(window-start (window-start)))
(erase-buffer)
(insert-buffer-substring buf)
(goto-char point)
(set-window-start nil window-start))
(message "packer fmt failed: %s" (with-current-buffer buf (buffer-string))))
(kill-buffer buf)))
(define-minor-mode packer-format-on-save-mode
"Run packer-format-buffer before saving the current buffer"