emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/go-mode b91c53e 025/495: save buffer before trying to remo


From: ELPA Syncer
Subject: [nongnu] elpa/go-mode b91c53e 025/495: save buffer before trying to remove unused imports
Date: Sat, 7 Aug 2021 09:04:36 -0400 (EDT)

branch: elpa/go-mode
commit b91c53e0fd1e81b495fa81ef2432274bfc87b39b
Author: Dominik Honnef <dominikh@fork-bomb.org>
Commit: Dominik Honnef <dominikh@fork-bomb.org>

    save buffer before trying to remove unused imports
---
 go-mode.el | 20 ++++++++++++--------
 1 file changed, 12 insertions(+), 8 deletions(-)

diff --git a/go-mode.el b/go-mode.el
index 63676ea..506c093 100644
--- a/go-mode.el
+++ b/go-mode.el
@@ -625,13 +625,17 @@ If no list exists yet, one will be created if possible."
 (defun go-remove-unused-imports (arg)
   (interactive "P")
   (save-excursion
-    (let ((lines (go-unused-imports-lines)))
-      (dolist (import lines)
-        (goto-line import)
-        (beginning-of-line)
-        (if arg
-            (comment-region (line-beginning-position) (line-end-position))
-          (kill-line)))
-      (message "Removed %d imports" (length lines)))))
+    (let ((cur-buffer (current-buffer)) lines)
+      (save-some-buffers nil (lambda () (equal cur-buffer (current-buffer))))
+      (if (buffer-modified-p)
+          (message "Cannot operate on unsaved buffer")
+        (setq lines (go-unused-imports-lines))
+        (dolist (import lines)
+          (goto-line import)
+          (beginning-of-line)
+          (if arg
+              (comment-region (line-beginning-position) (line-end-position))
+            (kill-line)))
+        (message "Removed %d imports" (length lines))))))
 
 (provide 'go-mode)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]