emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/hyperbole 91068e1 2/3: Fix hsys-org-enable-smart-keys i


From: ELPA Syncer
Subject: [elpa] externals/hyperbole 91068e1 2/3: Fix hsys-org-enable-smart-keys init, hkey-help and demo-org-hide-header-test
Date: Tue, 11 May 2021 09:57:12 -0400 (EDT)

branch: externals/hyperbole
commit 91068e170bd996ce8a855328f62fc136e2240213
Author: Bob Weiner <rsw@gnu.org>
Commit: Bob Weiner <rsw@gnu.org>

    Fix hsys-org-enable-smart-keys init, hkey-help and demo-org-hide-header-test
---
 ChangeLog              | 17 +++++++++++++++++
 hmouse-drv.el          |  1 +
 hsys-org.el            |  9 ++++++---
 hyperbole.el           |  8 ++++++++
 kotl/kotl-autoloads.el | 48 ++++++++++++++++++++----------------------------
 test/demo-tests.el     | 18 +++++++++++-------
 6 files changed, 63 insertions(+), 38 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 26cb169..ad6e99b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,20 @@
+2021-05-11  Bob Weiner  <rsw@gnu.org>
+
+* test/demo-tests.el (demo-org-hide-header-test): Force full
+    Smart Key functionality in Org mode to ensure test always
+    works correctly.
+
+* hmouse-drv.el (hkey-help): Set hrule:action to 'actype:identity
+    so potential default org-meta-return command does not trigger
+    when displaying help for a default Smart Key context.
+
+* hsys-org.el (require 'set): Add explicitly since set:intersection
+    is used in this library.
+              (hsys-org-enable-smart-keys): Initialize to 'unset
+    and then set default value in hyperb:init so that needed
+    hyperbole-mode-map is initialized; otherwise, customizations
+    are loaded before Hyperbole is initialized.
+
 2021-05-10  Bob Weiner  <rsw@gnu.org>
 
 * kotl/kview.el (kcell-view:label): Remove unneeded properties
diff --git a/hmouse-drv.el b/hmouse-drv.el
index d0ed4da..923a71f 100644
--- a/hmouse-drv.el
+++ b/hmouse-drv.el
@@ -859,6 +859,7 @@ Return non-nil iff associated help documentation is found."
                       (or action-key-depress-position 
assist-key-depress-position)))
         (mouse-drag-flag (hmouse-drag-p))
         (hkey-forms (if mouse-flag hmouse-alist hkey-alist))
