[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/quarter-plane 912c970 2/7: * packages/quarter-plane/qua
From: |
Stefan Monnier |
Subject: |
[elpa] externals/quarter-plane 912c970 2/7: * packages/quarter-plane/quarter-plane.el |
Date: |
Tue, 1 Dec 2020 16:50:10 -0500 (EST) |
branch: externals/quarter-plane
commit 912c9700bed5bf2d3a054f79e8b7f98c6b34937f
Author: Stefan Monnier <monnier@iro.umontreal.ca>
Commit: Stefan Monnier <monnier@iro.umontreal.ca>
* packages/quarter-plane/quarter-plane.el
(quarter-plane-saved-symbols): Remove.
(quarter-plane-saved-values): Give a default value.
Don't make permanent-local.
(quarter-plane-mode): Cleanup before re-enabling.
Set change-major-mode-hook.
(global-quarter-plane-mode): Use quarter-plane-mode rather than the
deleted turn-on-quarter-plane-mode.
---
quarter-plane.el | 38 ++++++++++++++++----------------------
1 file changed, 16 insertions(+), 22 deletions(-)
diff --git a/quarter-plane.el b/quarter-plane.el
index dbde423..24cc28e 100644
--- a/quarter-plane.el
+++ b/quarter-plane.el
@@ -53,15 +53,8 @@
(define-key map [remap mouse-set-point] 'picture-mouse-set-point)
map))
-(defconst quarter-plane-saved-symbols
- '(truncate-lines show-trailing-whitespace)
- "Buffer-local variables whose modified by `quarter-plane-mode`.
-Their values are saved when `quarter-plane-mode` is enabled and restored
-when it's disabled.")
-
-(defvar quarter-plane-saved-values)
+(defvar quarter-plane-saved-values nil)
(make-variable-buffer-local 'quarter-plane-saved-values)
-(put 'quarter-plane-saved-values 'permanent-local t)
;;;###autoload
(define-minor-mode quarter-plane-mode
@@ -75,29 +68,30 @@ infinitely down and to the right, inserting spaces as
necessary.
Excess whitespace is trimmed when saving or exiting Quarter-Plane mode.
Because it works by inserting spaces, Quarter-Plane mode won't work in
-read-only buffers
+read-only buffers.
\\{quarter-plane-mode-map}"
:lighter " Plane"
:group 'picture
:keymap quarter-plane-mode-map
- (cond
- (quarter-plane-mode
+ (remove-hook 'before-save-hook 'quarter-plane-delete-whitespace t)
+ (dolist (symval (prog1 quarter-plane-saved-values
+ (setq quarter-plane-saved-values nil)))
+ (set (car symval) (cdr symval)))
+ (when quarter-plane-mode
(add-hook 'before-save-hook 'quarter-plane-delete-whitespace nil t)
- (setq quarter-plane-saved-values nil)
- (dolist (sym quarter-plane-saved-symbols)
- (push (symbol-value sym) quarter-plane-saved-values))
- (setq quarter-plane-saved-values (nreverse quarter-plane-saved-values))
- (setq truncate-lines t)
- (setq show-trailing-whitespace nil))
- (t
- (remove-hook 'before-save-hook 'quarter-plane-delete-whitespace t)
- (dolist (sym quarter-plane-saved-symbols)
- (set sym (pop quarter-plane-saved-values))))))
+ ;; Since quarter-plane-mode is not permanent-local, it should turn itself
+ ;; off cleanly.
+ (add-hook 'change-major-mode-hook (lambda () (quarter-plane-mode -1)) nil
t)
+ (dolist (symval '((truncate-lines . t)
+ (show-trailing-whitespace . nil)))
+ (push (cons (car symval) (symbol-value (car symval)))
+ quarter-plane-saved-values)
+ (set (car symval) (cdr symval)))))
;;;###autoload
(define-global-minor-mode global-quarter-plane-mode quarter-plane-mode
- turn-on-quarter-plane-mode
+ quarter-plane-mode
:group 'picture)
(defun quarter-plane-delete-whitespace ()
- [elpa] branch externals/quarter-plane created (now 550dcd3), Stefan Monnier, 2020/12/01
- [elpa] externals/quarter-plane f9ea405 3/7: Commentary fix for quarter-plane.el., Stefan Monnier, 2020/12/01
- [elpa] externals/quarter-plane 3100989 4/7: [quarter-plane] Fix typo in Commentary., Stefan Monnier, 2020/12/01
- [elpa] externals/quarter-plane 5f899c1 6/7: Merge branch 'master' of git+ssh://git.sv.gnu.org/srv/git/emacs/elpa, Stefan Monnier, 2020/12/01
- [elpa] externals/quarter-plane 912c970 2/7: * packages/quarter-plane/quarter-plane.el,
Stefan Monnier <=
- [elpa] externals/quarter-plane 5cfccdb 5/7: [quarter-plane] Fix typo in Commentary., Stefan Monnier, 2020/12/01
- [elpa] externals/quarter-plane 550dcd3 7/7: * .gitignore: New file, Stefan Monnier, 2020/12/01
- [elpa] externals/quarter-plane 8cf26bf 1/7: New package quarter-plane., Stefan Monnier, 2020/12/01