[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/aggressive-indent b0ec004 41/43: Merge pull request #13
From: |
Stefan Monnier |
Subject: |
[elpa] externals/aggressive-indent b0ec004 41/43: Merge pull request #139 from purcell/always-kill-timer |
Date: |
Wed, 7 Jul 2021 22:49:46 -0400 (EDT) |
branch: externals/aggressive-indent
commit b0ec0047aaae071ad1647159613166a253410a63
Merge: 12a64b4 986df07
Author: Artur Malabarba <artur@endlessparentheses.com>
Commit: GitHub <noreply@github.com>
Merge pull request #139 from purcell/always-kill-timer
Always kill timer
---
aggressive-indent.el | 37 +++++++++++++++++--------------------
1 file changed, 17 insertions(+), 20 deletions(-)
diff --git a/aggressive-indent.el b/aggressive-indent.el
index 3622a76..b32b587 100644
--- a/aggressive-indent.el
+++ b/aggressive-indent.el
@@ -5,7 +5,7 @@
;; Author: Artur Malabarba <emacs@endlessparentheses.com>
;; URL: https://github.com/Malabarba/aggressive-indent-mode
;; Version: 1.8.4
-;; Package-Requires: ((emacs "24.1") (cl-lib "0.5"))
+;; Package-Requires: ((emacs "24.3"))
;; Keywords: indent lisp maint tools
;; Prefix: aggressive-indent
;; Separator: -
@@ -390,7 +390,7 @@ or messages."
"List of (left right) limit of regions changed in the last command loop.")
(make-variable-buffer-local 'aggressive-indent--changed-list)
-(defun aggressive-indent--proccess-changed-list-and-indent ()
+(defun aggressive-indent--process-changed-list-and-indent ()
"Indent the regions in `aggressive-indent--changed-list'."
(unless (or (run-hook-wrapped 'aggressive-indent--internal-dont-indent-if
#'eval)
(aggressive-indent--run-user-hooks))
@@ -459,34 +459,32 @@ If BODY finishes, `while-no-input' returns whatever value
BODY produced."
nil)
(t val)))))))
+(defun aggressive-indent--maybe-cancel-timer ()
+ "Cancel and remove the timer if it is set."
+ (when (timerp aggressive-indent--idle-timer)
+ (cancel-timer aggressive-indent--idle-timer)
+ (setq aggressive-indent--idle-timer nil)))
+
(defun aggressive-indent--indent-if-changed (buffer)
"Indent any region that changed in BUFFER in the last command loop."
(if (not (buffer-live-p buffer))
- (cancel-timer aggressive-indent--idle-timer)
+ (aggressive-indent--maybe-cancel-timer)
(with-current-buffer buffer
(when (and aggressive-indent-mode aggressive-indent--changed-list)
(save-excursion
(save-selected-window
(aggressive-indent--while-no-input
- (aggressive-indent--proccess-changed-list-and-indent))))
- (when (timerp aggressive-indent--idle-timer)
- (cancel-timer aggressive-indent--idle-timer))))))
+ (aggressive-indent--process-changed-list-and-indent))))
+ (aggressive-indent--maybe-cancel-timer)))))
(defun aggressive-indent--keep-track-of-changes (l r &rest _)
"Store the limits (L and R) of each change in the buffer."
(when aggressive-indent-mode
(push (list l r) aggressive-indent--changed-list)
- (when (timerp aggressive-indent--idle-timer)
- (cancel-timer aggressive-indent--idle-timer))
+ (aggressive-indent--maybe-cancel-timer)
(setq aggressive-indent--idle-timer
(run-with-idle-timer aggressive-indent-sit-for-time t
#'aggressive-indent--indent-if-changed (current-buffer)))))
-(defun aggressive-indent--on-buffer-kill ()
- "Cancel the timer before buffer is killed"
- (when (timerp aggressive-indent--idle-timer)
- (cancel-timer aggressive-indent--idle-timer)
- (setq aggressive-indent--idle-timer nil)))
-
;;; Minor modes
;;;###autoload
(define-minor-mode aggressive-indent-mode
@@ -516,16 +514,15 @@ If BODY finishes, `while-no-input' returns whatever value
BODY produced."
(aggressive-indent--local-electric t))
(add-hook 'after-change-functions
#'aggressive-indent--keep-track-of-changes nil 'local)
(add-hook 'after-revert-hook #'aggressive-indent--clear-change-list
nil 'local)
- (add-hook 'before-save-hook
#'aggressive-indent--proccess-changed-list-and-indent nil 'local)
- (add-hook 'kill-buffer-hook #'aggressive-indent--on-buffer-kill nil
'local))
+ (add-hook 'before-save-hook
#'aggressive-indent--process-changed-list-and-indent nil 'local)
+ (add-hook 'kill-buffer-hook #'aggressive-indent--maybe-cancel-timer
nil 'local))
;; Clean the hooks
- (when (timerp aggressive-indent--idle-timer)
- (cancel-timer aggressive-indent--idle-timer))
+ (aggressive-indent--maybe-cancel-timer)
(remove-hook 'after-change-functions
#'aggressive-indent--keep-track-of-changes 'local)
(remove-hook 'after-revert-hook #'aggressive-indent--clear-change-list
'local)
- (remove-hook 'before-save-hook
#'aggressive-indent--proccess-changed-list-and-indent 'local)
+ (remove-hook 'before-save-hook
#'aggressive-indent--process-changed-list-and-indent 'local)
(remove-hook 'post-command-hook #'aggressive-indent--softly-indent-defun
'local)
- (remove-hook 'kill-buffer-hook #'aggressive-indent--on-buffer-kill
'local)))
+ (remove-hook 'kill-buffer-hook #'aggressive-indent--maybe-cancel-timer
'local)))
(defun aggressive-indent--local-electric (on)
"Turn variable `electric-indent-mode' on or off locally, as per boolean ON."
- [elpa] externals/aggressive-indent d5417f4 13/43: Don't indent in ediff-merge buffers, (continued)
- [elpa] externals/aggressive-indent d5417f4 13/43: Don't indent in ediff-merge buffers, Stefan Monnier, 2021/07/07
- [elpa] externals/aggressive-indent 5a019ef 15/43: Exclude inf-ruby mode, Stefan Monnier, 2021/07/07
- [elpa] externals/aggressive-indent 5b653a5 25/43: Fix typo., Stefan Monnier, 2021/07/07
- [elpa] externals/aggressive-indent e8a6aa8 39/43: Fix typo in function name, Stefan Monnier, 2021/07/07
- [elpa] externals/aggressive-indent cb416fa 43/43: Version 1.10.0, Stefan Monnier, 2021/07/07
- [elpa] externals/aggressive-indent 0492172 12/43: 1.8.4, Stefan Monnier, 2021/07/07
- [elpa] externals/aggressive-indent fdafc53 26/43: Add elm- and haskell-mode., Stefan Monnier, 2021/07/07
- [elpa] externals/aggressive-indent bfd04fc 35/43: Merge pull request #136 from tmurph/master, Stefan Monnier, 2021/07/07
- [elpa] externals/aggressive-indent 12a64b4 37/43: Fix #137 - Trying to select deleted buffers, Stefan Monnier, 2021/07/07
- [elpa] externals/aggressive-indent 584e3f9 29/43: Prevent aggressive-indent-mode from modifying buffer after revert, Stefan Monnier, 2021/07/07
- [elpa] externals/aggressive-indent b0ec004 41/43: Merge pull request #139 from purcell/always-kill-timer,
Stefan Monnier <=