+        (hrule:action 'actype:identity)
         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/hsys-org.el b/hsys-org.el
index 948ce34..b1b493d 100644
--- a/hsys-org.el
+++ b/hsys-org.el
@@ -31,6 +31,8 @@
 (require 'hbut)
 (require 'org)
 (require 'org-element)
+;; Avoid any potential library name conflict by giving the load directory.
+(require 'set (expand-file-name "set" hyperb:dir))
 
 ;;;###autoload
 (defun hsys-org-meta-return-shared-p ()
@@ -43,10 +45,11 @@
       t)))
 
 ;;;###autoload
-(defcustom hsys-org-enable-smart-keys (if (hsys-org-meta-return-shared-p)
-                                         'buttons
-                                       t)
+(defcustom hsys-org-enable-smart-keys 'unset
   "This option applies only in Org major/minor modes when hyperbole-mode is 
active.
+If set to 'unset prior to loading Hyperbole, then Hyperbole
+initialization will set its value.
+
 The following table shows what the Smart Keys do in various contexts
 with different settings of this option.  For example, a nil value makes
 {M-RET} operate as it normally does within Org mode contexts.
diff --git a/hyperbole.el b/hyperbole.el
index f7f6209..24668ef 100644
--- a/hyperbole.el
+++ b/hyperbole.el
@@ -644,6 +644,14 @@ If FLAG is nil then text is shown, while if FLAG is t the 
text is hidden."
   ;; overriding Hyperbole keys.
   ;; (add-to-list 'emulation-mode-map-alists `((hyperbole-mode . 
,hyperbole-mode-map)))
   ;;
+  ;; Initialize this option after hyperbole-mode-map has been
+  ;; initialized, if not yet set by the user.
+  (when (eq hsys-org-enable-smart-keys 'unset)
+    (customize-set-variable 'hsys-org-enable-smart-keys
+                           (if (hsys-org-meta-return-shared-p)
+                               'buttons
+                             t)))
+  ;;
   ;; Hyperbole initialization is complete.
   (message "Initializing Hyperbole...done"))
 
diff --git a/kotl/kotl-autoloads.el b/kotl/kotl-autoloads.el
index 28348d1..4f1dfc1 100644
--- a/kotl/kotl-autoloads.el
+++ b/kotl/kotl-autoloads.el
@@ -1,4 +1,4 @@
-;;; kotl-autoloads.el --- automatically extracted autoloads
+;;; kotl-autoloads.el --- automatically extracted autoloads  -*- 
lexical-binding: t -*-
 ;;
 ;;; Code:
 
@@ -6,7 +6,7 @@
 ;;;### (autoloads nil "kcell" "kcell.el" (0 0 0 0))
 ;;; Generated autoloads from kcell.el
 
-(if (fboundp 'register-definition-prefixes) (register-definition-prefixes 
"kcell" '("kcell")))
+(register-definition-prefixes "kcell" '("kcell"))
 
 ;;;***
 
@@ -23,7 +23,7 @@ STILL TODO:
 
 \(fn EXPORT-FROM OUTPUT-TO &optional SOFT-NEWLINES-FLAG)" t nil)
 
-(if (fboundp 'register-definition-prefixes) (register-definition-prefixes 
"kexport" '("kexport:")))
+(register-definition-prefixes "kexport" '("kexport:"))
 
 ;;;***
 
@@ -37,23 +37,21 @@ Return the new kview.
 \(fn FILE-NAME)" t nil)
 
 (autoload 'kfile:is-p "kfile" "\
-Iff current buffer contains an unformatted or formatted koutline, return file 
format version string, else nil.
-
-\(fn)" nil nil)
+Iff current buffer contains an unformatted or formatted koutline, return file 
format version string, else nil." nil nil)
 
 (autoload 'kfile:view "kfile" "\
 View an existing kotl version-2 file FILE-NAME in a read-only mode.
 
 \(fn FILE-NAME)" t nil)
 
-(if (fboundp 'register-definition-prefixes) (register-definition-prefixes 
"kfile" '("kfile:")))
+(register-definition-prefixes "kfile" '("kfile:"))
 
 ;;;***
 
 ;;;### (autoloads nil "kfill" "kfill.el" (0 0 0 0))
 ;;; Generated autoloads from kfill.el
 
-(if (fboundp 'register-definition-prefixes) (register-definition-prefixes 
"kfill" '("kfill:" "prior-fill-prefix" "set-fill-prefix")))
+(register-definition-prefixes "kfill" '("kfill:" "prior-fill-prefix" 
"set-fill-prefix"))
 
 ;;;***
 
@@ -151,14 +149,14 @@ copied since there is no need to copy it to import it.
 
 \(fn SOURCE)" nil nil)
 
-(if (fboundp 'register-definition-prefixes) (register-definition-prefixes 
"kimport" '("kimport:")))
+(register-definition-prefixes "kimport" '("kimport:"))
 
 ;;;***
 
 ;;;### (autoloads nil "klabel" "klabel.el" (0 0 0 0))
 ;;; Generated autoloads from klabel.el
 
-(if (fboundp 'register-definition-prefixes) (register-definition-prefixes 
"klabel" '("klabel" "kotl-label:")))
+(register-definition-prefixes "klabel" '("klabel" "kotl-label:"))
 
 ;;;***
 
@@ -172,21 +170,21 @@ See documentation for `kcell:ref-to-id' for valid 
cell-ref formats.
 
 \(fn REFERENCE)" t nil)
 
-(if (fboundp 'register-definition-prefixes) (register-definition-prefixes 
"klink" '("klink" "link-to-kotl")))
+(register-definition-prefixes "klink" '("klink" "link-to-kotl"))
 
 ;;;***
 
 ;;;### (autoloads nil "kmenu" "kmenu.el" (0 0 0 0))
 ;;; Generated autoloads from kmenu.el
 
-(if (fboundp 'register-definition-prefixes) (register-definition-prefixes 
"kmenu" '("id-" "kotl-")))
+(register-definition-prefixes "kmenu" '("id-" "kotl-"))
 
 ;;;***
 
 ;;;### (autoloads nil "knode" "knode.el" (0 0 0 0))
 ;;; Generated autoloads from knode.el
 
-(if (fboundp 'register-definition-prefixes) (register-definition-prefixes 
"knode" '("knode:")))
+(register-definition-prefixes "knode" '("knode:"))
 
 ;;;***
 
@@ -196,14 +194,10 @@ See documentation for `kcell:ref-to-id' for valid 
cell-ref formats.
 (autoload 'kotl-mode "kotl-mode" "\
 The major mode used to edit and view koutlines.
 It provides the following keys:
-\\{kotl-mode-map}
-
-\(fn)" t nil)
+\\{kotl-mode-map}" t nil)
 
 (autoload 'kotl-mode:example "kotl-mode" "\
-Display the Koutliner example file for demonstration use by a user.
-
-\(fn)" t nil)
+Display the Koutliner example file for demonstration use by a user." t nil)
 
 (autoload 'kotl-mode:overview "kotl-mode" "\
 Show the first line of each cell.
@@ -235,46 +229,44 @@ Display fully expanded tree rooted at CELL-REF.
 \(fn &optional CELL-REF)" t nil)
 
 (autoload 'kotl-mode:is-p "kotl-mode" "\
-Signal an error if current buffer is not a Hyperbole outline, else return t.
-
-\(fn)" nil nil)
+Signal an error if current buffer is not a Hyperbole outline, else return t." 
nil nil)
 
-(if (fboundp 'register-definition-prefixes) (register-definition-prefixes 
"kotl-mode" '("delete-selection-pre-hook" "kotl-mode" "yank-")))
+(register-definition-prefixes "kotl-mode" '("delete-selection-pre-hook" 
"kotl-mode" "yank-"))
 
 ;;;***
 
 ;;;### (autoloads nil "kotl-orgtbl" "kotl-orgtbl.el" (0 0 0 0))
 ;;; Generated autoloads from kotl-orgtbl.el
 
-(if (fboundp 'register-definition-prefixes) (register-definition-prefixes 
"kotl-orgtbl" '("kotl-mode:transpose-lines-" "orgtbl-")))
+(register-definition-prefixes "kotl-orgtbl" '("kotl-mode:transpose-lines-" 
"orgtbl-"))
 
 ;;;***
 
 ;;;### (autoloads nil "kprop-em" "kprop-em.el" (0 0 0 0))
 ;;; Generated autoloads from kprop-em.el
 
-(if (fboundp 'register-definition-prefixes) (register-definition-prefixes 
"kprop-em" '("kproperty:")))
+(register-definition-prefixes "kprop-em" '("kproperty:"))
 
 ;;;***
 
 ;;;### (autoloads nil "kprop-xe" "kprop-xe.el" (0 0 0 0))
 ;;; Generated autoloads from kprop-xe.el
 
-(if (fboundp 'register-definition-prefixes) (register-definition-prefixes 
"kprop-xe" '("kproperty:")))
+(register-definition-prefixes "kprop-xe" '("kproperty:"))
 
 ;;;***
 
 ;;;### (autoloads nil "kview" "kview.el" (0 0 0 0))
 ;;; Generated autoloads from kview.el
 
-(if (fboundp 'register-definition-prefixes) (register-definition-prefixes 
"kview" '("kcell-view:" "kview:")))
+(register-definition-prefixes "kview" '("kcell-view:" "kview:"))
 
 ;;;***
 
 ;;;### (autoloads nil "kvspec" "kvspec.el" (0 0 0 0))
 ;;; Generated autoloads from kvspec.el
 
-(if (fboundp 'register-definition-prefixes) (register-definition-prefixes 
"kvspec" '("kvspec:")))
+(register-definition-prefixes "kvspec" '("kvspec:"))
 
 ;;;***
 
diff --git a/test/demo-tests.el b/test/demo-tests.el
index eb4d671..16ff37a 100644
--- a/test/demo-tests.el
+++ b/test/demo-tests.el
@@ -242,13 +242,17 @@
   "Hide org mode header."
   (with-temp-buffer
     (org-mode)
-    (insert "* 1\n** 2\n*** 3\n")
-    (goto-char 1)
-    (should (not (org-check-for-hidden 'headlines)))
-    (save-excursion
-      (action-key))
-    ;;; (org-hide-entry)
-    (should (org-check-for-hidden 'headlines))))
+    ;; Without this next let, default Org behavior may occur which
+    ;; inserts a new heading when org-meta-return is called rather
+    ;; than collapsing the existing tree of headings.
+    (let ((hsys-org-enable-smart-keys t))
+      (insert "* 1\n** 2\n*** 3\n")
+      (goto-char 1)
+      (should (not (org-check-for-hidden 'headlines)))
+      (save-excursion
+       (action-key))
+;;; (org-hide-entry)
+      (should (org-check-for-hidden 'headlines)))))
 
 ;; Manifest
 (ert-deftest demo-manifest-test ()



reply via email to

[Prev in Thread] Current Thread [Next in Thread]