branch: externals/hyperbole commit 2d2fcb97d9444319fb088ab0066b99a9c744a8bf Author: Bob Weiner <r...@gnu.org> Commit: Bob Weiner <r...@gnu.org>
Add a number of small updates with little functional change --- hactypes.el | 13 ++++++++++--- hmouse-drv.el | 6 ++++-- hmouse-sh.el | 10 +++++++++- hmouse-tag.el | 4 ++-- hpath.el | 6 ++++-- hsys-youtube.el | 9 +++++++-- hui-mouse.el | 10 ++++++---- hui.el | 8 ++++---- 8 files changed, 46 insertions(+), 20 deletions(-) diff --git a/hactypes.el b/hactypes.el index f78e204620..2ac2a4d1e8 100644 --- a/hactypes.el +++ b/hactypes.el @@ -3,7 +3,7 @@ ;; Author: Bob Weiner ;; ;; Orig-Date: 23-Sep-91 at 20:34:36 -;; Last-Mod: 5-Jun-22 at 17:59:19 by Bob Weiner +;; Last-Mod: 12-Jul-22 at 01:21:40 by Bob Weiner ;; ;; Copyright (C) 1991-2022 Free Software Foundation, Inc. ;; See the "HY-COPY" file for license information. @@ -33,7 +33,7 @@ (defact annot-bib (key) "Follow internal ref KEY within an annotated bibliography, delimiters=[]." (interactive "sReference key (no []): ") - (let ((key-regexp (concat "^[*]*[ \t]*\\\[" (ebut:key-to-label key) "\\\]")) + (let ((key-regexp (concat "^[*]*[ \t]*\\[" (ebut:key-to-label key) "\\]")) citation) (if (save-excursion (goto-char (point-max)) @@ -61,8 +61,15 @@ Return any non-nil value or t." (if result "True" "False") result bool-expr) (or result t))) +(defact display-value (value) + "Display a message showing VALUE (a symbol) and its value. +Return any non-nil value or t." + (let ((result (eval value))) + (message "%s" result) + (or result t))) + (defact display-variable (var) - "Display a message showing `var` (a symbol) and its value. + "Display a message showing VAR (a symbol) and its value. Return any non-nil value or t." (message "%s = %s" var (symbol-value var)) (or (symbol-value var) t)) diff --git a/hmouse-drv.el b/hmouse-drv.el index ffe56770d1..5a1e952296 100644 --- a/hmouse-drv.el +++ b/hmouse-drv.el @@ -3,7 +3,7 @@ ;; Author: Bob Weiner ;; ;; Orig-Date: 04-Feb-90 -;; Last-Mod: 18-Jun-22 at 21:55:43 by Mats Lidell +;; Last-Mod: 17-Jul-22 at 23:15:34 by Bob Weiner ;; ;; Copyright (C) 1989-2021 Free Software Foundation, Inc. ;; See the "HY-COPY" file for license information. @@ -846,7 +846,8 @@ frame instead." (defun hkey-debug (pred pred-value hkey-action) (message "(HyDebug) %sContext: %s; %s: %s; Buf: %s; Mode: %s; MinibufDepth: %s" (cond ((eq pred-value 'hbut:current) - (format "ButType: %s; ButLabel: %s; " + (format "ButProps: %S\nButType: %s; ButLabel: %s; " + (symbol-plist 'hbut:current) (hattr:get 'hbut:current 'categ) (hypb:format-quote (hbut:label 'hbut:current)))) ((functionp pred-value) @@ -903,6 +904,7 @@ Return non-nil iff associated help documentation is found." (mouse-drag-flag (hmouse-drag-p)) (hkey-forms (if mouse-flag hmouse-alist hkey-alist)) (hrule:action 'actype:identity) + (assist-flag assisting) hkey-form pred-value call calls cmd-sym doc) (while (and (null pred-value) (setq hkey-form (car hkey-forms))) (or (setq pred-value (eval (car hkey-form))) diff --git a/hmouse-sh.el b/hmouse-sh.el index 164b74663a..a2aeeed461 100644 --- a/hmouse-sh.el +++ b/hmouse-sh.el @@ -3,7 +3,7 @@ ;; Author: Bob Weiner ;; ;; Orig-Date: 3-Sep-91 at 21:40:58 -;; Last-Mod: 9-Jul-22 at 16:41:14 by Mats Lidell +;; Last-Mod: 17-Jul-22 at 11:39:09 by Bob Weiner ;; ;; Copyright (C) 1991-2021 Free Software Foundation, Inc. ;; See the "HY-COPY" file for license information. @@ -41,6 +41,14 @@ ;; right-divider ;; bottom-divider +;; tab-bar sample Smart Mouse setup +;; (define-key tab-prefix-map [down-mouse-2] #'action-key-depress-emacs) +;; (define-key tab-prefix-map [mouse-2] #'action-mouse-key-emacs) + +;; tab-line sample Smart Mouse setup +;; (define-key tab-line-tab-map [tab-line down-mouse-2] #'action-key-depress-emacs) +;; (define-key tab-line-tab-map [tab-line mouse-2] #'action-mouse-key-emacs) + (defun hmouse-bind-key-emacs (mouse-key-number depress-cmd release-cmd) "Ensure MOUSE-KEY-NUMBER (1-5), e.g. 1 for [mouse-1], is bound to DEPRESS-CMD and RELEASE-CMD (includes depresses and drags). Use nil as cmd values to unbind a key. Works under GNU Emacs only." diff --git a/hmouse-tag.el b/hmouse-tag.el index a6f88a081c..49ad105f48 100644 --- a/hmouse-tag.el +++ b/hmouse-tag.el @@ -3,7 +3,7 @@ ;; Author: Bob Weiner ;; ;; Orig-Date: 24-Aug-91 -;; Last-Mod: 15-Jul-22 at 22:07:35 by Mats Lidell +;; Last-Mod: 17-Jul-22 at 09:56:15 by Bob Weiner ;; ;; Copyright (C) 1991-2022 Free Software Foundation, Inc. ;; See the "HY-COPY" file for license information. @@ -703,7 +703,7 @@ Use `hpath:display-buffer' to show definition or documentation." "Return t when point is on the first line of a Lisp library load expression, else nil." (save-excursion (beginning-of-line) - (looking-at "\\(;*[ \t]*\\)?(\\(autoload\\|load\\|require\\)"))) + (looking-at "\\(;*[ \t]*\\)?(\\(autoload\\|load\\|require\\)\\s-"))) (defun smart-lisp-at-change-log-tag-p () "When in a change-log mode, match to bound Elisp identifiers only and those with a '-' somewhere in the middle. diff --git a/hpath.el b/hpath.el index 3cdf8629f0..90ef169315 100644 --- a/hpath.el +++ b/hpath.el @@ -3,7 +3,7 @@ ;; Author: Bob Weiner ;; ;; Orig-Date: 1-Nov-91 at 00:44:23 -;; Last-Mod: 15-Jul-22 at 23:23:25 by Mats Lidell +;; Last-Mod: 17-Jul-22 at 09:55:47 by Bob Weiner ;; ;; Copyright (C) 1991-2022 Free Software Foundation, Inc. ;; See the "HY-COPY" file for license information. @@ -446,7 +446,9 @@ Valid DISPLAY-WHERE-SYMBOLs are: (defvar hpath:display-where 'other-window "Symbol specifying the default method to use to display Hyperbole link referents. -See documentation of `hpath:display-where-alist' for valid values.") +See documentation of `hpath:display-where-alist' for valid values. + +See Info node `(elisp)Choosing Window Options' for where Emacs displays buffers.") (defvar hpath:display-where-alist (list diff --git a/hsys-youtube.el b/hsys-youtube.el index e21553cc0c..3b66d90ebb 100644 --- a/hsys-youtube.el +++ b/hsys-youtube.el @@ -1,9 +1,9 @@ -;;; hsys-youtube.el --- Action buttons to play timestamped segments of Youtube videos +;;; hsys-youtube.el --- Action buttons to play timestamped segments of Youtube videos -*- lexical-binding: t; -*- ;; ;; Author: Bob Weiner ;; ;; Orig-Date: 10-Jul-22 at 18:10:56 -;; Last-Mod: 17-Jul-22 at 13:07:05 by Bob Weiner +;; Last-Mod: 17-Jul-22 at 22:49:58 by Bob Weiner ;; ;; Copyright (C) 2022 Free Software Foundation, Inc. ;; See the "HY-COPY" file for license information. @@ -102,6 +102,11 @@ Called when the Assist Key is pressed on such a button." (interactive "sSearch Youtube for: ") (hyperbole-web-search "Youtube" search-term)) +(defun hsys-youtube-search:help (search-term) + "Display in the minibuffer the Youtube url to search for SEARCH-TERM." + (interactive "sShow Youtube search url for: ") + (hyperbole-web-search "Youtube" search-term t)) + (defun hsys-youtube-play (video-id &optional start-time-string end-time-string) "Play a VIDEO-ID from the point specified by optional START-TIME-STRING. If not given, START-TIME-STRING is set to \"0s\" representing the beginning diff --git a/hui-mouse.el b/hui-mouse.el index 6afee9a3a0..2c797afc97 100644 --- a/hui-mouse.el +++ b/hui-mouse.el @@ -3,7 +3,7 @@ ;; Author: Bob Weiner ;; ;; Orig-Date: 04-Feb-89 -;; Last-Mod: 18-Jun-22 at 21:57:35 by Mats Lidell +;; Last-Mod: 17-Jul-22 at 15:03:45 by Bob Weiner ;; ;; Copyright (C) 1991-2022 Free Software Foundation, Inc. ;; See the "HY-COPY" file for license information. @@ -378,7 +378,9 @@ Its default value is #'smart-scroll-down. To disable it, set it to buffer-file-name (smart-asm-at-tag-p)) . ((smart-asm) . (smart-asm nil 'next-tag))) ;; - ((or (and (smart-lisp-mode-p) (smart-lisp-at-tag-p)) + ((or (and (smart-lisp-mode-p) + (or (smart-lisp-at-load-expression-p) + (smart-lisp-at-tag-p))) ;; Tightly limit Lisp matches in change-log-mode. (smart-lisp-at-change-log-tag-p)) . ((smart-lisp) . (smart-lisp 'show-doc))) @@ -1367,8 +1369,8 @@ NO-RECURSE-FLAG non-nil prevents infinite recursions." (when index-item (setq index-position (when (markerp (cdr index-item)) (marker-position (cdr index-item)))) - (if (eq index-position 1) - ;; If index position is 1, this means the index markers have + (if (memq index-position '(1 -99)) + ;; If index position is 1 or -99, this means the index markers have ;; become out of date after buffer edits (likely imenu-auto-rescan ;; is nil), so do a single rescan to try to fix this. (unless no-recurse-flag diff --git a/hui.el b/hui.el index 12e2d307be..5b2a027d2a 100644 --- a/hui.el +++ b/hui.el @@ -3,7 +3,7 @@ ;; Author: Bob Weiner ;; ;; Orig-Date: 19-Sep-91 at 21:42:03 -;; Last-Mod: 24-Apr-22 at 09:50:01 by Bob Weiner +;; Last-Mod: 11-Jul-22 at 19:14:36 by Bob Weiner ;; ;; Copyright (C) 1991-2021 Free Software Foundation, Inc. ;; See the "HY-COPY" file for license information. @@ -1306,9 +1306,9 @@ for with completion of all labeled buttons within the current buffer." (defun hui:help-ebut-highlight () "Highlight any explicit buttons in help buffer associated with current buffer." - (if (fboundp 'hproperty:but-create) - (with-current-buffer (get-buffer (hypb:help-buf-name)) - (hproperty:but-create)))) + (when (fboundp 'hproperty:but-create) + (with-current-buffer (get-buffer (hypb:help-buf-name)) + (hproperty:but-create)))) (defun hui:htype-delete (htype-sym) "Delete HTYPE-SYM from use in current Hyperbole session.