diff options
Diffstat (limited to 'users/grfn/emacs.d/terraform.el')
-rw-r--r-- | users/grfn/emacs.d/terraform.el | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/users/grfn/emacs.d/terraform.el b/users/grfn/emacs.d/terraform.el index 28e7ce09a25a..2d69c9bad9db 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" |