[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/hyperbole 9153e11 3/3: Merge branch 'master' of hyperbo
From: |
ELPA Syncer |
Subject: |
[elpa] externals/hyperbole 9153e11 3/3: Merge branch 'master' of hyperbole |
Date: |
Sun, 8 Aug 2021 11:57:13 -0400 (EDT) |
branch: externals/hyperbole
commit 9153e11e6943c40e3d7f4c4d987877cf70c30269
Merge: 03d26f0 404577d
Author: Bob Weiner <rsw@gnu.org>
Commit: Bob Weiner <rsw@gnu.org>
Merge branch 'master' of hyperbole
---
ChangeLog | 28 ++++++++++++++++++++++++++++
hbmap.el | 7 +++----
hhist.el | 4 ++--
hib-debbugs.el | 10 +++++-----
hib-doc-id.el | 2 +-
hmail.el | 4 ++--
hmoccur.el | 7 ++++---
hmouse-key.el | 4 ++--
hmouse-mod.el | 4 ++--
hmouse-sh.el | 4 ++--
hpath.el | 11 ++++++-----
hsys-www.el | 6 +++---
htz.el | 4 ++--
hui-dired-sidebar.el | 4 ++--
hui-jmenu.el | 4 ++--
hui-select.el | 4 ++--
hui-treemacs.el | 4 ++--
hui-window.el | 2 +-
hvm.el | 43 ++++++++++++++++++++++---------------------
hycontrol.el | 6 +++---
hyrolo-demo.el | 4 ++--
hyrolo-logic.el | 4 ++--
hyrolo-menu.el | 4 ++--
hyrolo.el | 2 +-
kotl/kcell.el | 4 ++--
kotl/kexport.el | 2 +-
kotl/kfile.el | 4 ++--
kotl/kfill.el | 4 ++--
kotl/klabel.el | 4 ++--
kotl/klink.el | 4 ++--
kotl/kmenu.el | 4 ++--
kotl/kotl-orgtbl.el | 2 +-
kotl/kview.el | 4 ++--
test/hbut-tests.el | 39 ++++++++++++++++++++++++++++++++-------
test/hib-social-tests.el | 1 +
test/hibtypes-tests.el | 8 +++++---
test/hmouse-drv-tests.el | 8 +++++---
test/hpath-tests.el | 28 ++++++++++++++++++++++++++++
test/hsys-org-tests.el | 4 ++--
test/hui-tests.el | 6 ++++++
test/hy-test-helpers.el | 3 ++-
test/hypb-tests.el | 1 +
test/kotl-mode-tests.el | 2 +-
test/smart-org-tests.el | 5 +++++
44 files changed, 207 insertions(+), 106 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 1c420d3..6aa8f9b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,23 @@
+2021-07-20 Mats Lidell <matsl@gnu.org>
+
+* hpath.el: Part two of patch from Stefan Monnier. Thank you Stefan. Use
+ lexical scope.
+ (hpath:substitute-value): Use match-beginning and match-end.
+
+* test/hpath-tests.el (hpath:subsitute-value-test): Add tests for
+ hpath:substitute-value.
+
+2021-07-19 Mats Lidell <matsl@gnu.org>
+
+* test/hmouse-drv-tests.el (hbut-etags-test): Rename test case due to name
+ clash.
+
+* Part one of patch from Stefan Monnier. Thank you Stefan.
+ The part applied contains updates to some file regarding:
+ - Use lexical scoping
+ - Update copyright notice
+ - Other small non functional changes
+
2021-07-18 Bob Weiner <rsw@gnu.org>
* hbut.el (ebut:program): Use 'actype:action' to generalize actype handling.
@@ -14,6 +34,14 @@
2021-07-04 Mats Lidell <matsl@gnu.org>
+* test/hbut-tests.el (ebut-program-link-to-directory)
+ (ebut-program-link-to-directory-2, ebut-program-shell-cmd): Use
+ actypes prefix after ebut:program change.
+
+* test/hbut-tests.el (hypb:program-create-ebut-in-buffer)
+ (hypb:program-create-link-to-file-line-and-column-but-in-file): Add
+ new test cases for ebut:program.
+
* test/hui-tests.el (hui-ebut-create-link-to-www-url)
(hui-ebut-modify-link-to-www-url-keeping-all-values-should-not-modify-buffer-or-ebut):
Add hui:ebut-create and hui:ebut-modify tests.
diff --git a/hbmap.el b/hbmap.el
index 5db1a30..8fbe74d 100644
--- a/hbmap.el
+++ b/hbmap.el
@@ -1,10 +1,10 @@
-;;; hbmap.el --- GNU Hyperbole button map maintenance for queries and lookups.
+;;; hbmap.el --- GNU Hyperbole button map maintenance for queries and lookups.
-*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 6-Oct-91 at 06:34:05
;;
-;; Copyright (C) 1991-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1991-2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -107,8 +107,7 @@ the error. Optional NO-SAVE disables saving of the map
after operation."
(defvar hbmap:dir-user
(if (and hyperb:microsoft-os-p
- (or (not (fboundp 'getenv))
- (not (getenv "HOME"))))
+ (not (getenv "HOME")))
"c:/_hyperb/" "~/.hyperb/")
"Per user directory in which to store top level Hyperbole map data.
Must end with a directory separator.
diff --git a/hhist.el b/hhist.el
index e405925..b82a44e 100644
--- a/hhist.el
+++ b/hhist.el
@@ -1,10 +1,10 @@
-;;; hhist.el --- History of Hyperbole buttons selected
+;;; hhist.el --- History of Hyperbole buttons selected -*- lexical-binding:
t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 24-Apr-91 at 03:36:23
;;
-;; Copyright (C) 1991-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1991-2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/hib-debbugs.el b/hib-debbugs.el
index d3a13a7..56ec273 100644
--- a/hib-debbugs.el
+++ b/hib-debbugs.el
@@ -1,10 +1,10 @@
-;;; hib-debbugs.el --- Implicit button type for browsing GNU debbugs issues.
+;;; hib-debbugs.el --- Implicit button type for browsing GNU debbugs issues.
-*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 21-Jun-16 at 14:24:53
;;
-;; Copyright (C) 2016 Free Software Foundation, Inc.
+;; Copyright (C) 2016, 2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of Hyperbole. It requires the Emacs package
@@ -122,9 +122,9 @@ Note that `issue' or `debbugs' may be used as well in place
of `bug'."
(debbugs-gnu-bugs id)
(debbugs-gnu-show-discussion)))
-(defun debbugs-gnu-query:help (but)
- "Make a Gnu debbugs id number at point (optionally prefixed with a # sign)
display the pretty pretted status of the bug id.
-Ignore other types of Gnu debbugs query strings."
+(defun debbugs-gnu-query:help (_but)
+ "Make a GNU debbugs id number at point (optionally prefixed with a # sign)
display the pretty pretted status of the bug id.
+Ignore other types of GNU debbugs query strings."
(if (and (debbugs-version-sufficient-p)
(debbugs-query:at-p)
(match-beginning 2))
diff --git a/hib-doc-id.el b/hib-doc-id.el
index 5e34e24..68f799b 100644
--- a/hib-doc-id.el
+++ b/hib-doc-id.el
@@ -1,4 +1,4 @@
-;;; hib-doc-id.el --- Implicit button type for document id index entries
+;;; hib-doc-id.el --- Implicit button type for document id index entries -*-
lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
diff --git a/hmail.el b/hmail.el
index a385b8b..59a62fa 100644
--- a/hmail.el
+++ b/hmail.el
@@ -1,10 +1,10 @@
-;;; hmail.el --- GNU Hyperbole buttons embedded in e-mail messages
+;;; hmail.el --- GNU Hyperbole buttons embedded in e-mail messages -*-
lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 9-Oct-91 at 18:38:05
;;
-;; Copyright (C) 1991-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1991-2021 Free Software Foundation, Inc.
;; See the HY-COPY (Hyperbole) or BR-COPY (OO-Browser) file for license
;; information.
;;
diff --git a/hmoccur.el b/hmoccur.el
index 789511f..74c418d 100644
--- a/hmoccur.el
+++ b/hmoccur.el
@@ -1,10 +1,10 @@
-;;; hmoccur.el --- Multi-buffer or multi-file regexp occurrence location.
+;;; hmoccur.el --- Multi-buffer or multi-file regexp occurrence location. -*-
lexical-binding: t; -*-
;;
;; Author: Markus Freericks <Mfx@cs.tu-berlin.de> / Bob Weiner
;;
;; Orig-Date: 1-Aug-91
;;
-;; Copyright (C) 1991-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1991-2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -69,7 +69,8 @@ serves as a menu to find any of the occurrences in this
buffer.
(let* ((buffers (if file-regexp (directory-files
(expand-file-name
(or (file-name-directory
- file-regexp) "."))
+ file-regexp)
+ "."))
'full (file-name-nondirectory file-regexp))
(buffer-list)))
(occbuf (get-buffer-create "*Moccur*"))
diff --git a/hmouse-key.el b/hmouse-key.el
index 23b2740..1672fea 100644
--- a/hmouse-key.el
+++ b/hmouse-key.el
@@ -1,10 +1,10 @@
-;;; hmouse-key.el --- Setup Smart Key mouse bindings
+;;; hmouse-key.el --- Setup Smart Key mouse bindings -*- lexical-binding: t;
-*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 30-May-94 at 00:11:57
;;
-;; Copyright (C) 1994-2019 Free Software Foundation, Inc.
+;; Copyright (C) 1994-2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/hmouse-mod.el b/hmouse-mod.el
index ab977a4..9731a1e 100644
--- a/hmouse-mod.el
+++ b/hmouse-mod.el
@@ -1,10 +1,10 @@
-;;; hmouse-mod.el --- Action Key acts as CONTROL modifier and Assist Key as
META modifier.
+;;; hmouse-mod.el --- Action Key acts as CONTROL modifier and Assist Key as
META modifier. -*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 8-Oct-92 at 19:08:31
;;
-;; Copyright (C) 1992-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1992-2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/hmouse-sh.el b/hmouse-sh.el
index 81cf8bc..d6f3a3d 100644
--- a/hmouse-sh.el
+++ b/hmouse-sh.el
@@ -1,10 +1,10 @@
-;;; hmouse-sh.el --- System-dependent Smart Mouse Key bindings.
+;;; hmouse-sh.el --- System-dependent Smart Mouse Key bindings. -*-
lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 3-Sep-91 at 21:40:58
;;
-;; Copyright (C) 1991-2019 Free Software Foundation, Inc.
+;; Copyright (C) 1991-2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/hpath.el b/hpath.el
index 717bbed..834c445 100644
--- a/hpath.el
+++ b/hpath.el
@@ -1,10 +1,10 @@
-;;; hpath.el --- GNU Hyperbole support routines for handling POSIX and
MSWindows paths
+;;; hpath.el --- GNU Hyperbole support routines for handling POSIX and
MSWindows paths -*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 1-Nov-91 at 00:44:23
;;
-;; Copyright (C) 1991-2020 Free Software Foundation, Inc.
+;; Copyright (C) 1991-2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -1517,13 +1517,14 @@ in-buffer path will not match."
(defun hpath:substitute-value (path)
"Substitute matching value for Emacs Lisp variables and environment
variables in PATH and return PATH."
- ;; Uses free variables `match' and `start' from `hypb:replace-match-string'.
(substitute-in-file-name
(hpath:substitute-match-value
"\\$@?\{\\([^\}]+\\)@?\}"
path
- (lambda (matched-str)
- (let* ((var-group (substring path match start))
+ (lambda (_matched_str)
+ (let* ((match (match-beginning 0))
+ (start (match-end 0))
+ (var-group (substring path match start))
(rest-of-path (substring path start))
(var-ext (substring path (match-beginning 1) (match-end 1)))
(var-name (if (= ?@ (aref var-ext (1- (length var-ext))))
diff --git a/hsys-www.el b/hsys-www.el
index 015c8e8..3c0edbc 100644
--- a/hsys-www.el
+++ b/hsys-www.el
@@ -1,10 +1,10 @@
-;;; hsys-www.el --- GNU Hyperbole support for Emacs World-Wide Web (WWW)
browsing
+;;; hsys-www.el --- GNU Hyperbole support for Emacs World-Wide Web (WWW)
browsing -*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 7-Apr-94 at 17:17:39 by Bob Weiner
;;
-;; Copyright (C) 1994-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1994-2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -144,7 +144,7 @@ is used. Valid values of this variable include
`browse-url-default-browser' and
(hact 'www-url path)
;; return same buffer
(current-buffer))
- (apply 'find-file-noselect path args))))
+ (apply #'find-file-noselect path args))))
(provide 'hsys-www)
diff --git a/htz.el b/htz.el
index 48a1ff8..c0cf9b0 100644
--- a/htz.el
+++ b/htz.el
@@ -1,10 +1,10 @@
-;;; htz.el --- Timezone-based time and date support for GNU Hyperbole
+;;; htz.el --- Timezone-based time and date support for GNU Hyperbole -*-
lexical-binding: t; -*-
;;
;; Author: Masanobu Umeda / Bob Weiner
;;
;; Orig-Date: 14-Oct-91 at 07:22:08
;;
-;; Copyright (C) 1991-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1991-2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; Derived from "timezone.el" in GNU Emacs.
diff --git a/hui-dired-sidebar.el b/hui-dired-sidebar.el
index 9ce9704..cad8deb 100644
--- a/hui-dired-sidebar.el
+++ b/hui-dired-sidebar.el
@@ -1,10 +1,10 @@
-;;; hui-dired-sidebar.el --- Hyperbole Smart Key support for dired sidebar
+;;; hui-dired-sidebar.el --- Hyperbole Smart Key support for dired sidebar
-*- lexical-binding: t; -*-
;;
;; Author: Mats Lidell
;;
;; Orig-Date: 25-Jul-20
;;
-;; Copyright (C) 2020 Free Software Foundation, Inc. See the
+;; Copyright (C) 2020-2021 Free Software Foundation, Inc. See the
;; "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/hui-jmenu.el b/hui-jmenu.el
index 9a7277b..1b61c89 100644
--- a/hui-jmenu.el
+++ b/hui-jmenu.el
@@ -1,10 +1,10 @@
-;;; hui-jmenu.el --- Popup menus for jumping to and managing buffers, frames,
and windows
+;;; hui-jmenu.el --- Popup menus for jumping to and managing buffers, frames,
and windows -*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 9-Mar-94 at 23:37:28
;;
-;; Copyright (C) 1994-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1994-2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/hui-select.el b/hui-select.el
index 564bb7f..a565293 100644
--- a/hui-select.el
+++ b/hui-select.el
@@ -1,10 +1,10 @@
-;;; hui-select.el --- Select larger and larger syntax-driven regions in a
buffer.
+;;; hui-select.el --- Select larger and larger syntax-driven regions in a
buffer. -*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 19-Oct-96 at 02:25:27
;;
-;; Copyright (C) 1996-2019 Free Software Foundation, Inc.
+;; Copyright (C) 1996-2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/hui-treemacs.el b/hui-treemacs.el
index 2492c2f..228c19c 100644
--- a/hui-treemacs.el
+++ b/hui-treemacs.el
@@ -1,10 +1,10 @@
-;;; hui-treemacs.el --- GNU Hyperbole Smart Key support for the Treemacs file
manager package
+;;; hui-treemacs.el --- GNU Hyperbole Smart Key support for the Treemacs file
manager package -*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 19-Nov-17
;;
-;; Copyright (C) 2017-2019 Free Software Foundation, Inc.
+;; Copyright (C) 2017-2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/hui-window.el b/hui-window.el
index 796770e..34457fe 100644
--- a/hui-window.el
+++ b/hui-window.el
@@ -1,4 +1,4 @@
-;;; hui-window.el --- Smart Mouse Key window and modeline depress/release
actions.
+;;; hui-window.el --- Smart Mouse Key window and modeline depress/release
actions. -*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
diff --git a/hvm.el b/hvm.el
index 0947c8f..e164b78 100644
--- a/hvm.el
+++ b/hvm.el
@@ -1,10 +1,10 @@
-;;; hvm.el --- GNU Hyperbole buttons in mail reader: Vm
+;;; hvm.el --- GNU Hyperbole buttons in mail reader: Vm -*- lexical-binding:
t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 10-Oct-91 at 01:51:12
;;
-;; Copyright (C) 1991-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1991-2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -45,13 +45,13 @@
;;; Public variables
;;; ************************************************************************
-;;; Current versions of VM define this next variable in "vm-vars.el". We
-;;; define it here for earlier VM versions.
+;; Current versions of VM define this next variable in "vm-vars.el". We
+;; define it here for earlier VM versions.
(defvar vm-edit-message-mode nil
"*Major mode to use when editing messages in VM.")
-;;; "hmail.el" procedures will branch improperly if a regular mode, like VM's
-;;; default `text-mode', is used for editing.
+;; "hmail.el" procedures will branch improperly if a regular mode, like VM's
+;; default `text-mode', is used for editing.
(setq vm-edit-message-mode 'vm-edit-mode)
;;; ************************************************************************
@@ -190,8 +190,8 @@ Has side-effect of widening buffer."
(match-beginning 0)
(point-max))))
-;;; Redefine version of this function from "vm-page.el" to hide any
-;;; Hyperbole button data whenever a message is displayed in its entirety.
+;; Redefine version of this function from "vm-page.el" to hide any
+;; Hyperbole button data whenever a message is displayed in its entirety.
(defun vm-show-current-message ()
(save-excursion
(save-excursion
@@ -220,8 +220,8 @@ Has side-effect of widening buffer."
(if (fboundp 'hproperty:but-create) (hproperty:but-create))
(vm-update-summary-and-mode-line)))
-;;; Redefine version of this function from "vm-page.el" to treat end of
-;;; text (excluding Hyperbole button data) as end of message.
+;; Redefine version of this function from "vm-page.el" to treat end of
+;; text (excluding Hyperbole button data) as end of message.
(defun vm-scroll-forward-internal (arg)
(let ((direction (prefix-numeric-value arg))
(w (selected-window)))
@@ -258,8 +258,8 @@ Has side-effect of widening buffer."
(set-window-point w (point))
'end-of-message)))))))
-;;; Redefine version of this function from "vm-page.el" (called by
-;;; vm-scroll-* functions). Make it keep Hyperbole button data hidden.
+;; Redefine version of this function from "vm-page.el" (called by
+;; vm-scroll-* functions). Make it keep Hyperbole button data hidden.
(defun vm-widen-page ()
(if (or (> (point-min) (vm-text-of (car vm-message-pointer)))
(/= (point-max) (vm-text-end-of (car vm-message-pointer))))
@@ -269,9 +269,10 @@ Has side-effect of widening buffer."
(vm-text-of (car vm-message-pointer))
(vm-text-end-of (car vm-message-pointer))))))
-;;; Redefine version of this function from "vm-edit.el" to hide
-;;; Hyperbole button data when insert edited message from temporary buffer.
-(hypb:function-overload 'vm-edit-message nil '(hmail:msg-narrow))
+;; Redefine version of this function from "vm-edit.el" to hide
+;; Hyperbole button data when insert edited message from temporary buffer.
+(advice-add 'vm-edit-message :after
+ (lambda () (&rest _) (hmail:msg-narrow)))
;;; Redefine version of this function from "vm-edit.el" to hide
;;; Hyperbole button data when insert edited message from temporary buffer.
@@ -392,12 +393,12 @@ Has side-effect of widening buffer."
(t (error "vm search code is missing, can't continue"))))
)
-;;; Hide any Hyperbole button data when reply to or forward a message.
-;;; See "vm-reply.el".
+;; Hide any Hyperbole button data when reply to or forward a message.
+;; See "vm-reply.el".
(var:append 'vm-mail-mode-hook '(hmail:msg-narrow))
-;;; Redefine this function from "vm-folder.el" called whenever new mail is
-;;; incorporated so that it will highlight Hyperbole buttons when possible.
+;; Redefine this function from "vm-folder.el" called whenever new mail is
+;; incorporated so that it will highlight Hyperbole buttons when possible.
;; Returns list of new messages if there were any new messages, nil otherwise.
(defun vm-assimilate-new-messages (&optional
dont-read-attributes
@@ -516,8 +517,8 @@ Has side-effect of widening buffer."
(vm-sort-messages vm-ml-sort-keys))
new-messages ))
-;;; Redefine version of `vm-force-mode-line-update' from "vm-folder.el"
-;;; to highlight Hyperbole buttons in summary buffers.
+;; Redefine version of `vm-force-mode-line-update' from "vm-folder.el"
+;; to highlight Hyperbole buttons in summary buffers.
(defun vm-force-mode-line-update ()
"Force a mode line update in all frames."
(if vm-summary-buffer
diff --git a/hycontrol.el b/hycontrol.el
index 84c722c..ed160d2 100644
--- a/hycontrol.el
+++ b/hycontrol.el
@@ -1,4 +1,4 @@
-;;; hycontrol.el --- Interactive sizing, moving, replicating and deleting of
windows and frames
+;;; hycontrol.el --- Interactive sizing, moving, replicating and deleting of
windows and frames -*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
@@ -1411,7 +1411,7 @@ Menu or IBuffer mode."
(setq hycontrol--invert-display-buffer-predicates
(when items 'ignore))
;; Prepend items to buffer list.
- (apply 'set:create (nconc items (buffer-list (selected-frame)))))))
+ (apply #'set:create (nconc items (buffer-list (selected-frame)))))))
;;;###autoload
(defun hycontrol-windows-grid (arg)
@@ -1459,7 +1459,7 @@ See documentation of `hycontrol-windows-grid' for further
details."
(interactive
(list (prefix-numeric-value current-prefix-arg)
(let* ((set:equal-op 'eq)
- (mode-strings (mapcar 'symbol-name (apply #'set:create (mapcar
(lambda (buf) (buffer-local-value 'major-mode buf))
+ (mode-strings (mapcar #'symbol-name (apply #'set:create (mapcar
(lambda (buf) (buffer-local-value 'major-mode buf))
(hycontrol-windows-grid-buffer-list))))))
(intern-soft (completing-read "(HyControl Grid Windows): Major mode
of buffers to display: "
mode-strings nil t nil nil
(symbol-name major-mode))))))
diff --git a/hyrolo-demo.el b/hyrolo-demo.el
index ff039c0..8bd4ce4 100644
--- a/hyrolo-demo.el
+++ b/hyrolo-demo.el
@@ -1,10 +1,10 @@
-;;; hyrolo-demo.el --- Code to support DEMO introduction to HyRolo
+;;; hyrolo-demo.el --- Code to support DEMO introduction to HyRolo -*-
lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 4-Nov-17 at 13:56:47
;;
-;; Copyright (C) 2017 Free Software Foundation, Inc.
+;; Copyright (C) 2017-2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/hyrolo-logic.el b/hyrolo-logic.el
index cead68e..4dd9f99 100644
--- a/hyrolo-logic.el
+++ b/hyrolo-logic.el
@@ -1,10 +1,10 @@
-;;; hyrolo-logic.el --- Logic functions for GNU Hyperbole Rolo files
+;;; hyrolo-logic.el --- Logic functions for GNU Hyperbole Rolo files -*-
lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 13-Jun-89 at 22:57:33
;;
-;; Copyright (C) 1989-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1989-2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/hyrolo-menu.el b/hyrolo-menu.el
index 665da4f..069e14d 100644
--- a/hyrolo-menu.el
+++ b/hyrolo-menu.el
@@ -1,10 +1,10 @@
-;;; hyrolo-menu.el --- Pulldown and popup menus of HyRolo commands
+;;; hyrolo-menu.el --- Pulldown and popup menus of HyRolo commands -*-
lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 28-Oct-94 at 10:59:44
;;
-;; Copyright (C) 1994-2019 Free Software Foundation, Inc.
+;; Copyright (C) 1994-2021 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/hyrolo.el b/hyrolo.el
index 98b44d3..b9e46c1 100644
--- a/hyrolo.el
+++ b/hyrolo.el
@@ -1,4 +1,4 @@
-;;; hyrolo.el --- Hierarchical, multi-file, easy-to-use contact management
system
+;;; hyrolo.el --- Hierarchical, multi-file, easy-to-use contact management
system -*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
diff --git a/kotl/kcell.el b/kotl/kcell.el
index 0e8ed17..a312a1d 100644
--- a/kotl/kcell.el
+++ b/kotl/kcell.el
@@ -1,10 +1,10 @@
-;;; kcell.el --- Internal representation of koutline kcells used by kviews
+;;; kcell.el --- Internal representation of koutline kcells used by kviews
-*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 5/1/1993
;;
-;; Copyright (C) 1993-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1993-2021 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/kotl/kexport.el b/kotl/kexport.el
index 87e4cfa..34be7cc 100644
--- a/kotl/kexport.el
+++ b/kotl/kexport.el
@@ -1,4 +1,4 @@
-;;; kexport.el --- Convert koutlines to other textual formats, including HTML
+;;; kexport.el --- Convert koutlines to other textual formats, including HTML
-*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
diff --git a/kotl/kfile.el b/kotl/kfile.el
index ee248d8..4cc06dd 100644
--- a/kotl/kfile.el
+++ b/kotl/kfile.el
@@ -1,10 +1,10 @@
-;;; kfile.el --- Save and restore koutlines from files
+;;; kfile.el --- Save and restore koutlines from files -*- lexical-binding:
t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 10/31/93
;;
-;; Copyright (C) 1993-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1993-2021 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/kotl/kfill.el b/kotl/kfill.el
index ab5f682..2facaec 100644
--- a/kotl/kfill.el
+++ b/kotl/kfill.el
@@ -1,10 +1,10 @@
-;;; kfill.el --- Fill and justify koutline cells
+;;; kfill.el --- Fill and justify koutline cells -*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 23-Jan-94
;;
-;; Copyright (C) 1994-2019 Free Software Foundation, Inc.
+;; Copyright (C) 1994-2021 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/kotl/klabel.el b/kotl/klabel.el
index 5ba3a5c..b2874ea 100644
--- a/kotl/klabel.el
+++ b/kotl/klabel.el
@@ -1,10 +1,10 @@
-;;; klabel.el --- Display label handling for koutlines
+;;; klabel.el --- Display label handling for koutlines -*- lexical-binding:
t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 17-Apr-94
;;
-;; Copyright (C) 1994-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1994-2021 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/kotl/klink.el b/kotl/klink.el
index 209cc57..7fbb97a 100644
--- a/kotl/klink.el
+++ b/kotl/klink.el
@@ -1,10 +1,10 @@
-;;; klink.el --- Implicit reference to a kcell action type, for use in
koutlines
+;;; klink.el --- Implicit reference to a kcell action type, for use in
koutlines -*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 15-Nov-93 at 12:15:16
;;
-;; Copyright (C) 1993-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1993-2021 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/kotl/kmenu.el b/kotl/kmenu.el
index 202b9b3..30064a3 100644
--- a/kotl/kmenu.el
+++ b/kotl/kmenu.el
@@ -1,10 +1,10 @@
-;;; kmenu.el --- Pulldown and popup menus for kotl-mode, the Koutliner mode
+;;; kmenu.el --- Pulldown and popup menus for kotl-mode, the Koutliner mode
-*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 28-Mar-94 at 11:22:09
;;
-;; Copyright (C) 1994-2019 Free Software Foundation, Inc.
+;; Copyright (C) 1994-2021 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/kotl/kotl-orgtbl.el b/kotl/kotl-orgtbl.el
index a1632ad..48eaaf2 100644
--- a/kotl/kotl-orgtbl.el
+++ b/kotl/kotl-orgtbl.el
@@ -1,4 +1,4 @@
-;;; kotl-orgtbl.el --- Allow use of Org minor-mode table editing in koutlines
+;;; kotl-orgtbl.el --- Allow use of Org minor-mode table editing in koutlines
-*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
diff --git a/kotl/kview.el b/kotl/kview.el
index 5e67211..ef33c9f 100644
--- a/kotl/kview.el
+++ b/kotl/kview.el
@@ -1,10 +1,10 @@
-;;; kview.el --- Display handling of koutlines
+;;; kview.el --- Display handling of koutlines -*- lexical-binding: t; -*-
;;
;; Author: Bob Weiner
;;
;; Orig-Date: 6/30/93
;;
-;; Copyright (C) 1993-2019 Free Software Foundation, Inc.
+;; Copyright (C) 1993-2021 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
diff --git a/test/hbut-tests.el b/test/hbut-tests.el
index 1b53c9b..7303ef7 100644
--- a/test/hbut-tests.el
+++ b/test/hbut-tests.el
@@ -33,14 +33,14 @@
(delete-file file))))
(ert-deftest ebut-program-link-to-directory-2 ()
- "Programatically create ebut with link-to-directory."
+ "Programatically create ebut with link-to-directory using
`temporary-file-directory`."
(let ((file (make-temp-file "hypb_" nil ".txt")))
(unwind-protect
(progn
(find-file file)
- (ebut:program "label" 'link-to-directory (temporary-file-directory))
+ (ebut:program "label" 'link-to-directory temporary-file-directory)
(should (eq (hattr:get (hbut:at-p) 'actype)
'actypes::link-to-directory))
- (should (equal (hattr:get (hbut:at-p) 'args)
'((temporary-file-directory))))
+ (should (equal (hattr:get (hbut:at-p) 'args) (list
temporary-file-directory)))
(should (equal (hattr:get (hbut:at-p) 'lbl-key) "label")))
(delete-file file))))
@@ -78,8 +78,8 @@
(unwind-protect
(with-mock
(mock (find-file-noselect (expand-file-name hbmap:filename
hbmap:dir-user)) => test-buffer)
- (mock (ebut:program "label" 'actypes::link-to-directory "/tmp") => t)
- (gbut:ebut-program "label" 'actypes::link-to-directory "/tmp"))
+ (mock (ebut:program "label" 'link-to-directory "/tmp") => t)
+ (gbut:ebut-program "label" 'link-to-directory "/tmp"))
(delete-file test-file))))
(ert-deftest gbut-program-link-to-directory ()
@@ -90,12 +90,37 @@
(progn
(with-mock
(mock (find-file-noselect (expand-file-name hbmap:filename
hbmap:dir-user)) => test-buffer)
- (gbut:ebut-program "global" 'actypes::link-to-directory "/tmp"))
+ (gbut:ebut-program "global" 'link-to-directory "/tmp"))
(with-current-buffer test-buffer
(should (eq (hattr:get (hbut:at-p) 'actype)
'actypes::link-to-directory))
(should (equal (hattr:get (hbut:at-p) 'args) '("/tmp")))
- (should (equal (hattr:get (hbut:at-p) 'lbl-key) "global"))))
+ (should (equal (hattr:get (hbut:at-p) 'lbl-key) "global")))))))
+
+(ert-deftest hypb:program-create-ebut-in-buffer ()
+ "Create button with hypb:program in buffer.
+BUG: hbut:at-p does not recognise a button created within a buffer."
+ (with-temp-buffer
+ (ebut:program "label" 'link-to-directory "/tmp")
+ (should (eq (hattr:get (hbut:at-p) 'actype) 'actypes::link-to-directory))
+ (should (equal (hattr:get (hbut:at-p) 'args) '("./tmp")))
+ (should (equal (hattr:get (hbut:at-p) 'lbl-key) "label"))))
+
+(ert-deftest hypb:program-create-link-to-file-line-and-column-but-in-file ()
+ "Create button that links to file with line and column with hypb:program in
buffer."
+ (let ((test-file (make-temp-file "test-file")))
+ (unwind-protect
+ (progn
+ (find-file test-file)
+ (ebut:program "label" 'link-to-file-line-and-column test-file 2 3)
+ (should (eq (hattr:get (hbut:at-p) 'actype)
'actypes::link-to-file-line-and-column))
+ (should (equal (hattr:get (hbut:at-p) 'args) (list test-file 2 3)))
+ (should (equal (hattr:get (hbut:at-p) 'lbl-key) "label")))
(delete-file test-file))))
+;; FIXME: This file can only be byte-compiled when `el-mock' is installed.
+;; Local Variables:
+;; no-byte-compile: t
+;; End:
+
(provide 'hbut-tests)
;;; hbut-tests.el ends here
diff --git a/test/hib-social-tests.el b/test/hib-social-tests.el
index 690944f..57a5144 100644
--- a/test/hib-social-tests.el
+++ b/test/hib-social-tests.el
@@ -16,6 +16,7 @@
;;; Code:
(require 'hib-social)
+(require 'ert) ;To define `should' earlier.
;; Hib-social
(defun hib-social-should-browse-twitter-url (url &optional new-window)
diff --git a/test/hibtypes-tests.el b/test/hibtypes-tests.el
index f287d53..f27c979 100644
--- a/test/hibtypes-tests.el
+++ b/test/hibtypes-tests.el
@@ -216,11 +216,12 @@
; Need cross reference table built by externaö cxref program
;; ctags
-; Seems ctags -v does not give the proper answer
+;; Seems ctags -v does not give the proper answer
+;; FIXME: Rewrite to not depend on hy-test-helpers.el
(ert-deftest ibtypes::ctags-vgrind-test ()
(unwind-protect
(with-temp-buffer
- (insert "hy-test-helpers:consume-input-events hy-test-helpers.el 21\n")
+ (insert "hy-test-helpers:consume-input-events hy-test-helpers.el 22\n")
(goto-char (point-min))
(forward-char 4)
(let ((default-directory (expand-file-name "test" hyperb:dir)))
@@ -230,12 +231,13 @@
(kill-buffer "hy-test-helpers.el")))
;; etags
+;; FIXME: Rewrite to not depend on hy-test-helpers.el
(ert-deftest ibtypes::etags-test ()
(unwind-protect
(with-temp-buffer
(insert "\n")
(insert "hy-test-helpers.el,103\n")
- (insert "(defun hy-test-helpers:consume-input-events 21,359\n")
+ (insert "(defun hy-test-helpers:consume-input-events 22,359\n")
(rename-buffer (concat "TAGS" (buffer-name)))
(goto-char (point-min))
(forward-line 2)
diff --git a/test/hmouse-drv-tests.el b/test/hmouse-drv-tests.el
index 25d1c15..33aef19 100644
--- a/test/hmouse-drv-tests.el
+++ b/test/hmouse-drv-tests.el
@@ -373,10 +373,11 @@
;; ctags
; Seems ctags -v does not give the proper answer
+;; FIXME: Rewrite to not depend on hy-test-helpers.el
(ert-deftest hbut-ctags-vgrind-test ()
(unwind-protect
(with-temp-buffer
- (insert "hy-test-helpers:consume-input-events hy-test-helpers.el 21\n")
+ (insert "hy-test-helpers:consume-input-events hy-test-helpers.el 22\n")
(goto-char (point-min))
(forward-char 4)
(let ((default-directory (expand-file-name "test" hyperb:dir)))
@@ -386,12 +387,13 @@
(kill-buffer "hy-test-helpers.el")))
;; etags
-(ert-deftest ibtypes::etags-test ()
+;; FIXME: Rewrite to not depend on hy-test-helpers.el
+(ert-deftest hbut-etags-test ()
(unwind-protect
(with-temp-buffer
(insert "\n")
(insert "hy-test-helpers.el,103\n")
- (insert "(defun hy-test-helpers:consume-input-events 21,359\n")
+ (insert "(defun hy-test-helpers:consume-input-events 22,359\n")
(rename-buffer (concat "TAGS" (buffer-name)))
(goto-char (point-min))
(forward-line 2)
diff --git a/test/hpath-tests.el b/test/hpath-tests.el
index 1d4224d..d9e1651 100644
--- a/test/hpath-tests.el
+++ b/test/hpath-tests.el
@@ -75,5 +75,33 @@
(hpath:find "-tutorial.el")
(should was-called))))
+(ert-deftest hpath:subsitute-value-test ()
+ "Environment and Lisp variables shall be substituted in a path."
+ (progn ()
+ (setq hypb:lc-var "lower")
+ (setq hypb:uc-var "UPPER")
+ (setenv "HYPB_TEST_ENV" "env")
+
+ (should (string= (hpath:substitute-value "/nothing/to/substitute")
"/nothing/to/substitute"))
+
+ (should (string= (hpath:substitute-value "${hypb:lc-var}")
hypb:lc-var))
+ (should (string= (hpath:substitute-value "${hypb:uc-var}")
hypb:uc-var))
+ (should (string= (hpath:substitute-value "$HYPB_TEST_ENV") (getenv
"HYPB_TEST_ENV")))
+ (should (string= (hpath:substitute-value "${HYPB_TEST_ENV}") (getenv
"HYPB_TEST_ENV")))
+
+ (should (string= (hpath:substitute-value
"prefix${hypb:lc-var}suffix") (concat "prefix" hypb:lc-var "suffix")))
+ (should (string= (hpath:substitute-value
"prefix/$HYPB_TEST_ENV/suffix") (concat "prefix/" (getenv "HYPB_TEST_ENV")
"/suffix")))
+ (should (string= (hpath:substitute-value
"prefix${HYPB_TEST_ENV}suffix") (concat "prefix" (getenv "HYPB_TEST_ENV")
"suffix")))
+
+ (should (string= (hpath:substitute-value
"${hypb:lc-var}${hypb:uc-var}") (concat hypb:lc-var hypb:uc-var)))
+ (should (string= (hpath:substitute-value
"$HYPB_TEST_ENV/$HYPB_TEST_ENV") (concat (getenv "HYPB_TEST_ENV") "/" (getenv
"HYPB_TEST_ENV"))))
+ (should (string= (hpath:substitute-value
"${HYPB_TEST_ENV}${HYPB_TEST_ENV}") (concat (getenv "HYPB_TEST_ENV") (getenv
"HYPB_TEST_ENV"))))
+
+ (should (string= (hpath:substitute-value
"prefix${hypb:lc-var}/$HYPB_TEST_ENV/suffix") (concat "prefix" hypb:lc-var "/"
(getenv "HYPB_TEST_ENV") "/suffix")))
+
+ (should (string= (hpath:substitute-value
"$UNDEFINED_IS_NOT_SUBSTITUTED") "$UNDEFINED_IS_NOT_SUBSTITUTED"))
+ (should (string= (hpath:substitute-value
"${UNDEFINED_IS_NOT_SUBSTITUTED}") "${UNDEFINED_IS_NOT_SUBSTITUTED}"))
+ ))
+
(provide 'hpath-tests)
;;; hpath-tests.el ends here
diff --git a/test/hsys-org-tests.el b/test/hsys-org-tests.el
index 3566155..4b8ef3a 100644
--- a/test/hsys-org-tests.el
+++ b/test/hsys-org-tests.el
@@ -19,7 +19,7 @@
(require 'ert)
(require 'hsys-org)
-(require 'el-mock)
+(if t (require 'el-mock))
(ert-deftest hsys-org:cycle-on-header-cycles-visibility ()
"Hide an outline header."
@@ -30,7 +30,7 @@
(should (not (org-check-for-hidden 'headlines)))
(hsys-org-cycle)
(should (org-check-for-hidden 'headlines))
- (next-line)
+ (with-suppressed-warnings ((interactive-only next-line)) (next-line))
(should (equal (line-number-at-pos) 4))))
(ert-deftest hsys-org:region-with-text-property-value ()
diff --git a/test/hui-tests.el b/test/hui-tests.el
index adf2381..63d9010 100644
--- a/test/hui-tests.el
+++ b/test/hui-tests.el
@@ -136,5 +136,11 @@ Modifying the button but keeping the label creates a
dubbel label."
(should (equal (hattr:get (hbut:at-p) 'lbl-key) "label")))
(delete-file file))))
+;; This file can't be byte-compiled without `with-simulated-input' which
+;; is not part of the actual dependencies, so:
+;; Local Variables:
+;; no-byte-compile: t
+;; End:
+
(provide 'hui-tests)
;;; hui-tests.el ends here
diff --git a/test/hy-test-helpers.el b/test/hy-test-helpers.el
index f38fea4..844ef0e 100644
--- a/test/hy-test-helpers.el
+++ b/test/hy-test-helpers.el
@@ -16,7 +16,8 @@
;;; Code:
(require 'ert)
-(require 'cl-macs)
+(require 'hmouse-drv) ;For `action-key'.
+(eval-when-compile (require 'cl-lib))
(defun hy-test-helpers:consume-input-events ()
"Use recusive-edit to consume the events kbd-key generate."
diff --git a/test/hypb-tests.el b/test/hypb-tests.el
index 3109503..6e9d50e 100644
--- a/test/hypb-tests.el
+++ b/test/hypb-tests.el
@@ -16,6 +16,7 @@
;;; Code:
(require 'hypb)
+(require 'hbut)
(require 'ert)
;; Test for replace-regexp-in-string copied from emacs src
diff --git a/test/kotl-mode-tests.el b/test/kotl-mode-tests.el
index 28f43fc..9b4b0f6 100644
--- a/test/kotl-mode-tests.el
+++ b/test/kotl-mode-tests.el
@@ -18,7 +18,7 @@
;;; Code:
(require 'ert)
-(require 'kotl-mode)
+(require 'kotl-mode "kotl/kotl-mode")
(load (expand-file-name "hy-test-helpers"
(file-name-directory (or load-file-name
diff --git a/test/smart-org-tests.el b/test/smart-org-tests.el
index 71d488f..339d035 100644
--- a/test/smart-org-tests.el
+++ b/test/smart-org-tests.el
@@ -145,5 +145,10 @@
(mock (org-meta-return nil) => t)
(smart-org)))))
+;; Compilation requires `el-mock' which is not `Package-Require'd.
+;; Local Variables:
+;; no-byte-compile: t
+;; End:
+
(provide 'smart-org-tests)
;;; smart-org-tests.el ends here