]> git.eshelyaron.com Git - emacs.git/commitdiff
Don't have the tutorial ask to save if we haven't moved
authorLars Ingebrigtsen <larsi@gnus.org>
Fri, 20 May 2022 01:59:03 +0000 (03:59 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Fri, 20 May 2022 01:59:39 +0000 (03:59 +0200)
* lisp/tutorial.el (tutorial--save-on-kill): Don't ask if the user
hasn't moved point (bug#37326).
(help-with-tutorial): Set the start point.

lisp/tutorial.el

index 0f3a1506d6b651d31528752fe0c9cca882978273..2c787ae5595561013754fb454328a40a4f0af026 100644 (file)
@@ -649,13 +649,15 @@ with some explanatory links."
         (unless (eq prop-val 'key-sequence)
          (delete-region prop-start prop-end))))))
 
+(defvar tutorial--starting-point)
 (defun tutorial--save-on-kill ()
   "Query the user about saving the tutorial when killing Emacs."
   (when (buffer-live-p tutorial--buffer)
     (with-current-buffer tutorial--buffer
-      (if (y-or-n-p "Save your position in the tutorial? ")
-         (tutorial--save-tutorial-to (tutorial--saved-file))
-       (message "Tutorial position not saved"))))
+      (unless (= (point) tutorial--starting-point)
+        (if (y-or-n-p "Save your position in the tutorial? ")
+           (tutorial--save-tutorial-to (tutorial--saved-file))
+         (message "Tutorial position not saved")))))
   t)
 
 (defun tutorial--save-tutorial ()
@@ -734,7 +736,6 @@ See `tutorial--save-tutorial' for more information."
         (message "Can't save tutorial: %s is not a directory"
                  tutorial-dir)))))
 
-
 ;;;###autoload
 (defun help-with-tutorial (&optional arg dont-ask-for-revert)
   "Select the Emacs learn-by-doing tutorial.
@@ -914,6 +915,7 @@ Run the Viper tutorial? "))
               (forward-line 1)
               (newline (- n (/ n 2)))))
           (goto-char (point-min)))
+        (setq-local tutorial--starting-point (point))
         (setq buffer-undo-list nil)
         (set-buffer-modified-p nil)))))