From 05074550feff1f2f36cd89f81256bace64944f20 Mon Sep 17 00:00:00 2001 From: Griffin Smith Date: Mon, 27 Sep 2021 10:50:08 -0400 Subject: [PATCH] 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 --- users/grfn/emacs.d/terraform.el | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/users/grfn/emacs.d/terraform.el b/users/grfn/emacs.d/terraform.el index 28e7ce09a..2d69c9bad 100644 --- a/users/grfn/emacs.d/terraform.el +++ b/users/grfn/emacs.d/terraform.el @@ -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"