summaryrefslogtreecommitdiff
path: root/lisp/wid-browse.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/wid-browse.el')
-rw-r--r--lisp/wid-browse.el36
1 files changed, 12 insertions, 24 deletions
diff --git a/lisp/wid-browse.el b/lisp/wid-browse.el
index 0864e1b313e..7ce0633b40b 100644
--- a/lisp/wid-browse.el
+++ b/lisp/wid-browse.el
@@ -1,7 +1,7 @@
-;;; wid-browse.el --- functions for browsing widgets
-;;
+;;; wid-browse.el --- functions for browsing widgets -*- lexical-binding: t -*-
+
;; Copyright (C) 1997, 2001-2021 Free Software Foundation, Inc.
-;;
+
;; Author: Per Abrahamsen <abraham@dina.kvl.dk>
;; Keywords: extensions
;; Package: emacs
@@ -22,12 +22,11 @@
;; along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
-;;
+
;; Widget browser. See `widget.el'.
;;; Code:
-(require 'easymenu)
(require 'wid-edit)
(defgroup widget-browse nil
@@ -39,7 +38,7 @@
(defvar widget-browse-mode-map
(let ((map (make-sparse-keymap)))
(set-keymap-parent map widget-keymap)
- (define-key map "q" 'bury-buffer)
+ (define-key map "q" #'bury-buffer)
map)
"Keymap for `widget-browse-mode'.")
@@ -56,11 +55,10 @@
["Browse At" widget-browse-at t]))
(defcustom widget-browse-mode-hook nil
- "Hook called when entering widget-browse-mode."
- :type 'hook
- :group 'widget-browse)
+ "Hook run after entering `widget-browse-mode'."
+ :type 'hook)
-(defun widget-browse-mode ()
+(define-derived-mode widget-browse-mode special-mode "Widget Browse"
"Major mode for widget browser buffers.
The following commands are available:
@@ -68,15 +66,7 @@ The following commands are available:
\\[widget-forward] Move to next button or editable field.
\\[widget-backward] Move to previous button or editable field.
\\[widget-button-click] Activate button under the mouse pointer.
-\\[widget-button-press] Activate button under point.
-
-Entry to this mode calls the value of `widget-browse-mode-hook'
-if that value is non-nil."
- (kill-all-local-variables)
- (setq major-mode 'widget-browse-mode
- mode-name "Widget")
- (use-local-map widget-browse-mode-map)
- (run-mode-hooks 'widget-browse-mode-hook))
+\\[widget-button-press] Activate button under point.")
(put 'widget-browse-mode 'mode-class 'special)
@@ -190,11 +180,11 @@ The :value of the widget should be the widget to be browsed."
:action 'widget-browse-action)
(defun widget-browse-action (widget &optional _event)
- ;; Create widget browser for WIDGET's :value.
+ "Create widget browser for :value of WIDGET."
(widget-browse (widget-get widget :value)))
(defun widget-browse-value-create (widget)
- ;; Insert type name.
+ "Insert type name for WIDGET."
(let ((value (widget-get widget :value)))
(cond ((symbolp value)
(insert (symbol-name value)))
@@ -228,7 +218,7 @@ Nothing is assumed about value."
(error (prin1-to-string signal)))))
(when (string-match "\n\\'" pp)
(setq pp (substring pp 0 (1- (length pp)))))
- (if (cond ((string-match "\n" pp)
+ (if (cond ((string-search "\n" pp)
nil)
((> (length pp) (- (window-width) (current-column)))
nil)
@@ -273,8 +263,6 @@ VALUE is assumed to be a list of widgets."
"Minor mode for traversing widgets."
:lighter " Widget")
-;;; The End:
-
(provide 'wid-browse)
;;; wid-browse.el ends here