diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2000-09-29 03:11:01 +0000 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2000-09-29 03:11:01 +0000 |
commit | 2b497eda44dfd52db566ff90a020bb49cde2fafe (patch) | |
tree | 11b8516083b88a7fda3738821bc860b6f9899b60 /lisp/paren.el | |
parent | defdd32e04c52e2178579e694e7e25071c94002e (diff) | |
download | emacs-2b497eda44dfd52db566ff90a020bb49cde2fafe.tar.gz |
(show-paren-mode): Use define-minor-mode.
Diffstat (limited to 'lisp/paren.el')
-rw-r--r-- | lisp/paren.el | 31 |
1 files changed, 5 insertions, 26 deletions
diff --git a/lisp/paren.el b/lisp/paren.el index 8fdf9d8f258..1dec96ad43f 100644 --- a/lisp/paren.el +++ b/lisp/paren.el @@ -40,20 +40,6 @@ ;; This is the overlay used to highlight the closeparen right before point. (defvar show-paren-overlay-1 nil) -;;;###autoload -(defcustom show-paren-mode nil - "*Toggle Show Paren mode. -When Show Paren mode is enabled, any matching parenthesis is highlighted -after `show-paren-delay' seconds of Emacs idle time. -Setting this variable directly does not take effect; -use either \\[customize] or the function `show-paren-mode'." - :set (lambda (symbol value) - (show-paren-mode (or value 0))) - :initialize 'custom-initialize-default - :type 'boolean - :group 'paren-showing - :require 'paren) - (defcustom show-paren-style 'parenthesis "*Style used when showing a matching paren. Valid styles are `parenthesis' (meaning show the matching paren), @@ -98,24 +84,20 @@ otherwise)." (defvar show-paren-idle-timer nil) ;;;###autoload -(defun show-paren-mode (&optional arg) +(define-minor-mode show-paren-mode "Toggle Show Paren mode. With prefix ARG, turn Show Paren mode on if and only if ARG is positive. Returns the new status of Show Paren mode (non-nil means on). When Show Paren mode is enabled, any matching parenthesis is highlighted in `show-paren-style' after `show-paren-delay' seconds of Emacs idle time." - (interactive "P") - (let ((on-p (if arg - (> (prefix-numeric-value arg) 0) - (not show-paren-mode)))) - (setq show-paren-mode on-p) + nil nil nil :global t :group 'paren-showing ;; Turn off the usual paren-matching method ;; when this one is turned on. (if (local-variable-p 'show-paren-mode) (make-local-variable 'blink-matching-paren-on-screen) (kill-local-variable 'blink-matching-paren-on-screen)) - (setq blink-matching-paren-on-screen (not on-p)) + (setq blink-matching-paren-on-screen (not show-paren-mode)) ;; Now enable or disable the mechanism. ;; First get rid of the old idle timer. @@ -131,13 +113,13 @@ in `show-paren-style' after `show-paren-delay' seconds of Emacs idle time." (setq show-paren-idle-timer (run-with-idle-timer show-paren-delay t 'show-paren-function))) - (unless on-p + (unless show-paren-mode (and show-paren-overlay (eq (overlay-buffer show-paren-overlay) (current-buffer)) (delete-overlay show-paren-overlay)) (and show-paren-overlay-1 (eq (overlay-buffer show-paren-overlay-1) (current-buffer)) - (delete-overlay show-paren-overlay-1))))) + (delete-overlay show-paren-overlay-1)))) ;; Find the place to show, if there is one, ;; and show it until input arrives. @@ -244,7 +226,4 @@ in `show-paren-style' after `show-paren-delay' seconds of Emacs idle time." (provide 'paren) -(if show-paren-mode - (show-paren-mode t)) - ;;; paren.el ends here |