[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] scratch/hyperbole-lexbind 131295e 07/20: Remove conditionals on x
From: |
Stefan Monnier |
Subject: |
[elpa] scratch/hyperbole-lexbind 131295e 07/20: Remove conditionals on xemacs |
Date: |
Wed, 14 Aug 2019 04:30:22 -0400 (EDT) |
branch: scratch/hyperbole-lexbind
commit 131295ec36bd9054864d7d7ce5ec4feddad38a3d
Author: Mats Lidell <address@hidden>
Commit: Mats Lidell <address@hidden>
Remove conditionals on xemacs
Remove all featurep checks on xemacs and emacs.
---
Changes | 5 -
MANIFEST | 1 -
hargs.el | 18 +-
hibtypes.el | 4 +-
hinit.el | 20 +--
hload-path.el | 16 +-
hmouse-drv.el | 18 +-
hmouse-info.el | 10 +-
hmouse-key.el | 30 +---
hmouse-sh.el | 366 +++++++++++++-------------------------
hmouse-tag.el | 11 +-
hpath.el | 2 +-
hsettings.el | 25 +--
hui-em-but.el | 7 +-
hui-menu.el | 15 +-
hui-mini.el | 37 +---
hui-select.el | 16 +-
hui-window.el | 91 ++++------
hui-xe-but.el | 471 -------------------------------------------------
hversion.el | 6 +-
hypb.el | 54 ++----
hyperbole-pkg.el | 8 -
hyperbole.el | 26 +--
hyrolo-menu.el | 16 +-
hyrolo.el | 22 +--
hywconfig.el | 8 +-
kotl/kfill.el | 15 +-
kotl/kmenu.el | 14 +-
kotl/kotl-autoloads.el | 4 +-
kotl/kotl-mode.el | 21 +--
kotl/kproperty.el | 4 +-
kotl/kview.el | 58 +++---
kotl/kvspec.el | 16 +-
33 files changed, 272 insertions(+), 1163 deletions(-)
diff --git a/Changes b/Changes
index 7d4d658..2989b2b 100644
--- a/Changes
+++ b/Changes
@@ -2072,11 +2072,6 @@ V6.0.2 changes ^^^^:
hibtypes.el (mail-address-at-p): Let case-fold-search be t since
mail-addresses
are case-insensitive.
-* Various Files: Small copyright fixes and formatting adjustments.
- Replaced hyperb:xemacs-p with (featurep 'xemacs) for byte-compiler
- optimization purposes and made small fixes throughout suggested by Stefan
- Monnier.
-
* hibtypes.el (mail-address-regexp): Simplified and modernized address matching
to better distinguish from @username social media references.
(mail-address-mode-list): Added lisp-interaction-mode and
fundamental-mode.
diff --git a/MANIFEST b/MANIFEST
index 6e5cd62..9a4f19c 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -42,7 +42,6 @@ hui-mouse.el - Use key or mouse key for many
functions, e.g. GNU Hyperbol
hui-select.el - Select delimited or larger and larger syntax-driven
regions in a buffer
hui-treemacs.el - Hyperbole Smart Key support for the Treemacs file
manager package
hui-window.el - Smart Mouse Key window and modeline depress/release
actions
-hui-xe-but.el - XEmacs button highlighting and flashing support
hui.el - GNU Hyperbole button and hyperlink user interface
--- APPLICATION PROGRAMMING INTERFACE ---
diff --git a/hargs.el b/hargs.el
index 57b78a6..696cdab 100644
--- a/hargs.el
+++ b/hargs.el
@@ -228,17 +228,13 @@ Optional DEFAULT-PROMPT is used to describe default
value."
(defun hargs:select-event-window ()
"Select window, if any, that mouse was over during last event."
- (if (featurep 'xemacs)
- (if current-mouse-event
- (select-window
- (or (event-window current-mouse-event) (selected-window))))
- (let ((window (posn-window (event-start last-command-event))))
- (if (framep window)
- (setq window (frame-selected-window window)))
- (if (and (window-minibuffer-p window)
- (not (minibuffer-window-active-p window)))
- (error "Attempt to select inactive minibuffer window")
- (select-window (or window (selected-window)))))))
+ (let ((window (posn-window (event-start last-command-event))))
+ (if (framep window)
+ (setq window (frame-selected-window window)))
+ (if (and (window-minibuffer-p window)
+ (not (minibuffer-window-active-p window)))
+ (error "Attempt to select inactive minibuffer window")
+ (select-window (or window (selected-window))))))
(defun hargs:set-string-to-complete ()
"Store the current minibuffer contents into `hargs:string-to-complete'."
diff --git a/hibtypes.el b/hibtypes.el
index c018f3c..8aaae63 100644
--- a/hibtypes.el
+++ b/hibtypes.el
@@ -4,8 +4,8 @@
;;
;; Orig-Date: 19-Sep-91 at 20:45:31
;;
-;; Copyright (C) 1991-2017 Free Software Foundation, Inc. See
-;; the "HY-COPY" file for license information.
+;; Copyright (C) 1991-2019 Free Software Foundation, Inc.
+;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
;;; Commentary:
diff --git a/hinit.el b/hinit.el
index dd3acd2..c9df41b 100644
--- a/hinit.el
+++ b/hinit.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 1-Oct-91 at 02:32:51
;;
-;; Copyright (C) 1991-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1991-2019 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -43,9 +43,7 @@
(interactive)
(unless (featurep 'infodock)
;; Initialize now since Emacs startup has finished.
- (if (and (or hyperb:emacs-p (and (boundp 'current-menubar)
current-menubar))
- after-init-time)
- (hyperbole-menubar-menu)
+ (if after-init-time (hyperbole-menubar-menu)
;; Defer initialization until after Emacs startup. This really is
needed.
(add-hook 'after-init-hook #'hyperbole-menubar-menu))
;; Avoid returning the large Hyperbole menu.
@@ -58,18 +56,8 @@
;;;###autoload
(defmacro hui-menu-remove (menu-sym &optional keymap)
"Remove MENU-SYM menu from any menubars generated by optional KEYMAP or the
global-map."
- `(prog1 (cond (hyperb:emacs-p
- (if (null ,keymap) (setq keymap global-map))
- (define-key (or ,keymap global-map) [menu-bar ,menu-sym] nil))
- ;; XEmacs
- ((boundp 'menubar-configuration)
- (if (memq ',menu-sym menubar-configuration)
- (if (fboundp 'customize-set-variable)
- (customize-set-variable
- 'menubar-configuration
- (delq ',menu-sym menubar-configuration))
- (setq menubar-configuration
- (delq ',menu-sym menubar-configuration))))))
+ `(prog1 (if (null ,keymap) (setq keymap global-map))
+ (define-key (or ,keymap global-map) [menu-bar ,menu-sym] nil)
;; Force a menu-bar update.
(force-mode-line-update)))
diff --git a/hload-path.el b/hload-path.el
index d827ce8..6204e44 100644
--- a/hload-path.el
+++ b/hload-path.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 29-Jun-16 at 14:39:33
;;
-;; Copyright (C) 1992-2017 Free Software Foundation, Inc.
+;; Copyright (C) 1992-2019 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -13,17 +13,6 @@
;;; Code:
;;; ************************************************************************
-;;; Public variables
-;;; ************************************************************************
-
-;;; Support mouse handling and Koutlines under GNU Emacs V19 or higher.
-;;;
-;;;###autoload
-(defconst hyperb:emacs-p
- (and (not (featurep 'xemacs)) emacs-version)
- "Version string if running under GNU Emacs, else nil")
-
-;;; ************************************************************************
;;; Hyperbole Directory Setting (dynamically computed)
;;; ************************************************************************
@@ -57,8 +46,7 @@ It must end with a directory separator character.")
(add-to-list 'load-path (expand-file-name "kotl/" hyperb:dir))
;; Invoke kotl-mode for files ending in ".kotl".
;; Also allow ".kot" for DOS and Windows users.
-(setq auto-mode-alist (cons '("\\.kotl$\\|\\.kot$" . kotl-mode)
- auto-mode-alist))
+(add-to-list 'auto-mode-alist '("\\.kotl?\\'" . kotl-mode))
(provide 'hload-path)
diff --git a/hmouse-drv.el b/hmouse-drv.el
index 9d81962..8142cdf 100644
--- a/hmouse-drv.el
+++ b/hmouse-drv.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 04-Feb-90
;;
-;; Copyright (C) 1989-2018 Free Software Foundation, Inc.
+;; Copyright (C) 1989-2019 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -1259,10 +1259,7 @@ Under InfoDock and XEmacs, `zmacs-region' must be t;
under GNU Emacs,
;; Save any active region to `hkey-region' when the mouse is moved between
frames or buffers.
-(if (featurep 'xemacs)
- (add-hook 'mouse-leave-frame-hook #'hmouse-save-region)
- ;; GNU Emacs
- (add-hook 'mouse-leave-buffer-hook #'hmouse-save-region))
+(add-hook 'mouse-leave-buffer-hook #'hmouse-save-region)
;; BW - Last confirmed in 1999, for some reason, using this next
;; function in byte-compiled form caused the first character
@@ -1277,16 +1274,7 @@ lines or if ARGS is null and there is no graphical
window system,
return current point as a marker."
(and (car args) (listp (car args)) (setq args (car args)))
(if (and args (hyperb:window-system))
- (progn (hmouse-set-point-at args)
- (cond ((featurep 'xemacs)
- (if (eventp current-mouse-event)
- (copy-event current-mouse-event)))
- ((equal (hyperb:window-system) "next")
- (let ((win (car args)))
- (list win
- (+ (nth 1 args) (nth 0 (window-edges win)))
- (+ (nth 2 args) (nth 1 (window-edges win))))))
- (t args)))
+ (progn (hmouse-set-point-at args) args)
(list 'keyboard-drag (posn-at-point))))
(defun hmouse-set-point-at (set-point-arg-list)
diff --git a/hmouse-info.el b/hmouse-info.el
index b0d74b5..f81b389 100644
--- a/hmouse-info.el
+++ b/hmouse-info.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 04-Apr-89
;;
-;; Copyright (C) 1989-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1989-2019 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -170,9 +170,7 @@ Otherwise, return nil."
(filep (concat "(" nodename ")" "Top"))
(buffer-file-name (concat "(" buffer-file-name ")" nodename))
(t nodename)))
- (if (featurep 'xemacs)
- (Info-goto-node nodename nil t)
- (Info-goto-node nodename))
+ (Info-goto-node nodename)
t)))
(defun Info-handle-in-node-hdr-assist ()
@@ -223,9 +221,7 @@ entry and returns t; otherwise returns nil."
(forward-char 2)
(setq node (Info-extract-menu-node-name nil (Info-index-node)))))
(when node
- (if (featurep 'xemacs)
- (Info-goto-node node nil t)
- (Info-goto-node node))
+ (Info-goto-node node)
t))))
;;; ************************************************************************
diff --git a/hmouse-key.el b/hmouse-key.el
index 20982a8..5ea6696 100644
--- a/hmouse-key.el
+++ b/hmouse-key.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 30-May-94 at 00:11:57
;;
-;; Copyright (C) 1994-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1994-2019 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -29,18 +29,6 @@
(eval-when-compile (mapc #'require '(hsettings hmouse-drv hmouse-sh)))
;;; ************************************************************************
-;;; Public variables
-;;; ************************************************************************
-
-(unless (or (featurep 'xemacs) hyperb:emacs-p)
- ;; XEmacs and Emacs pre-load their mouse libraries, so
- ;; we shouldn't have to require them here.
- (eval (cdr (assoc (hyperb:window-system)
- '(("xterm" . (require 'x-mouse)) ; X
- ("next" . (load "eterm-fns" t)) ; NEXTSTEP
- )))))
-
-;;; ************************************************************************
;;; Public functions
;;; ************************************************************************
@@ -70,24 +58,10 @@ bindings after Smart Key setup."
(noninteractive)
;;
;; GNU Emacs, XEmacs or InfoDock
- ((or (featurep 'xemacs) hyperb:emacs-p)
+ (t
(mapcar
(lambda (key-and-binding)
(global-set-key (car key-and-binding) (cdr key-and-binding)))
- key-binding-list))
- ;;
- ;; X
- ((equal (hyperb:window-system) "xterm")
- (mapcar
- (lambda (key-and-binding)
- (define-key mouse-map (car key-and-binding) (cdr key-and-binding)))
- key-binding-list))
- ;;
- ;; NeXT
- ((equal (hyperb:window-system) "next")
- (mapcar
- (lambda (key-and-binding)
- (global-set-mouse (car key-and-binding) (cdr key-and-binding)))
key-binding-list))))
(defun hmouse-install (&optional arg)
diff --git a/hmouse-sh.el b/hmouse-sh.el
index 7923124..cfe1afd 100644
--- a/hmouse-sh.el
+++ b/hmouse-sh.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 3-Sep-91 at 21:40:58
;;
-;; Copyright (C) 1991-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1991-2019 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -257,164 +257,122 @@ Use nil as CMD value to unbind the key. Works under
GNU Emacs only."
))))
(defun hmouse-get-bindings (hmouse-middle-flag)
- "Returns the list of current bindings of mouse keys used by Hyperbole.
+ "Return the list of current bindings of mouse keys used by Hyperbole.
If HMOUSE-MIDDLE-FLAG is non-nil, includes the middle mouse key binding as
well.
These may be the bindings prior to initializing Hyperbole or the Hyperbole
bindings."
;; Do nothing when running in batch mode.
(unless noninteractive
(nconc
(if hmouse-middle-flag (hmouse-get-unshifted-bindings))
- (eval
- (cdr (assoc
- ;; Get mouse bindings under Emacs or XEmacs, even if not under a
- ;; window system since they can have frames on ttys and windowed
- ;; displays at the same time.
- (or (and (featurep 'xemacs) "xemacs")
- (and hyperb:emacs-p "emacs")
- (hyperb:window-system))
- '(("emacs" .
- (mapcar (lambda (key) (cons key (global-key-binding key)))
- (if (eq window-system 'dps)
- ;; NEXTSTEP offers only 2 shift-mouse buttons which
we use
- ;; as the Smart Keys.
- '([S-down-mouse-1] [S-drag-mouse-1] [S-mouse-1]
- [S-down-mouse-2] [S-drag-mouse-2] [S-mouse-2]
- [S-double-mouse-1] [S-triple-mouse-1]
- [S-double-mouse-2] [S-triple-mouse-2]
- [header-line S-down-mouse-1] [header-line
S-drag-mouse-1]
- [header-line S-mouse-1]
- [header-line S-down-mouse-2] [header-line
S-drag-mouse-2]
- [header-line S-mouse-2]
- [left-fringe S-down-mouse-1] [left-fringe
S-drag-mouse-1]
- [left-fringe S-mouse-1]
- [left-fringe S-down-mouse-2] [left-fringe
S-drag-mouse-2]
- [left-fringe S-mouse-2]
- [right-fringe S-down-mouse-1] [right-fringe
S-drag-mouse-1]
- [right-fringe S-mouse-1]
- [right-fringe S-down-mouse-2] [right-fringe
S-drag-mouse-2]
- [right-fringe S-mouse-2]
- [vertical-line S-down-mouse-1] [vertical-line
S-drag-mouse-1]
- [vertical-line S-mouse-1]
- [vertical-line S-down-mouse-2] [vertical-line
S-drag-mouse-2]
- [vertical-line S-mouse-2]
- [mode-line S-down-mouse-1] [mode-line
S-drag-mouse-1]
- [mode-line S-mouse-1]
- [mode-line S-down-mouse-2] [mode-line
S-drag-mouse-2]
- [mode-line S-mouse-2]
- )
- ;; X, macOS or MS Windows
- '([S-down-mouse-2] [S-drag-mouse-2] [S-mouse-2]
- [S-down-mouse-3] [S-drag-mouse-3] [S-mouse-3]
- [S-double-mouse-2] [S-triple-mouse-2]
- [S-double-mouse-3] [S-triple-mouse-3]
- [header-line S-down-mouse-2] [header-line
S-drag-mouse-2]
- [header-line S-mouse-2]
- [header-line S-down-mouse-3] [header-line
S-drag-mouse-3]
- [header-line S-mouse-3]
- [left-fringe S-down-mouse-2] [left-fringe
S-drag-mouse-2]
- [left-fringe S-mouse-2]
- [left-fringe S-down-mouse-3] [left-fringe
S-drag-mouse-3]
- [left-fringe S-mouse-3]
- [right-fringe S-down-mouse-2] [right-fringe
S-drag-mouse-2]
- [right-fringe S-mouse-2]
- [right-fringe S-down-mouse-3] [right-fringe
S-drag-mouse-3]
- [right-fringe S-mouse-3]
- [vertical-line S-down-mouse-2] [vertical-line
S-drag-mouse-2]
- [vertical-line S-mouse-2]
- [vertical-line S-down-mouse-3] [vertical-line
S-drag-mouse-3]
- [vertical-line S-mouse-3]
- [mode-line S-down-mouse-2] [mode-line S-drag-mouse-2]
- [mode-line S-mouse-2]
- [mode-line S-down-mouse-3] [mode-line S-drag-mouse-3]
- [mode-line S-mouse-3]
- ))))
- ("xemacs" .
- (nconc
- (mapcar (lambda (key)
- (cons key (global-key-binding key)))
- '([(shift button2)] [(shift button2up)]
- [(shift button3)] [(shift button3up)]))
- (if (boundp 'mode-line-map)
- (mapcar (lambda (key)
- (cons key (lookup-key mode-line-map key)))
- '([(shift button3)] [(shift button3up)])))))
- ("xterm" .
- (mapcar (lambda (key) (cons key (lookup-key mouse-map key)))
- (list x-button-s-middle x-button-s-middle-up
- x-button-s-right x-button-s-right-up)))
- ("next" .
- (mapcar (lambda (key)
- (cons key (mousemap-get
- (mouse-list-to-mouse-code key)
- current-global-mousemap)))
- (apply 'nconc
- (mapcar (lambda (region)
- (mapcar (function
- (lambda (key)
- (cons region key)))
- '((shift left) (shift up left)
- (shift right) (shift up right)
- )))
- '(text scrollbar modeline minibuffer)))
- )))))))))
+ ;; Get mouse bindings under Emacs or XEmacs, even if not under a
+ ;; window system since they can have frames on ttys and windowed
+ ;; displays at the same time.
+ (mapcar (lambda (key) (cons key (global-key-binding key)))
+ (if (eq window-system 'dps)
+ ;; NEXTSTEP offers only 2 shift-mouse buttons which we use
+ ;; as the Smart Keys.
+ '([S-down-mouse-1] [S-drag-mouse-1] [S-mouse-1]
+ [S-down-mouse-2] [S-drag-mouse-2] [S-mouse-2]
+ [S-double-mouse-1] [S-triple-mouse-1]
+ [S-double-mouse-2] [S-triple-mouse-2]
+ [header-line S-down-mouse-1] [header-line S-drag-mouse-1]
+ [header-line S-mouse-1]
+ [header-line S-down-mouse-2] [header-line S-drag-mouse-2]
+ [header-line S-mouse-2]
+ [left-fringe S-down-mouse-1] [left-fringe S-drag-mouse-1]
+ [left-fringe S-mouse-1]
+ [left-fringe S-down-mouse-2] [left-fringe S-drag-mouse-2]
+ [left-fringe S-mouse-2]
+ [right-fringe S-down-mouse-1] [right-fringe S-drag-mouse-1]
+ [right-fringe S-mouse-1]
+ [right-fringe S-down-mouse-2] [right-fringe S-drag-mouse-2]
+ [right-fringe S-mouse-2]
+ [vertical-line S-down-mouse-1] [vertical-line S-drag-mouse-1]
+ [vertical-line S-mouse-1]
+ [vertical-line S-down-mouse-2] [vertical-line S-drag-mouse-2]
+ [vertical-line S-mouse-2]
+ [mode-line S-down-mouse-1] [mode-line S-drag-mouse-1]
+ [mode-line S-mouse-1]
+ [mode-line S-down-mouse-2] [mode-line S-drag-mouse-2]
+ [mode-line S-mouse-2]
+ )
+ ;; X, macOS or MS Windows
+ '([S-down-mouse-2] [S-drag-mouse-2] [S-mouse-2]
+ [S-down-mouse-3] [S-drag-mouse-3] [S-mouse-3]
+ [S-double-mouse-2] [S-triple-mouse-2]
+ [S-double-mouse-3] [S-triple-mouse-3]
+ [header-line S-down-mouse-2] [header-line S-drag-mouse-2]
+ [header-line S-mouse-2]
+ [header-line S-down-mouse-3] [header-line S-drag-mouse-3]
+ [header-line S-mouse-3]
+ [left-fringe S-down-mouse-2] [left-fringe S-drag-mouse-2]
+ [left-fringe S-mouse-2]
+ [left-fringe S-down-mouse-3] [left-fringe S-drag-mouse-3]
+ [left-fringe S-mouse-3]
+ [right-fringe S-down-mouse-2] [right-fringe S-drag-mouse-2]
+ [right-fringe S-mouse-2]
+ [right-fringe S-down-mouse-3] [right-fringe S-drag-mouse-3]
+ [right-fringe S-mouse-3]
+ [vertical-line S-down-mouse-2] [vertical-line S-drag-mouse-2]
+ [vertical-line S-mouse-2]
+ [vertical-line S-down-mouse-3] [vertical-line S-drag-mouse-3]
+ [vertical-line S-mouse-3]
+ [mode-line S-down-mouse-2] [mode-line S-drag-mouse-2]
+ [mode-line S-mouse-2]
+ [mode-line S-down-mouse-3] [mode-line S-drag-mouse-3]
+ [mode-line S-mouse-3]
+ )))
+ (nconc
+ (mapcar (lambda (key)
+ (cons key (global-key-binding key)))
+ '([(shift button2)] [(shift button2up)]
+ [(shift button3)] [(shift button3up)]))
+ (if (boundp 'mode-line-map)
+ (mapcar (lambda (key)
+ (cons key (lookup-key mode-line-map key)))
+ '([(shift button3)] [(shift button3up)])))))))
(defun hmouse-get-unshifted-bindings ()
- "Returns the list of middle mouse key bindings prior to their use as Smart
Keys."
+ "Return the list of middle mouse key bindings prior to their use as Smart
Keys."
;; Do nothing when running in batch mode.
- (eval
- (cdr (assoc
- ;; Get mouse bindings under Emacs or XEmacs, even if not under a
- ;; window system since they can have frames on ttys and windowed
- ;; displays at the same time.
- (or (and (featurep 'xemacs) "xemacs")
- (and hyperb:emacs-p "emacs")
- (hyperb:window-system))
- '(("emacs" .
- (mapcar (lambda (key) (cons key (global-key-binding key)))
- (if (not (eq window-system 'dps))
- ;; X, macOS or MS Windows
- '([down-mouse-2] [drag-mouse-2] [mouse-2]
- [down-mouse-3] [drag-mouse-3] [mouse-3]
- [double-mouse-2] [triple-mouse-2]
- [double-mouse-3] [triple-mouse-3]
- [header-line down-mouse-2] [header-line drag-mouse-2]
- [header-line mouse-2]
- [left-fringe down-mouse-2] [left-fringe drag-mouse-2]
- [left-fringe mouse-2]
- [right-fringe down-mouse-2] [right-fringe
drag-mouse-2]
- [right-fringe mouse-2]
- [vertical-line down-mouse-2] [vertical-line
drag-mouse-2]
- [vertical-line mouse-2]
- [left-fringe down-mouse-3] [left-fringe drag-mouse-3]
- [left-fringe mouse-3]
- [right-fringe down-mouse-3] [right-fringe
drag-mouse-3]
- [right-fringe mouse-3]
- [vertical-line down-mouse-3] [vertical-line
drag-mouse-3]
- [vertical-line mouse-3]
- [mode-line down-mouse-2] [mode-line drag-mouse-2]
- [mode-line mouse-2]
- [mode-line down-mouse-3] [mode-line drag-mouse-3]
- [mode-line mouse-3]
- ))))
- ("xemacs" .
- (nconc
- (mapcar (lambda (key)
- (cons key (global-key-binding key)))
- '([button2] [button2up]
- [button3] [button3up]
- ))
- (if (boundp 'mode-line-map)
- (mapcar (function
- (lambda (key)
- (cons key (lookup-key mode-line-map key))))
- '([button3] [button3up])))
+ (mapcar (lambda (key) (cons key (global-key-binding key)))
+ (if (not (eq window-system 'dps))
+ ;; X, macOS or MS Windows
+ '([down-mouse-2] [drag-mouse-2] [mouse-2]
+ [down-mouse-3] [drag-mouse-3] [mouse-3]
+ [double-mouse-2] [triple-mouse-2]
+ [double-mouse-3] [triple-mouse-3]
+ [header-line down-mouse-2] [header-line drag-mouse-2]
+ [header-line mouse-2]
+ [left-fringe down-mouse-2] [left-fringe drag-mouse-2]
+ [left-fringe mouse-2]
+ [right-fringe down-mouse-2] [right-fringe drag-mouse-2]
+ [right-fringe mouse-2]
+ [vertical-line down-mouse-2] [vertical-line drag-mouse-2]
+ [vertical-line mouse-2]
+ [left-fringe down-mouse-3] [left-fringe drag-mouse-3]
+ [left-fringe mouse-3]
+ [right-fringe down-mouse-3] [right-fringe drag-mouse-3]
+ [right-fringe mouse-3]
+ [vertical-line down-mouse-3] [vertical-line drag-mouse-3]
+ [vertical-line mouse-3]
+ [mode-line down-mouse-2] [mode-line drag-mouse-2]
+ [mode-line mouse-2]
+ [mode-line down-mouse-3] [mode-line drag-mouse-3]
+ [mode-line mouse-3]
+ )))
+ (nconc
+ (mapcar (lambda (key)
+ (cons key (global-key-binding key)))
+ '([button2] [button2up]
+ [button3] [button3up]
))
- ("xterm" .
- (mapcar (lambda (key) (cons key (lookup-key mouse-map key)))
- (list x-button-middle x-button-middle-up
- x-button-right x-button-right-up
- )))
- )))))
+ (if (boundp 'mode-line-map)
+ (mapcar (function
+ (lambda (key)
+ (cons key (lookup-key mode-line-map key))))
+ '([button3] [button3up])))
+ ))
;; Based on a function from Emacs mouse.el.
(defun hmouse-posn-set-point (position)
@@ -497,65 +455,20 @@ point determined by
`mouse-select-region-move-to-beginning'."
;; this.
(setq kmacro-call-mouse-event nil)
;;
- (cond
- ;; GNU Emacs
- (hyperb:emacs-p
- (setq hmouse-set-point-command 'hmouse-move-point-emacs)
- (if (eq window-system 'dps)
- ;; NEXTSTEP offers only 2 shift-mouse buttons which we use as the
Smart Keys.
- (progn
- (hmouse-bind-shifted-key-emacs 1 #'action-key-depress-emacs
#'action-mouse-key-emacs)
- (hmouse-bind-shifted-key-emacs 2 #'assist-key-depress-emacs
#'assist-mouse-key-emacs))
- ;; X, macOS or MS Windows
- (hmouse-bind-shifted-key-emacs 2 #'action-key-depress-emacs
#'action-mouse-key-emacs)
- (hmouse-bind-shifted-key-emacs 3 #'assist-key-depress-emacs
#'assist-mouse-key-emacs)
- (with-eval-after-load "company"
- (define-key company-active-map [S-down-mouse-2] 'ignore)
- (define-key company-active-map [S-mouse-2]
'smart-company-to-definition)
- (define-key company-active-map [S-down-mouse-3] 'ignore)
- (define-key company-active-map [S-mouse-3] 'smart-company-help))))
- ;;
- ;; XEmacs
- ((featurep 'xemacs)
- ;; Set mouse bindings under XEmacs, even if not under a window
- ;; system since it can have frames on ttys and windowed displays at
- ;; the same time.
- (setq hmouse-set-point-command 'hmouse-move-point-xemacs)
- (global-set-key '(shift button2) 'action-key-depress)
- (global-set-key '(shift button2up) 'action-mouse-key)
- (if (fboundp 'infodock-set-mouse-bindings)
- (infodock-set-mouse-bindings)
- (if (boundp 'mode-line-map)
- (progn (define-key mode-line-map '(shift button3)
- 'assist-key-depress)
- (define-key mode-line-map '(shift button3up)
- 'assist-mouse-key)
- ))
- (global-set-key '(shift button3) 'assist-key-depress)
- (global-set-key '(shift button3up) 'assist-mouse-key)))
- ;;
- ;; X
- ((equal (hyperb:window-system) "xterm")
- (setq hmouse-set-point-command 'x-mouse-set-point)
- (define-key mouse-map x-button-s-middle 'action-key-depress)
- (define-key mouse-map x-button-s-middle-up 'action-mouse-key)
- (define-key mouse-map x-button-s-right 'assist-key-depress)
- (define-key mouse-map x-button-s-right-up 'assist-mouse-key)
- )
- ;;
- ;; NeXT
- ((equal (hyperb:window-system) "next")
- (setq hmouse-set-point-command 'hmouse-move-point-eterm)
- ;; NEXTSTEP offers only 2 shift-mouse buttons which we use as the Smart
Keys.
- (mapc
- (lambda (region)
- (global-set-mouse (cons region '(shift left)) 'action-key-depress)
- (global-set-mouse (cons region '(shift up left)) 'action-mouse-key)
- (global-set-mouse (cons region '(shift right)) 'assist-key-depress)
- (global-set-mouse (cons region '(shift up right)) 'assist-mouse-key)
- )
- '(text scrollbar modeline minibuffer))
- ))
+ (setq hmouse-set-point-command 'hmouse-move-point-emacs)
+ (if (eq window-system 'dps)
+ ;; NEXTSTEP offers only 2 shift-mouse buttons which we use as the Smart
Keys.
+ (progn
+ (hmouse-bind-shifted-key-emacs 1 #'action-key-depress-emacs
#'action-mouse-key-emacs)
+ (hmouse-bind-shifted-key-emacs 2 #'assist-key-depress-emacs
#'assist-mouse-key-emacs))
+ ;; X, macOS or MS Windows
+ (hmouse-bind-shifted-key-emacs 2 #'action-key-depress-emacs
#'action-mouse-key-emacs)
+ (hmouse-bind-shifted-key-emacs 3 #'assist-key-depress-emacs
#'assist-mouse-key-emacs)
+ (with-eval-after-load "company"
+ (define-key company-active-map [S-down-mouse-2] 'ignore)
+ (define-key company-active-map [S-mouse-2] 'smart-company-to-definition)
+ (define-key company-active-map [S-down-mouse-3] 'ignore)
+ (define-key company-active-map [S-mouse-3] 'smart-company-help)))
(setq hmouse-bindings (hmouse-get-bindings hmouse-middle-flag)
hmouse-bindings-flag t)))
@@ -563,8 +476,8 @@ point determined by
`mouse-select-region-move-to-beginning'."
"Binds the middle mouse key as the Action Key and the right mouse key as the
Assist Key.
With optional MIDDLE-KEY-ONLY-FLAG non-nil, binds only the middle mouse key."
(interactive)
- (cond ;; GNU Emacs
- (hyperb:emacs-p
+ (cond
+ (t
;; Unbind Emacs push-button mouse keys since Hyperbole handles them.
(define-key button-map [mouse-2] nil)
(define-key button-map [mode-line mouse-2] nil)
@@ -596,38 +509,7 @@ With optional MIDDLE-KEY-ONLY-FLAG non-nil, binds only the
middle mouse key."
(define-key company-active-map [mouse-2] 'smart-company-to-definition)
(unless ,middle-key-only-flag
(define-key company-active-map [down-mouse-3] 'ignore)
- (define-key company-active-map [mouse-3] 'smart-company-help)))))
- ;;
- ;; XEmacs
- ((featurep 'xemacs)
- ;; Set mouse bindings under XEmacs, even if not under a window
- ;; system since it can have frames on ttys and windowed displays at
- ;; the same time.
- ;;
- ;; Get rid of Info-mode button 2 and possibly button 3 bindings since
Hyperbole
- ;; handles things in Info.
- (var:add-and-run-hook 'Info-mode-hook
- (lambda () (define-key Info-mode-map 'button2 nil)))
- ;;
- (global-set-key 'button2 'action-key-depress)
- (global-set-key 'button2up 'action-mouse-key)
- (unless middle-key-only-flag
- (if (and (boundp 'Info-mode-map) (keymapp Info-mode-map))
- (funcall (lambda () (define-key Info-mode-map 'button3 nil)))
- (add-hook 'Info-mode-hook unbind-but3))
- (when (boundp 'mode-line-map)
- (define-key mode-line-map 'button3 'assist-key-depress)
- (define-key mode-line-map 'button3up 'assist-mouse-key))
- (global-set-key 'button3 'assist-key-depress)
- (global-set-key 'button3up 'assist-mouse-key)))
- ;;
- ;; X
- ((equal (hyperb:window-system) "xterm")
- (define-key mouse-map x-button-middle 'action-key-depress)
- (define-key mouse-map x-button-middle-up 'action-mouse-key)
- (unless middle-key-only-flag
- (define-key mouse-map x-button-right 'assist-key-depress)
- (define-key mouse-map x-button-right-up 'assist-mouse-key)))))
+ (define-key company-active-map [mouse-3] 'smart-company-help)))))))
(provide 'hmouse-sh)
diff --git a/hmouse-tag.el b/hmouse-tag.el
index 1f9f3c3..2cb4949 100644
--- a/hmouse-tag.el
+++ b/hmouse-tag.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 24-Aug-91
;;
-;; Copyright (C) 1991-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1991-2019 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -20,13 +20,12 @@
(mapc #'require '(find-func hpath hui-select))
(cond ((or (featurep 'etags) (featurep 'tags))
nil)
- ((or (featurep 'xemacs) hyperb:emacs-p)
+ (t
;; Force use of .elc file here since otherwise the bin/etags
;; executable might be found in a user's load-path by the load
;; command.
(or (load "etags.elc" t nil t)
- (load "tags-fix" t)))
- ((load "tags" t))))
+ (load "tags-fix" t)))))
;; If etags utilizes the new xref.el library, define some helper
;; functions to simplify programming.
@@ -1061,7 +1060,7 @@ Returns TAG."
(tags-add-tables nil))
;; For InfoDock (XEmacs may also take this branch), force exact match
;; (otherwise tag might = nil and the following stringp test could fail).
- (if (or (featurep 'infodock) (featurep 'xemacs))
+ (if (featurep 'infodock)
(if (stringp tag) (setq tag (list tag))))
(condition-case ()
(and func (funcall func tag) t)
@@ -1279,7 +1278,7 @@ See the \"${hyperb:dir}/smart-clib-sym\" script for more
information."
;; For InfoDock (XEmacs may also take this branch), force exact match
;; when `next' is false (otherwise tag would = nil and the following
;; stringp test would fail).
- (if (or (featurep 'infodock) (featurep 'xemacs))
+ (if (featurep 'infodock)
(if (stringp tag)
(setq tag (list tag))))
(if (and func (setq find-tag-result (funcall func tag)))
diff --git a/hpath.el b/hpath.el
index f31c9ed..51e1d14 100644
--- a/hpath.el
+++ b/hpath.el
@@ -847,7 +847,7 @@ program)."
(hpath:command-string display-executables
filename))
nil)
- ((hypb:functionp display-executables)
+ ((functionp display-executables)
(funcall display-executables filename)
t)
((and (listp display-executables) display-executables)
diff --git a/hsettings.el b/hsettings.el
index 6cdd1b8..0f4ca10 100644
--- a/hsettings.el
+++ b/hsettings.el
@@ -223,7 +223,7 @@ obtained search string."
;; No-op unless set by one of the conditionals below.
(defun hui:but-flash ())
-(cond ((and hyperb:emacs-p (not noninteractive))
+(cond ((not noninteractive)
(require 'hui-em-but)
;; Highlight explicit buttons whenever a file is read in.
(add-hook 'find-file-hook #'hproperty:but-create t)
@@ -243,29 +243,6 @@ obtained search string."
;;
;; If you find that the Hyperbole button flash time is too slow
;; or too fast, adjust it here.
- (setq hproperty:but-flash-time 1000))
-
- ((and (featurep 'xemacs) (not noninteractive))
- (require 'hui-xe-but)
- ;;
- ;; Highlight explicit buttons when files are read in.
- (add-hook 'find-file-hook #'hproperty:but-create t)
- (defalias 'hui:but-flash 'hproperty:but-flash)
- ;;
- ;; Substitute for the nil argument below a valid X color name with
- ;; which to highlight buttons if the default highlighting does not
- ;; appeal to you. See "hui-xe-but.el" for how this works.
- (hproperty:cycle-but-color nil)
- ;;
- ;; Non-nil means highlight all explict buttons with
`hproperty:but-face'.
- (setq hproperty:but-highlight-flag t)
- ;;
- ;; Non-nil means visually emphasize that button under mouse cursor is
- ;; selectable.
- (setq hproperty:but-emphasize-p nil)
- ;;
- ;; If you find that the Hyperbole button flash time is too slow
- ;; or too fast, adjust it here.
(setq hproperty:but-flash-time 1000)))
;;; ************************************************************************
diff --git a/hui-em-but.el b/hui-em-but.el
index 6ccf25c..c3cd6aa 100644
--- a/hui-em-but.el
+++ b/hui-em-but.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 21-Aug-92
;;
-;; Copyright (C) 1992-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1992-2019 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -16,8 +16,9 @@
;;; Code:
-(unless (and hyperb:emacs-p (not noninteractive))
- (error "(hui-em-but.el): Load only when running GNU Emacs interactively."))
+(when noninteractive
+ ;; FIXME: Loading a file should always be harmless!
+ (error "(hui-em-but.el): Load only when running GNU Emacs interactively"))
;;; ************************************************************************
;;; Other required Elisp libraries
diff --git a/hui-menu.el b/hui-menu.el
index b1f9a46..c1388f7 100644
--- a/hui-menu.el
+++ b/hui-menu.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 28-Oct-94 at 10:59:44
;;
-;; Copyright (C) 1994-2017 Free Software Foundation, Inc.
+;; Copyright (C) 1994-2019 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -186,10 +186,7 @@ Return t if cutoff, else nil."
;; setting. Invoking this item should then make it
;; visible.
(hyperb:init-menubar))
- ((cond (hyperb:emacs-p
- (global-key-binding [menu-bar Hyperbole]))
- ((boundp 'current-menubar)
- (car (find-menu-item current-menubar
'("Hyperbole")))))
+ ((global-key-binding [menu-bar Hyperbole])
;; Already on the menubar, remove it.
(hui-menu-remove Hyperbole))
(t;; Add it.
@@ -198,10 +195,8 @@ Return t if cutoff, else nil."
:selected
(cond ((boundp 'menubar-configuration)
(memq 'Hyperbole menubar-configuration))
- (hyperb:emacs-p
- (and (global-key-binding [menu-bar Hyperbole]) t))
- ((boundp 'current-menubar)
- (car (find-menu-item current-menubar '("Hyperbole")))))]
+ (t
+ (and (global-key-binding [menu-bar Hyperbole]) t)))]
"----"
["Find-File-Accepts-URLs"
hpath:find-file-urls-mode
@@ -302,7 +297,7 @@ REBUILD-FLAG is non-nil, in which case the menu is rebuilt."
(setq infodock-hyperbole-menu
(delq nil
(list
- (if (featurep 'xemacs) "%_Hyperbole" "Hyperbole")
+ "Hyperbole"
:config 'Hyperbole
hui-menu-about
["Demonstration" (hypb:display-file-with-logo
diff --git a/hui-mini.el b/hui-mini.el
index 80389cb..c52d64b 100644
--- a/hui-mini.el
+++ b/hui-mini.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 15-Oct-91 at 20:13:17
;;
-;; Copyright (C) 1991-2017 Free Software Foundation, Inc.
+;; Copyright (C) 1991-2019 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -17,6 +17,7 @@
;;; ************************************************************************
(require 'hypb)
+(require 'hsettings) ;For hyperbole-web-search-alist
(require 'browse-url)
;;; ************************************************************************
@@ -149,13 +150,9 @@ With optional HELP-STRING-FLAG, instead returns the one
line help string for the
"Uses CHAR-STR or last input character as minibuffer argument."
(interactive)
(let ((input (or char-str (aref (recent-keys) (1- (length (recent-keys)))))))
- (cond (hyperb:emacs-p
- (and (not (integerp input))
- (eventp input)
- (setq input (event-basic-type input))))
- ((featurep 'xemacs)
- (if (eventp input)
- (setq input (event-to-character input)))))
+ (and (not (integerp input))
+ (eventp input)
+ (setq input (event-basic-type input)))
(if (or (symbolp input)
(and (integerp input) (= input ?\r)))
(setq input (hargs:at-p)))
@@ -202,24 +199,6 @@ With optional HELP-STRING-FLAG, instead returns the one
line help string for the
(if (eq owind (minibuffer-window))
(select-window owind)))))
-(defun hui:menu-xemacs (&optional menu menu-list)
- "Returns an XEmacs menu built from a Hyperbole minibuffer menu.
-Optional MENU (a symbol) specifies a specific submenu of optional MENU-LIST.
-a Hyperbole menu list structure. Otherwise, all menus are used.
-MENU defaults to 'hyperbole and MENU-LIST to `hui:menus'. See `hui:menus'
-definition for the format of the menu list structure."
- (mapcar
- (lambda (entry)
- (or (consp entry)
- (error "(hui:menu-xemacs): Invalid menu entry: %s" entry))
- (let ((label (car entry))
- (content (car (cdr entry))))
- (cond ((null content) (hypb:replace-match-string ">$" label "" t))
- ((and (consp content) (eq (car content) 'menu))
- (hui:menu-xemacs (cdr content)))
- (t (vector label content 't)))))
- (cdr (assq (or menu 'hyperbole) (or menu-list hui:menus)))))
-
(defun hui:menu-select (menu-alist &optional doc-flag help-string-flag)
"Prompts user to choose the first character of any item from MENU-ALIST.
Case is not significant. If chosen by direct selection with the Assist Key,
@@ -366,7 +345,7 @@ constructs. If not given, the top-level Hyperbole menu is
used."
;;; ************************************************************************
;; Hyperbole menu mode is suitable only for specially formatted data.
-(put 'hui:menu-mode 'mode-class 'special)
+(put 'hui:menu-mode 'mode-class 'special) ;FIXME: Never used as a major mode!?
(defvar hui:menu-mode-map nil
"Keymap containing Hyperbole minibuffer menu commands.")
@@ -384,10 +363,6 @@ constructs. If not given, the top-level Hyperbole menu is
used."
(define-key hui:menu-mode-map [backtab] #'hui:menu-backward-item) ;;
Shift-TAB
(define-key hui:menu-mode-map "\M-\C-i" #'hui:menu-backward-item) ;;
M-TAB
;;
- ;; This next binding is necessary since the default button1 binding under
- ;; XEmacs, mouse-track, is broken under XEmacs V19.8.
- (and (featurep 'xemacs) window-system
- (define-key hui:menu-mode-map 'button1 'mouse-set-point))
(let ((i 32))
(while (<= i 126)
(define-key hui:menu-mode-map (char-to-string i) 'hui:menu-enter)
diff --git a/hui-select.el b/hui-select.el
index 895ad21..aa91d8c 100644
--- a/hui-select.el
+++ b/hui-select.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 19-Oct-96 at 02:25:27
;;
-;; Copyright (C) 1996-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1996-2019 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -247,14 +247,12 @@ Also, add language-specific syntax setups to aid in thing
selection."
(unless (boundp 'hyperbole-loading)
(require 'hyperbole))
(if hkey-init
- (cond (hyperb:emacs-p
- (transient-mark-mode 1)
- (hkey-global-set-key [double-down-mouse-1] nil)
- (hkey-global-set-key [double-mouse-1] 'hui-select-thing-with-mouse)
- (hkey-global-set-key [triple-down-mouse-1] nil)
- (hkey-global-set-key [triple-mouse-1]
'hui-select-thing-with-mouse))
- ((featurep 'xemacs)
- (add-hook 'mouse-track-click-hook
#'hui-select-double-click-hook))))
+ (progn
+ (transient-mark-mode 1)
+ (hkey-global-set-key [double-down-mouse-1] nil)
+ (hkey-global-set-key [double-mouse-1] 'hui-select-thing-with-mouse)
+ (hkey-global-set-key [triple-down-mouse-1] nil)
+ (hkey-global-set-key [triple-mouse-1] 'hui-select-thing-with-mouse)))
;;
;; These hooks let you select C++ and Java methods and classes by
;; double-clicking on the first character of a definition or on its
diff --git a/hui-window.el b/hui-window.el
index 703e490..d4386a5 100644
--- a/hui-window.el
+++ b/hui-window.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 21-Sep-92
;;
-;; Copyright (C) 1992-2018 Free Software Foundation, Inc.
+;; Copyright (C) 1992-2019 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -145,10 +145,10 @@ drag release window.")
:group 'hyperbole-keys)
;; Mats Lidell says this should be 10 characters for GNU Emacs.
-(defvar hmouse-edge-sensitivity (if hyperb:emacs-p 10 3)
+(defvar hmouse-edge-sensitivity 10
"*Number of characters from window edges within which a click is considered
at an edge.")
-(defvar hmouse-side-sensitivity (if hyperb:emacs-p 5 1)
+(defvar hmouse-side-sensitivity 5
"*Characters in either direction from window side within which a click is
considered on the side.")
(defvar hmouse-x-drag-sensitivity 5
@@ -264,8 +264,7 @@ appropriate Smart Menu for the context at point. (Smart
Menus are a
part of InfoDock and not a part of Hyperbole)."
(interactive)
(if (and (fboundp 'smart-menu)
- (or (null window-system)
- (not (or hyperb:emacs-p (featurep 'xemacs)))))
+ (null window-system))
(smart-menu)
(let ((wind (get-buffer-window "*Buffer List*"))
owind)
@@ -284,8 +283,7 @@ appropriate Smart Menu for the context at point. (Smart
Menus are a
part of InfoDock and not a part of Hyperbole)."
(interactive)
(if (and (fboundp 'smart-menu)
- (or (null window-system)
- (not (or hyperb:emacs-p (featurep 'xemacs)))))
+ (null window-system))
(smart-menu)
(let ((wind (get-buffer-window "*Ibuffer*"))
owind)
@@ -627,12 +625,7 @@ Value returned is nil if not a vertical line drag, 'up if
drag moved up or
(defun hmouse-drag-window-side ()
"Returns non-nil if Action Key was dragged from a window side divider and
released in the same window.
If free variable `assist-flag' is non-nil, uses Assist Key."
- (cond ((featurep 'xemacs)
- ;; Depress events in scrollbars or in non-text area of buffer are
- ;; not visible or identifiable at the Lisp-level, so always return
- ;; nil.
- nil)
- ((hyperb:window-system)
+ (cond ((hyperb:window-system)
(let* ((depress-args (if assist-flag assist-key-depress-args
action-key-depress-args))
(release-args (if assist-flag assist-key-release-args
@@ -693,14 +686,10 @@ Beeps and prints message if the window cannot be split
further."
(defun smart-coords-in-window-p (coords window)
"Tests if COORDS are in WINDOW. Returns WINDOW if they are, nil otherwise."
(cond ((null coords) nil)
- ((and hyperb:emacs-p (eventp coords))
+ ((eventp coords)
(let ((w-or-f (posn-window (event-start coords))))
(if (framep w-or-f) (setq w-or-f (frame-selected-window w-or-f)))
(eq w-or-f window)))
- ((if (featurep 'xemacs)
- (if (eventp coords)
- (eq (event-window coords) window)
- (eq (car coords) window))))
((fboundp 'window-edges)
(let* ((edges (window-edges window))
(w-xmin (nth 0 edges))
@@ -718,33 +707,27 @@ Beeps and prints message if the window cannot be split
further."
Ignores minibuffer window."
(cond ((markerp coords)
(marker-position coords))
- ((and hyperb:emacs-p (eventp coords))
- (posn-point (event-start coords)))
- ((and (featurep 'xemacs) (eventp coords))
- (event-point coords))))
+ ((eventp coords)
+ (posn-point (event-start coords)))))
(defun smart-window-of-coords (coords)
"Returns window in which COORDS fall or nil if none.
Ignores minibuffer window."
- (when coords
- (cond ((markerp coords)
- (get-buffer-window (marker-buffer coords)))
- ((and hyperb:emacs-p (eventp coords))
- (let ((w-or-f (posn-window (event-start coords))))
- (if (framep w-or-f) (setq w-or-f (frame-selected-window w-or-f)))
- w-or-f))
- ((if (featurep 'xemacs)
- (if (eventp coords)
- (event-window coords)
- (car coords))))
- (t (let ((window-list (hypb:window-list 'no-minibuf))
- (window)
- (w))
- (while (and (not window) window-list)
- (setq w (car window-list)
- window-list (cdr window-list)
- window (smart-coords-in-window-p coords w)))
- window)))))
+ (cond ((null coords) nil)
+ ((markerp coords)
+ (get-buffer-window (marker-buffer coords)))
+ ((eventp coords)
+ (let ((w-or-f (posn-window (event-start coords))))
+ (if (framep w-or-f) (setq w-or-f (frame-selected-window w-or-f)))
+ w-or-f))
+ (t (let ((window-list (hypb:window-list 'no-minibuf))
+ (window)
+ (w))
+ (while (and (not window) window-list)
+ (setq w (car window-list)
+ window-list (cdr window-list)
+ window (smart-coords-in-window-p coords w)))
+ window))))
;;; ************************************************************************
;;; Private functions
@@ -1009,23 +992,20 @@ If free variable `assist-flag' is non-nil, uses Assist
Key."
(defun hmouse-emacs-at-modeline-buffer-id-p ()
"GNU Emacs: Return t if mouse position is within the buffer name field of
the current window's mode-line, else nil."
- (when hyperb:emacs-p
- (let* ((coords (hmouse-window-coordinates)) ;; in characters
- (x-coord (caadr coords))
- (mode-line-string (and (integerp x-coord) (>= x-coord 0)
(format-mode-line mode-line-format)))
- (keymap (and mode-line-string
- (<= x-coord (1- (length mode-line-string)))
- (plist-get (text-properties-at x-coord
mode-line-string) 'local-map))))
- (when keymap
- (eq (lookup-key keymap [mode-line mouse-1])
'mode-line-previous-buffer)))))
+ (let* ((coords (hmouse-window-coordinates)) ;; in characters
+ (x-coord (caadr coords))
+ (mode-line-string (and (integerp x-coord) (>= x-coord 0)
(format-mode-line mode-line-format)))
+ (keymap (and mode-line-string
+ (<= x-coord (1- (length mode-line-string)))
+ (plist-get (text-properties-at x-coord mode-line-string)
'local-map))))
+ (when keymap
+ (eq (lookup-key keymap [mode-line mouse-1])
'mode-line-previous-buffer))))
(defun hmouse-modeline-resize-window ()
"Resizes window whose mode line was depressed on by the last Smart Key.
Resize amount depends upon the vertical difference between press and release
of the Smart Key."
(cond ((not (hyperb:window-system)) nil)
- ((and (featurep 'xemacs) (not (fboundp 'window-edges)))
- (error "Drag from a mode-line with button1 to resize windows."))
(t (let* ((owind (selected-window))
(window (smart-window-of-coords
(if assist-flag assist-key-depress-args
@@ -1147,12 +1127,7 @@ release must be."
"Resizes window whose side was depressed on by the last Smart Key.
Resize amount depends upon the horizontal difference between press and release
of the Smart Key."
- (cond ((featurep 'xemacs)
- ;; Depress events in scrollbars or in non-text area of buffer are
- ;; not visible or identifiable at the Lisp-level, so always return
- ;; nil.
- nil)
- ((hyperb:window-system)
+ (cond ((hyperb:window-system)
(let* ((owind (selected-window))
(window (smart-window-of-coords
(if assist-flag assist-key-depress-args
diff --git a/hui-xe-but.el b/hui-xe-but.el
deleted file mode 100644
index 458a52a..0000000
--- a/hui-xe-but.el
+++ /dev/null
@@ -1,471 +0,0 @@
-;;; hui-xe-but.el --- XEmacs button highlighting and flashing support
-;;
-;; Author: Bob Weiner
-;;
-;; Orig-Date: 21-Aug-92
-;;
-;; Copyright (C) 1992-2016 Free Software Foundation, Inc.
-;; See the "HY-COPY" file for license information.
-;;
-;; This file is part of GNU Hyperbole.
-
-;;; Commentary:
-;;
-;; Can't use read-only buttons here because then outline-mode
-;; becomes unusable.
-;;
-
-;;; Code:
-
-(unless (featurep 'xemacs)
- (error "(hui-xe-but.el): Load only when running XEmacs."))
-
-;;; ************************************************************************
-;;; Other required Elisp libraries
-;;; ************************************************************************
-
-(require 'custom) ;; For defface.
-(require 'hbut)
-
-;;; XEmacs 19.12 renamed x-color-display-p to x-display-color-p.
-(if (and (fboundp 'x-color-display-p)
- (not (fboundp 'x-display-color-p)))
- (defalias 'x-display-color-p 'x-color-display-p))
-
-(defun hproperty:background ()
- "Returns default background color for selected frame."
- (face-background (get-face 'default)))
-
-(defun hproperty:foreground ()
- "Returns default foreground color for selected frame."
- (face-foreground (get-face 'default)))
-
-;;; ************************************************************************
-;;; Public variables
-;;; ************************************************************************
-
-(defcustom hproperty:but-highlight-flag t
- "*Non-nil (default value) means highlight all explict buttons with
`hproperty:but-face'."
- :type 'boolean
- :group 'hyperbole-buttons)
-
-(defcustom hproperty:but-emphasize-flag nil
- "*Non-nil means visually emphasize that button under mouse cursor is
selectable."
- :type 'boolean
- :group 'hyperbole-buttons)
-
-(defcustom hproperty:but-flash-time 1000
- "*Machine specific value for empty loop counter, Emacs button flash delay."
- :type '(integer :match (lambda (_widget value) (and (integerp value) (>
value 0))))
- :group 'hyperbole-buttons)
-
-(defcustom hproperty:item-highlight-color (hproperty:foreground)
- "Color with which to highlight list/menu selections.
-Call (hproperty:set-item-highlight <color>) to change value."
- :type 'color
- :initialize (lambda (_symbol _value) (hproperty:foreground))
- :group 'hyperbole-buttons)
-
-;;; ************************************************************************
-;;; Public functions
-;;; ************************************************************************
-
-(defun hproperty:but-add (start end face)
- "Add between START and END a button using FACE in current buffer.
-If `hproperty:but-emphasize-flag' is non-nil when this is called, emphasize
-that button is selectable whenever the mouse cursor moves over it."
- (let ((but (make-extent start end)))
- (set-extent-face but face)
- (set-extent-property but 'highlight hproperty:but-emphasize-flag)))
-
-(defun hproperty:but-color ()
- "Return current color of buffer's buttons."
- (if hproperty:color-ptr
- (car hproperty:color-ptr)
- (hproperty:foreground)))
-
-(defun hproperty:but-clear ()
- "Delete all Hyperbole buttons from current buffer."
- (interactive)
- (map-extents (lambda (extent unused-arg)
- (if (eq (extent-face extent) 'hbut)
- (delete-extent extent)))))
-
-(defun hproperty:but-create (&optional start-delim end-delim regexp-match)
- "Highlight all hyper-buttons in buffer using XEmacs extents.
-Will use optional strings START-DELIM and END-DELIM instead of default values.
-If END-DELIM is a symbol, e.g. t, then START-DELIM is taken as a regular
-expression which matches an entire button string.
-If REGEXP-MATCH is non-nil, only buttons matching this argument are
-highlighted.
-
-If `hproperty:but-emphasize-flag' is non-nil when this is called, emphasize
-that button is selectable whenever the mouse cursor moves over it."
- (interactive)
- (hproperty:but-clear)
- (hproperty:but-create-all start-delim end-delim regexp-match))
-
-(defun hproperty:but-create-all (&optional start-delim end-delim regexp-match)
- "Mark all hyper-buttons in buffer as XEmacs buttons, for later highlighting.
-Will use optional strings START-DELIM and END-DELIM instead of default values.
-If END-DELIM is a symbol, e.g. t, then START-DELIM is taken as a regular
-expression which matches an entire button string.
-If REGEXP-MATCH is non-nil, only buttons matching this argument are
-highlighted."
- (when hproperty:but-highlight-flag
- (ebut:map (lambda (lbl start end)
- (hproperty:but-add start end hproperty:but-face))
- start-delim end-delim regexp-match 'include-delims)))
-
-(defun hproperty:but-create-on-yank (prop-value start end)
- (save-restriction
- (narrow-to-region start end)
- (hproperty:but-create-all)))
-
-(add-to-list 'yank-handled-properties '(hproperty:but-face .
hproperty:but-create-on-yank))
-
-(defun hproperty:but-delete (&optional pos)
- (let ((extent (extent-at (or pos (point)))))
- (if extent (delete-extent extent))))
-
-;;; ************************************************************************
-;;; Private functions
-;;; ************************************************************************
-
-(defsubst hproperty:list-cycle (list-ptr list)
- "Move LIST-PTR to next element in LIST or when at end to first element."
- (or (and list-ptr (setq list-ptr (cdr list-ptr)))
- (setq list-ptr list)))
-
-;;; ************************************************************************
-;;; Private variables
-;;; ************************************************************************
-
-(defconst hproperty:color-list
- '("red" "blue" "paleturquoise4" "mediumpurple2"
- "lightskyblue3" "springgreen2" "salmon" "yellowgreen" "darkorchid2"
- "aquamarine4" "slateblue4" "slateblue1" "olivedrab1" "goldenrod4"
- "goldenrod3" "cadetblue2" "burlywood1" "slategrey" "mistyrose"
- "limegreen" "lightcyan" "goldenrod" "gainsboro" "skyblue1" "honeydew"
- "yellow2" "tomato3" "skyblue" "purple4" "orange3" "bisque3" "bisque2"
- "grey34" "gray99" "gray63" "gray44" "gray37" "gray33" "gray26" "azure1"
- "snow4" "peru" "red" "lightgoldenrod4" "mediumseagreen" "blush"
- "mediumorchid2" "lightskyblue1" "darkslateblue" "midnightblue"
- "lightsalmon1" "lemonchiffon" "yellow" "lightsalmon" "coral"
- "dodgerblue3" "darkorange4" "blue" "royalblue4" "red" "green" "cyan"
- "darkviolet" "darksalmon" "darkorange" "blue" "pink" "magenta2"
- "sienna4" "khaki2" "grey75" "grey74" "grey73" "grey69" "grey68" "grey35"
- "grey13" "gray90" "gray81" "gray55" "gray51" "gray31" "snow2" "pink3"
- "grey7" "gray1" "red4" "red3" "tan" "red" "yellow" "mediumvioletred"
- "lightslategrey" "lavenderblush4" "turquoise" "darkturquoise"
- "darkslategrey" "lightskyblue" "lightsalmon4" "lightsalmon3"
- "forestgreen" "dodgerblue4" "orchid" "rosybrown4" "brown" "peachpuff3"
- "palegreen3" "orangered2" "rose" "lightcyan4" "indianred4" "indianred3"
- "seagreen2" "indianred" "deeppink1" "navyblue" "lavender" "grey"
- "deeppink" "salmon4" "salmon3" "oldlace" "grey78" "grey77" "grey54"
- "grey45" "grey21" "gray97" "gray96" "gray95" "gray88" "gray87" "gray86"
- "gray70" "gray57" "gray38" "gray12" "gray11" "plum3" "linen" "gray9"
- "gray8" "blue4" "beige" "turquoise" "blue" "lemonchiffon4"
- "darkseagreen1" "antiquewhite3" "mediumorchid" "springgreen"
- "turquoise4" "steelblue3" "mistyrose2" "lightcyan2" "red" "firebrick2"
- "royalblue" "cadetblue" "skyblue3" "yellow3" "salmon1" "orange4"
- "hotpink" "grey90" "gray56" "gray39" "gray18" "gray14" "plum4" "grey6"
- "gray6" "gold3" "gold1" "blue2" "tan2" "cyan" "mediumspringgreen"
- "darkolivegreen2" "goldenrod" "lightsteelblue" "brown" "whip"
- "chartreuse3" "violetred4" "royalblue2" "royalblue1" "papayawhip"
- "mistyrose3" "lightcyan1" "aquamarine" "skyblue4" "hotpink4" "hotpink3"
- "hotpink2" "dimgray" "tomato" "grey66" "grey65" "grey64" "grey33"
- "grey27" "gray76" "gray69" "gray68" "grey0" "azure" "green"
- "darkgoldenrod4" "darkgoldenrod3" "darkgoldenrod2" "darkgoldenrod"
- "brown" "lightsalmon2" "deepskyblue4" "deepskyblue3" "deepskyblue2"
- "deepskyblue" "darkorange1" "violetred3" "violetred2" "violetred1"
- "slateblue3" "slateblue2" "drab" "indianred1" "firebrick1" "cadetblue4"
- "violetred" "rosybrown" "blue" "firebrick" "grey100" "wheat4" "grey79"
- "grey76" "grey61" "gray93" "gray84" "gray65" "gray36" "gray32" "gray13"
- "gray10" "azure3" "snow1" "tan1" "gray" "darkolivegreen1" "blue"
- "almond" "lavenderblush3" "lavenderblush2" "lavenderblush1"
- "darkolivegreen" "lavenderblush" "aquamarine2" "red" "olivedrab2"
- "mistyrose4" "mistyrose1" "lightcyan3" "lightcoral" "chartreuse"
- "peachpuff" "palegreen" "mintcream" "skyblue2" "moccasin" "tomato1"
- "orchid3" "maroon3" "salmon" "grey81" "grey62" "grey39" "grey38"
- "grey37" "gray92" "gray83" "gray66" "gray54" "gray50" "gray30" "gray19"
- "gray15" "azure4" "grey3" "tan3" "pink" "gray" "blue" "lightsteelblue2"
- "lightsteelblue1" "green" "lightslategray" "lemonchiffon2"
- "springgreen1" "greenyellow" "chartreuse2" "grey" "royalblue3"
- "powderblue" "peachpuff2" "palegreen2" "cream" "slateblue" "seashell2"
- "deeppink2" "darkkhaki" "maroon4" "sienna" "grey71" "grey67" "grey18"
- "gray59" "gray43" "gray25" "bisque" "red1" "mediumslateblue"
- "lightgoldenrod1" "goldenrod" "paleturquoise3" "lightskyblue4" "green"
- "yellow" "smoke" "blue" "white" "steelblue4" "rosybrown3" "peachpuff1"
- "palegreen1" "blueviolet" "seashell4" "sienna3" "grey40" "gray91"
- "gray82" "gray5" "cyan2" "cyan1" "blue1" "snow" "lightgoldenrod2"
- "lightslateblue" "mediumorchid3" "darkseagreen4" "springgreen3" "green"
- "slategray4" "slategray3" "slategray2" "blue" "peachpuff4" "palegreen4"
- "green" "orangered3" "goldenrod1" "ghostwhite" "firebrick4" "firebrick3"
- "cadetblue3" "slategray" "seashell3" "honeydew3" "cornsilk4" "cornsilk2"
- "purple1" "dimgrey" "khaki1" "ivory3" "grey70" "grey60" "grey32"
- "grey22" "grey12" "gray98" "gray89" "gray71" "gray64" "gray60" "gray49"
- "azure2" "gray3" "paleturquoise1" "mediumpurple1" "purple"
- "lemonchiffon1" "blue" "navajowhite3" "darkorchid1" "orange"
- "goldenrod2" "khaki" "chocolate2" "burlywood2" "honeydew1" "darkgreen"
- "thistle3" "thistle2" "thistle1" "thistle" "maroon2" "maroon1" "grey53"
- "grey44" "grey25" "gray74" "gray45" "gray41" "gray35" "gray27" "gray23"
- "gray16" "brown4" "wheat" "coral" "tan4" "lightgoldenrodyellow" "blue"
- "green" "gray" "palevioletred3" "mediumpurple4" "mediumpurple3"
- "saddlebrown" "blue" "darkorchid4" "darkorchid3" "puff" "olivedrab4"
- "lightblue4" "lightpink" "lightgray" "honeydew2" "cornsilk1" "lace"
- "sienna1" "bisque4" "orchid" "khaki3" "grey84" "grey83" "grey82"
- "grey72" "grey52" "grey43" "grey26" "grey14" "grey10" "gray75" "gray53"
- "gray21" "gray20" "brown3" "grey8" "red2" "navy" "grey" "gold"
- "mediumaquamarine" "lightgoldenrod" "darkslategray4" "darkseagreen3"
- "darkseagreen2" "antiquewhite4" "white" "springgreen4" "lightyellow4"
- "white" "aquamarine1" "turquoise3" "steelblue2" "rosybrown2" "pink"
- "gray" "indianred2" "dodgerblue" "green" "seagreen1" "deeppink4"
- "aliceblue" "magenta1" "pink" "sienna2" "orchid1" "gray100" "grey97"
- "grey94" "grey87" "grey86" "grey51" "grey42" "grey19" "gray94" "gray85"
- "gray61" "brown2" "khaki" "grey1" "gold4" "blue" "green" "grey"
- "turquoise" "paleturquoise" "mediumorchid4" "antiquewhite2"
- "lightyellow2" "violet" "salmon" "chartreuse1" "turquoise1" "sandybrown"
- "orangered1" "lightpink1" "lightblue2" "lightblue1" "grey" "seagreen4"
- "seagreen3" "lightblue" "deeppink3" "burlywood" "seashell" "hotpink1"
- "gray" "yellow4" "yellow" "purple" "orange" "ivory4" "grey99" "grey89"
- "grey63" "grey58" "grey49" "grey31" "grey24" "grey20" "green4" "green1"
- "gray73" "gray67" "coral3" "coral2" "plum2" "pink4" "ivory" "gray4"
- "gray2" "gold2" "aquamarine" "grey" "lightgoldenrod3" "darkolivegreen3"
- "darkgoldenrod1" "goldenrod" "orchid" "chiffon" "navajowhite4"
- "deepskyblue1" "lightyellow" "floralwhite" "blue" "mediumblue"
- "chocolate4" "chocolate3" "burlywood4" "turquoise" "steelblue" "green"
- "lawngreen" "honeydew4" "seagreen" "orchid4" "wheat1" "violet" "ivory1"
- "grey88" "grey85" "grey57" "grey56" "grey55" "grey48" "grey47" "grey46"
- "grey30" "grey17" "gray47" "gray29" "pink2" "grey5" "grey4" "green"
- "gray0" "brown" "lightsteelblue4" "darkolivegreen4" "palevioletred4"
- "blue" "darkslategray3" "darkslategray2" "darkslategray1"
- "blanchedalmond" "palegoldenrod" "blue" "lightseagreen" "lemonchiffon3"
- "darkslategray" "green" "darkseagreen" "antiquewhite" "darkorange2"
- "chartreuse4" "blue" "rosybrown1" "olivedrab3" "lightpink2" "orangered"
- "thistle4" "blue" "cornsilk" "salmon2" "orchid2" "ivory2" "grey93"
- "grey92" "grey91" "grey36" "grey29" "grey28" "grey16" "gray79" "gray78"
- "gray77" "gray48" "gray17" "coral4" "coral1" "plum1" "pink1" "grey9"
- "grey2" "gray7" "cyan4" "blue3" "plum" "cornflowerblue" "lightskyblue2"
- "antiquewhite1" "navajowhite2" "navajowhite1" "lightyellow3"
- "navajowhite" "darkorange3" "whitesmoke" "turquoise2" "steelblue1"
- "lightpink4" "lightblue3" "green" "chocolate1" "blue" "olivedrab"
- "lightgrey" "chocolate" "magenta4" "magenta3" "yellow1" "purple3"
- "purple2" "orange2" "orange1" "magenta" "bisque1" "wheat2" "maroon"
- "khaki4" "grey96" "grey95" "grey80" "grey50" "grey41" "grey15" "grey11"
- "gray80" "gray58" "gray40" "gray34" "gray22" "brown1" "snow3"
- "mediumturquoise" "lightsteelblue3" "palevioletred2" "palevioletred1"
- "paleturquoise2" "green" "palevioletred" "mediumorchid1" "white"
- "mediumpurple" "lightyellow1" "dodgerblue2" "dodgerblue1" "violet"
- "aquamarine3" "slategray1" "gray" "orangered4" "lightpink3" "blue"
- "darkorchid" "cadetblue1" "burlywood3" "seashell1" "cornsilk3" "tomato4"
- "tomato2" "wheat3" "grey98" "grey59" "grey23" "green3" "green2" "gray72"
- "gray62" "gray52" "gray46" "gray42" "gray28" "gray24" "white" "cyan3"
- "black"))
-
-(defvar hproperty:color-ptr nil
- "Pointer to current color name table to use for Hyperbole buttons in
XEmacs.")
-
-(defconst hproperty:good-colors
- '(
- "medium violet red" "indianred4" "firebrick1" "DarkGoldenrod" "NavyBlue"
- "darkorchid" "tomato3" "mediumseagreen" "deeppink" "forestgreen"
- "mistyrose4" "slategrey" "purple4" "dodgerblue3" "mediumvioletred"
- "lightsalmon3" "orangered2" "turquoise4" "Gray55"
- )
- "Good colors for contrast against wheat background and black foreground.")
-
-
-;;; ************************************************************************
-;;; Public functions
-;;; ************************************************************************
-
-(defun hproperty:cycle-but-color (&optional color)
- "Switches button color to optional COLOR name or next item referenced by
hproperty:color-ptr."
- (interactive "sHyperbole button color: ")
- (if (not (or (and (fboundp 'device-class) (eq (device-class) 'color))
- (x-display-color-p)))
- nil
- (if color (setq hproperty:color-ptr nil))
- (set-face-foreground
- hproperty:but-face
- (or color (car (hproperty:list-cycle
- hproperty:color-ptr hproperty:good-colors))))
- (hproperty:set-flash-color)
- (sit-for 0) ;; Force display update
- t))
-
-(defun hproperty:set-flash-color ()
- "Set button flashing colors based upon current color set."
- (if (not (x-display-color-p))
- nil
- (set-face-background hproperty:flash-face (hproperty:but-color))
- (set-face-foreground hproperty:flash-face (hproperty:background))))
-
-(defun hproperty:but-flash ()
- "Flash a XEmacs Hyperbole button at or near point to indicate selection."
- (interactive)
- (let ((ibut) (prev)
- (start (hattr:get 'hbut:current 'lbl-start))
- (end (hattr:get 'hbut:current 'lbl-end))
- (b) (a))
- (if (and start end (setq prev (extent-at start)
- ibut t))
- (progn (if (not prev) (hproperty:but-add start end hproperty:but-face))
- (setq b (and start (extent-at start))))
- (setq b (extent-at (point))))
- (if (setq a (and (extentp b) (extent-face b)))
- (unwind-protect
- (progn
- (set-extent-face b hproperty:flash-face)
- (sit-for 0);; Force display update
- ;; Delay before redraw button
- (let ((i 0)) (while (< i hproperty:but-flash-time) (setq i (1+
i)))))
- (set-extent-face b a)
- (sit-for 0))) ;; Force display update
- (if (and ibut (not prev)) (hproperty:but-delete start))))
-
-(defun hproperty:set-item-highlight (&optional background foreground)
- "Setup or reset item highlight face using optional BACKGROUND and
FOREGROUND."
- (make-local-variable 'hproperty:item-face)
- (if background (setq hproperty:item-highlight-color background))
- (if (not hproperty:highlight-face)
- (progn
- (setq hproperty:highlight-face
- (or (find-face 'hproperty:highlight-face)
- (face-name
- (defface hproperty:highlight-face nil
- "Item highlighting face. Use
(hproperty:set-item-highlight) to set."))))
- (set-face-foreground hproperty:highlight-face
- (or foreground (hproperty:background)))
- (set-face-underline-p hproperty:highlight-face nil)))
-
- (let* ((tty (and (fboundp 'device-type)
- (eq 'tty (device-type (selected-device)))))
- (specifiers-function
- (if (fboundp 'specifier-specs) 'specifier-specs 'identity))
- (color-function
- (if (fboundp 'color-name) 'color-name 'identity))
- (update-hyrolo-highlight-flag
- (and (boundp 'hyrolo-highlight-face) (find-face hyrolo-highlight-face)
- (or (null
- (funcall specifiers-function
- (face-foreground hyrolo-highlight-face)))
- (equal
- (funcall color-function
- (face-foreground hyrolo-highlight-face))
- (funcall color-function (face-foreground 'default)))
- (face-equal hproperty:highlight-face
hyrolo-highlight-face)))))
- (if tty
- (copy-face 'italic 'hproperty:highlight-face)
- (if (and (funcall specifiers-function
- (face-background hproperty:highlight-face))
- (equal (funcall color-function
- (face-background hproperty:highlight-face))
- hproperty:item-highlight-color))
- nil
- (set-face-background hproperty:highlight-face
- hproperty:item-highlight-color))
- (and background (not (equal (face-background
- hproperty:highlight-face) background))
- (set-face-background hproperty:highlight-face background))
- (and foreground (not (equal (face-foreground
- hproperty:highlight-face) foreground))
- (set-face-foreground hproperty:highlight-face foreground)))
- ;; If no colors are specified under InfoDock, use the default color
- ;; scheme.
- (or background foreground (not (fboundp 'id-set-face))
- (id-set-face hproperty:highlight-face))
- (setq hproperty:item-face hproperty:highlight-face)
- (if update-hyrolo-highlight-flag
- (if tty
- (copy-face 'italic 'hyrolo-highlight-face)
- (copy-face hproperty:highlight-face hyrolo-highlight-face)))))
-
-(defun hproperty:select-item (&optional pnt)
- "Select item in current buffer at optional position PNT using
hproperty:item-face."
- (if hproperty:item-button
- nil
- (set-extent-face (setq hproperty:item-button (make-extent (point) (point)))
- hproperty:item-face))
- (if pnt (goto-char pnt))
- (skip-chars-forward " \t")
- (skip-chars-backward "^ \t\n\r")
- (let ((start (point)))
- (save-excursion
- (skip-chars-forward "^ \t\n\r")
- (set-extent-endpoints hproperty:item-button start (point))))
- ;; Force display update
- (sit-for 0))
-
-(defun hproperty:select-line (&optional pnt)
- "Select line in current buffer at optional position PNT using
hproperty:item-face."
- (if hproperty:item-button
- nil
- (set-extent-face (setq hproperty:item-button (make-extent (point) (point)))
- hproperty:item-face))
- (if pnt (goto-char pnt))
- (save-excursion
- (beginning-of-line)
- (set-extent-endpoints
- hproperty:item-button (point) (progn (end-of-line) (point))))
- ;; Force display update
- (sit-for 0))
-
-;;; ************************************************************************
-;;; Private variables
-;;; ************************************************************************
-
-(defvar hproperty:but-face
- (face-name (defface hproperty:but-face nil
- "Face for hyper-buttons."))
- "Face for hyper-buttons.")
-(setq hproperty:but hproperty:but-face)
-
-;; Init. files may set face properties, so run this after emacs initialization.
-(defun hproperty:set-face-after-init ()
- (if (and (fboundp 'device-type)
- (eq 'tty (device-type (selected-device))))
- (copy-face 'italic 'hproperty:but-face)
- (set-face-foreground hproperty:but-face (hproperty:but-color))
- (set-face-background hproperty:but-face (hproperty:background))))
-(if after-init-time
- (hproperty:set-face-after-init)
- (add-hook 'after-init-hook #'hproperty:set-face-after-init))
-
-(defvar hproperty:flash-face
- (face-name (defface hproperty:flash-face nil
- "Face for flashing hyper-buttons."))
- "Face for flashing hyper-buttons.")
-(hproperty:set-flash-color)
-
-(defvar hproperty:item-button nil
- "Button used to highlight an item in a listing buffer.")
-(make-variable-buffer-local 'hproperty:item-button)
-
-(defvar hproperty:item-face nil
- "Item marking face.")
-(or hproperty:item-face
- (setq hproperty:item-face
- (face-name (defface hproperty:item-face nil "Item marking face."))))
-
-(unless (boundp 'hproperty:highlight-face)
-(defvar hproperty:highlight-face nil
- "Item highlighting face. Use (hproperty:set-item-highlight) to set.")
-(if hproperty:highlight-face
- nil
- (setq hproperty:highlight-face
- (face-name
- (defface hproperty:highlight-face nil
- "Item highlighting face. Use (hproperty:set-item-highlight) to
set.")))
- ;; Reverse foreground and background colors for default block-style
highlighting.
- (hproperty:set-item-highlight (hproperty:foreground)
(hproperty:background))))
-
-(provide 'hui-xe-but)
-
-
-;; Local Variables:
-;; no-byte-compile: t
-;; End:
-
-;;; hui-xe-but.el ends here
diff --git a/hversion.el b/hversion.el
index 9470edb..91f8f9f 100644
--- a/hversion.el
+++ b/hversion.el
@@ -39,7 +39,7 @@ Use `hyperb:wsl-os-p' to test if running under WSL.")
;;;###autoload
(defvar hyperb:mouse-buttons
(if (or (and hyperb:microsoft-os-p (not (memq window-system '(w32 w64 x))))
- (and hyperb:emacs-p (memq window-system '(ns dps))))
+ (memq window-system '(ns dps)))
2 3)
"Number of live buttons available on the mouse.
Override this if the system-computed default is incorrect for your specific
mouse.")
@@ -133,9 +133,7 @@ Where a part in the term-type is delimited by a `-' or an
`_'."
;; then there is a window system to support.
(display-mouse-p))
;; X11, macOS, NEXTSTEP (DPS), or OS/2 Presentation
Manager (PM)
- (cond (hyperb:emacs-p "emacs")
- ((featurep 'xemacs) "xemacs")
- (t "xterm")))
+ "emacs")
((or (featurep 'eterm-fns)
(equal (getenv "TERM") "NeXT")
(equal (getenv "TERM") "eterm"))
diff --git a/hypb.el b/hypb.el
index 6abc17a..f156592 100644
--- a/hypb.el
+++ b/hypb.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 6-Oct-91 at 03:42:38
;;
-;; Copyright (C) 1991-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1991-2019 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -242,17 +242,6 @@ FILE is temporarily read into a buffer to determine the
major mode if necessary.
nil t)
nil t)))
-;;;###autoload
-(defun hypb:functionp (obj)
-"Returns t if OBJ is a function, nil otherwise."
- (cond
- ((symbolp obj) (fboundp obj))
- ((subrp obj))
- ((hypb:emacs-byte-code-p obj))
- ((consp obj)
- (if (eq (car obj) 'lambda) (listp (car (cdr obj)))))
- (t nil)))
-
(defun hypb:function-copy (func-symbol)
"Copies FUNC-SYMBOL's body for overloading. Returns copy of body."
(if (fboundp func-symbol)
@@ -453,23 +442,13 @@ then `locate-post-command-hook'."
current-prefix-arg))
(locate search-string filter arg))
-(if (or (featurep 'xemacs) hyperb:emacs-p)
- (defalias 'hypb:mark 'mark)
- (defun hypb:mark (inactive-p)
- "Return this buffer's mark value as integer, or nil if no mark.
-INACTIVE-P non-nil means return value of mark even if region is not active
-under Emacs version 19.
-If you are using this in an editing command, you are most likely making
-a mistake; see the documentation of `set-mark'."
- (mark)))
-
-(if (featurep 'xemacs)
- (defalias 'hypb:mark-marker 'mark-marker)
- (defun hypb:mark-marker (inactive-p)
- "Return this buffer's mark as a marker object, or nil if no mark.
+(defalias 'hypb:mark #'mark)
+
+(defun hypb:mark-marker (inactive-p)
+ "Return this buffer's mark as a marker object, or nil if no mark.
INACTIVE-P is unused, it is for compatibility with XEmacs' version of
mark-marker."
- (mark-marker)))
+ (mark-marker))
;;;###autoload
(defun hypb:map-plist (func plist)
@@ -527,7 +506,7 @@ NEWTEXT may instead be a function of one argument (the
string to replace in)
that returns a replacement string."
(unless (stringp str)
(error "(hypb:replace-match-string): 2nd arg must be a string: %s" str))
- (unless (or (stringp newtext) (hypb:functionp newtext))
+ (unless (or (stringp newtext) (functionp newtext))
(error "(hypb:replace-match-string): 3rd arg must be a string or function:
%s"
newtext))
(let ((rtn-str "")
@@ -541,7 +520,7 @@ that returns a replacement string."
(concat
rtn-str
(substring str prev-start match)
- (cond ((hypb:functionp newtext)
+ (cond ((functionp newtext)
(hypb:replace-match-string
regexp (substring str match start)
(funcall newtext str) literal))
@@ -703,14 +682,9 @@ nor nil it means to not count the minibuffer window even
if it is active."
(defvar hypb:hyperbole-banner-keymap
(let ((map (make-sparse-keymap)))
- (cond (hyperb:emacs-p
- (define-key map [mouse-1] 'hypb:browse-home-page)
- (define-key map [mouse-2] 'hypb:browse-home-page)
- (define-key map "\C-m" 'hypb:browse-home-page))
- ((featurep 'xemacs)
- (define-key map 'button1 'hypb:browse-home-page)
- (define-key map 'button2 'hypb:browse-home-page)
- (define-key map '(return) 'hypb:browse-home-page)))
+ (define-key map [mouse-1] 'hypb:browse-home-page)
+ (define-key map [mouse-2] 'hypb:browse-home-page)
+ (define-key map "\C-m" 'hypb:browse-home-page)
map)
"Keymap used when on the Hyperbole banner glyph.")
@@ -721,9 +695,7 @@ Without file, the banner is prepended to the current
buffer."
(if file
;; A stub for this function is defined in hversion.el when not running
in InfoDock.
(id-browse-file file))
- (if hyperb:emacs-p
- (hypb:display-file-with-logo-emacs file)
- (hypb:display-file-with-logo-xemacs file))
+ (hypb:display-file-with-logo-emacs file)
(goto-char (point-min))
(skip-syntax-forward "-")
(set-window-start (selected-window) 1)
@@ -840,7 +812,7 @@ Without file, the banner is prepended to the current
buffer."
;;; Private variables
;;; ************************************************************************
-(if hyperb:emacs-p (define-button-type 'hyperbole-banner))
+(define-button-type 'hyperbole-banner)
(provide 'hypb)
diff --git a/hyperbole-pkg.el b/hyperbole-pkg.el
deleted file mode 100644
index 71907c9..0000000
--- a/hyperbole-pkg.el
+++ /dev/null
@@ -1,8 +0,0 @@
-;; -*- no-byte-compile: t -*-
-(define-package "hyperbole" "7.0.3" "GNU Hyperbole: The Everyday Hypertextual
Information Manager"
- '((emacs "24.4"))
- :url "http://www.gnu.org/software/hyperbole"
- :keywords '("comm" "convenience" "files" "frames" "hypermedia" "languages"
- "mail" "matching" "mouse" "multimedia" "outlines" "tools" "wp"))
-
-(setq byte-compile-warnings '(not interactive-only find-tag free-vars
unresolved))
diff --git a/hyperbole.el b/hyperbole.el
index 4aa427d..b8d2340 100644
--- a/hyperbole.el
+++ b/hyperbole.el
@@ -303,32 +303,12 @@ which prevents automatic removal of any local bindings to
the same key."
(hkey-global-set-key key command)))
(defun hkey-set-bindings (key-binding-list)
- "Sets keys bound by Hyperbole to those in KEY-BINDING-LIST.
+ "Set keys bound by Hyperbole to those in KEY-BINDING-LIST.
KEY-BINDING-LIST is the value of either `hkey-previous-bindings'
\(key bindings prior to Hyperbole load) or `hkey-bindings' (Hyperbole
bindings after load)."
- (cond
- ;;
- ;; GNU Emacs, XEmacs or InfoDock
- ((or (featurep 'xemacs) hyperb:emacs-p)
- (mapcar
- (lambda (key-and-binding)
- (global-set-key (cadr key-and-binding) (car (cddr key-and-binding))))
- key-binding-list))
- ;;
- ;; X
- ((equal (hyperb:window-system) "xterm")
- (mapcar
- (lambda (key-and-binding)
- (define-key mouse-map (cadr key-and-binding) (car (cddr
key-and-binding))))
- key-binding-list))
- ;;
- ;; NeXT
- ((equal (hyperb:window-system) "next")
- (mapcar
- (lambda (key-and-binding)
- (global-set-mouse (cadr key-and-binding) (car (cddr key-and-binding))))
- key-binding-list))))
+ (dolist (key-and-binding key-binding-list)
+ (global-set-key (cadr key-and-binding) (car (cddr key-and-binding)))))
(defun hyperbole-toggle-bindings ()
"Toggles between Hyperbole mouse and keyboard keys and their prior bindings."
diff --git a/hyrolo-menu.el b/hyrolo-menu.el
index bc44159..24b8bd7 100644
--- a/hyrolo-menu.el
+++ b/hyrolo-menu.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 28-Oct-94 at 10:59:44
;;
-;; Copyright (C) 1994-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1994-2019 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -112,21 +112,15 @@
;;; Public functions
;;; ************************************************************************
-;;; This definition is used only by XEmacs and Emacs.
+;;; This definition is used only by Emacs.
(defun hyrolo-menubar-menu ()
"Add a HyRolo menu to the rolo match buffer menubar."
(cond ((fboundp 'popup-mode-menu)
(setq mode-popup-menu id-popup-hyrolo-menu))
- ((featurep 'xemacs)
- (define-key hyrolo-mode-map 'button3 'hyrolo-popup-menu))
- (t ;; hyperb:emacs-p
+ (t
(define-key hyrolo-mode-map [C-down-mouse-3] 'hyrolo-popup-menu)
(define-key hyrolo-mode-map [C-mouse-3] nil)))
- (unless (cond (hyperb:emacs-p
- (global-key-binding [menu-bar Rolo]))
- ((boundp 'current-menubar)
- (car (find-menu-item current-menubar '("Rolo")))))
- (if (featurep 'xemacs) (set-buffer-menubar (copy-sequence
current-menubar)))
+ (unless (global-key-binding [menu-bar Rolo])
(easy-menu-define nil hyrolo-mode-map "Rolo Menubar Menu"
id-popup-hyrolo-menu)
;; Force a menu-bar update.
(force-mode-line-update)))
@@ -142,7 +136,7 @@
;; InfoDock under a window system
(require 'id-menubars)
(id-menubar-set 'hyrolo-mode 'id-menubar-hyrolo))
- ((or hyperb:emacs-p (featurep 'xemacs))
+ (t
;; Emacs or XEmacs under a window system
(add-hook 'hyrolo-mode-hook #'hyrolo-menubar-menu)))
diff --git a/hyrolo.el b/hyrolo.el
index d716a33..741fdd8 100644
--- a/hyrolo.el
+++ b/hyrolo.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 7-Jun-89 at 22:08:29
;;
-;; Copyright (C) 1991-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1991-2019 Free Software Foundation, Inc.
;; See the "HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -112,16 +112,10 @@ A hyrolo-file consists of:
:group 'hyperbole-rolo)
(unless hyrolo-highlight-face
(setq hyrolo-highlight-face
- (cond (hyperb:emacs-p
- (if (fboundp 'defface)
- (defface hyrolo-highlight-face nil
- "*Face used to highlight rolo search matches."
- :group 'hyperbole-rolo)))
- (t (if (fboundp 'defface)
- (face-name
- (defface hyrolo-highlight-face nil
- "*Face used to highlight rolo search matches."
- :group 'hyperbole-rolo))))))
+ (if (fboundp 'defface)
+ (defface hyrolo-highlight-face nil
+ "*Face used to highlight rolo search matches."
+ :group 'hyperbole-rolo)))
(if (fboundp 'hproperty:set-item-highlight)
(hproperty:set-item-highlight)))
@@ -1425,11 +1419,7 @@ Returns point where matching entry begins or nil if not
found."
(defun hyrolo-to-buffer (buffer &optional other-window-flag frame)
"Pop to BUFFER."
- (cond ((featurep 'xemacs)
- (pop-to-buffer buffer other-window-flag
- ;; default is to use selected frame
- (or frame (selected-frame))))
- (t (pop-to-buffer buffer other-window-flag))))
+ (pop-to-buffer buffer other-window-flag))
(defun hyrolo-to-entry-end (&optional include-sub-entries curr-entry-level)
"Moves point to the end of the whole entry that point is within if optional
INCLUDE-SUB-ENTRIES is non-nil.
diff --git a/hywconfig.el b/hywconfig.el
index d11318f..983a6f3 100644
--- a/hywconfig.el
+++ b/hywconfig.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 15-Mar-89
;;
-;; Copyright (C) 1989-2017 Free Software Foundation, Inc.
+;; Copyright (C) 1989-2019 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -51,12 +51,6 @@
(require 'ring)
(require 'set)
-;; XEmacs compatibility
-(or (fboundp 'frame-parameter)
- (fset 'frame-parameter 'frame-property))
-(or (fboundp 'set-frame-parameter)
- (fset 'set-frame-parameter 'set-frame-property))
-
;;; ************************************************************************
;;; Public variables
;;; ************************************************************************
diff --git a/kotl/kfill.el b/kotl/kfill.el
index 0ceadb2..d1be8ea 100644
--- a/kotl/kfill.el
+++ b/kotl/kfill.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 23-Jan-94
;;
-;; Copyright (C) 1994-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1994-2019 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -14,23 +14,12 @@
;;; Code:
-;; Quiet byte compiler warnings for this free variable.
-(eval-when-compile
- (defvar filladapt-function-table nil))
-
-;; The above formerly looked like this, but the filladapt package is old
-;; and unmaintained and causes improper paragraph filling for
-;; kotl-mode under modern GNU Emacs versions. -- RSW 12/17/2017
-;; (eval-when-compile
-;; (unless (require 'filladapt nil t)
-;; (defvar filladapt-function-table nil)))
-
;;; ************************************************************************
;;; Public variables
;;; ************************************************************************
(defvar kfill:function-table
- (if (featurep 'filladapt)
+ (if (boundp 'filladapt-function-table)
filladapt-function-table
(list (cons 'fill-paragraph (symbol-function 'fill-paragraph))))
"Table containing the old function definitions that kfill overrides.")
diff --git a/kotl/kmenu.el b/kotl/kmenu.el
index 918fc77..99194c1 100644
--- a/kotl/kmenu.el
+++ b/kotl/kmenu.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 28-Mar-94 at 11:22:09
;;
-;; Copyright (C) 1994-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1994-2019 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -193,16 +193,10 @@
"Add a Koutline menu to the menubar for each koutline buffer."
(cond ((fboundp 'popup-mode-menu)
(setq mode-popup-menu id-popup-kotl-menu))
- ((featurep 'xemacs)
- (define-key kotl-mode-map 'button3 'kotl-popup-menu))
- (t ;; hyperb:emacs-p
+ (t
(define-key kotl-mode-map [C-down-mouse-3] 'kotl-popup-menu)
(define-key kotl-mode-map [C-mouse-3] nil)))
- (unless (cond (hyperb:emacs-p
- (global-key-binding [menu-bar Koutline]))
- ((boundp 'current-menubar)
- (car (find-menu-item current-menubar '("Koutline")))))
- (if (featurep 'xemacs) (set-buffer-menubar (copy-sequence
current-menubar)))
+ (unless (global-key-binding [menu-bar Koutline])
(easy-menu-define nil kotl-mode-map "Koutline Menubar Menu"
id-popup-kotl-menu)
;; Force a menu-bar update.
(force-mode-line-update)))
@@ -218,7 +212,7 @@
;; InfoDock under a window system
(require 'id-menubars)
(id-menubar-set 'kotl-mode 'id-menubar-kotl))
- ((or hyperb:emacs-p (featurep 'xemacs))
+ (t
;; Emacs or XEmacs under a window system
(add-hook 'kotl-mode-hook #'kotl-menubar-menu)))
diff --git a/kotl/kotl-autoloads.el b/kotl/kotl-autoloads.el
index bf3492d..daf4bc0 100644
--- a/kotl/kotl-autoloads.el
+++ b/kotl/kotl-autoloads.el
@@ -1,7 +1,5 @@
;;; kotl-autoloads.el --- automatically extracted autoloads
;;
-;; Copyright (C) 2017 Free Software Foundation, Inc.
-;;
;;; Code:
@@ -22,7 +20,7 @@ STILL TODO:
;;;***
-;;;### (autoloads nil "kfile" "kfile.el" (22415 50714 78447 943000))
+;;;### (autoloads nil "kfile" "kfile.el" (22412 20800 0 0))
;;; Generated autoloads from kfile.el
(autoload 'kfile:find "kfile" "\
diff --git a/kotl/kotl-mode.el b/kotl/kotl-mode.el
index ffb4908..427d76d 100644
--- a/kotl/kotl-mode.el
+++ b/kotl/kotl-mode.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 6/30/93
;;
-;; Copyright (C) 1993-2017 Free Software Foundation, Inc.
+;; Copyright (C) 1993-2019 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -219,10 +219,7 @@ Direction is determined from the value of
`delete-key-deletes-forward' or
whether the Backspace key exists on the keyboard. If there is no Backspace
key, the delete key should always delete backward one character."
(interactive "*p")
- (if hyperb:emacs-p
- (kotl-mode:delete-char (if normal-erase-is-backspace arg (- arg)) nil)
- ;; XEmacs
- (kotl-mode:delete-char (if (delete-forward-p) arg (- arg)) nil)))
+ (kotl-mode:delete-char (if normal-erase-is-backspace arg (- arg)) nil))
(defun kotl-mode:center-line ()
"Center the line point is on, within the width specified by `fill-column'.
@@ -1262,20 +1259,6 @@ doc string for `insert-for-yank-1', which see."
(defalias 'kotl-mode:scroll-down-command 'kotl-mode:scroll-down)
(defalias 'kotl-mode:scroll-up-command 'kotl-mode:scroll-up)
-;;; Cursor and keypad key functions aliases for XEmacs.
-(if (featurep 'xemacs)
- (progn
- (defalias 'kotl-mode:backward-char-command 'kotl-mode:backward-char)
- (defalias 'kotl-mode:forward-char-command 'kotl-mode:forward-char)
- (defalias 'kotl-mode:fkey-backward-char 'kotl-mode:backward-char)
- (defalias 'kotl-mode:fkey-forward-char 'kotl-mode:forward-char)
- (defalias 'kotl-mode:fkey-next-line 'kotl-mode:next-line)
- (defalias 'kotl-mode:fkey-previous-line 'kotl-mode:previous-line)
- (defalias 'kotl-mode:deprecated-scroll-down 'kotl-mode:scroll-down)
- (defalias 'kotl-mode:deprecated-scroll-up 'kotl-mode:scroll-up)
- (defalias 'kotl-mode:deprecated-bob 'kotl-mode:beginning-of-buffer)
- (defalias 'kotl-mode:deprecated-eob 'kotl-mode:end-of-buffer)))
-
(defun kotl-mode:back-to-indentation ()
"Move point to the first non-read-only non-whitespace character on this
line."
(interactive)
diff --git a/kotl/kproperty.el b/kotl/kproperty.el
index 4ae6463..e1bec2d 100644
--- a/kotl/kproperty.el
+++ b/kotl/kproperty.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 7/27/93
;;
-;; Copyright (C) 1993-2016 Free Software Foundation, Inc.
+;; Copyright (C) 1993-2019 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -19,7 +19,7 @@
;; Ensures kotl/ is in load-path.
(require 'hyperbole)
-(load (if hyperb:emacs-p "kprop-em" "kprop-xe"))
+(load "kprop-em")
(provide 'kproperty)
diff --git a/kotl/kview.el b/kotl/kview.el
index d5e7164..47b0592 100644
--- a/kotl/kview.el
+++ b/kotl/kview.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 6/30/93
;;
-;; Copyright (C) 1993-2017 Free Software Foundation, Inc.
+;; Copyright (C) 1993-2019 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -673,43 +673,25 @@ the lines displayed, since it has hidden branches."
(save-excursion (and (kcell-view:next nil label-sep-len)
(kcell-view:invisible-p (point) label-sep-len))))
-(cond (hyperb:emacs-p
- (defun kview:goto-cell-id (id-string)
- "Move point to start of cell with idstamp ID-STRING and return t, else
nil."
- (let ((cell-id (string-to-number id-string))
- (opoint (point))
- pos kcell)
- (goto-char (point-min))
- (while (and (setq pos (kproperty:next-single-change (point) 'kcell))
- (goto-char pos)
- (or (null (setq kcell (kproperty:get pos 'kcell)))
- (/= (kcell:idstamp kcell) cell-id))
- ;; Skip to the end of this kcell property
- (setq pos (kproperty:next-single-change (point) 'kcell))
- (goto-char pos)))
- (if pos
- (progn
- (forward-char (kview:label-separator-length kview))
- t)
- (goto-char opoint)
- nil))))
- ;;
- ;; XEmacs
- (t (defun kview:goto-cell-id (id-string)
- "Move point to start of cell with idstamp ID-STRING and return t,
else nil."
- (let ((cell-id (string-to-number id-string))
- label-end kcell)
- (setq label-end
- (map-extents
- (lambda (extent unused)
- (setq kcell (extent-property extent 'kcell))
- (and kcell (= (kcell:idstamp kcell) cell-id)
- (extent-end-position extent)))
- nil nil nil nil nil 'kcell))
- (if (null label-end)
- nil
- (goto-char label-end)
- t)))))
+(defun kview:goto-cell-id (id-string)
+ "Move point to start of cell with idstamp ID-STRING and return t, else nil."
+ (let ((cell-id (string-to-number id-string))
+ (opoint (point))
+ pos kcell)
+ (goto-char (point-min))
+ (while (and (setq pos (kproperty:next-single-change (point) 'kcell))
+ (goto-char pos)
+ (or (null (setq kcell (kproperty:get pos 'kcell)))
+ (/= (kcell:idstamp kcell) cell-id))
+ ;; Skip to the end of this kcell property
+ (setq pos (kproperty:next-single-change (point) 'kcell))
+ (goto-char pos)))
+ (if pos
+ (progn
+ (forward-char (kview:label-separator-length kview))
+ t)
+ (goto-char opoint)
+ nil)))
(defun kview:id-counter (kview)
"Return the highest current idstamp (an integer) used by KVIEW."
diff --git a/kotl/kvspec.el b/kotl/kvspec.el
index 98dfc5f..b68cb7c 100644
--- a/kotl/kvspec.el
+++ b/kotl/kvspec.el
@@ -4,7 +4,7 @@
;;
;; Orig-Date: 21-Oct-95 at 15:17:07
;;
-;; Copyright (C) 1995-2017 Free Software Foundation, Inc.
+;; Copyright (C) 1995-2019 Free Software Foundation, Inc.
;; See the "../HY-COPY" file for license information.
;;
;; This file is part of GNU Hyperbole.
@@ -287,19 +287,7 @@ If NUM is greater than the number of lines available, the
cell remains fully exp
(memq 'modeline-buffer-identification
mode-line-format))))
(if elt
- (setcdr elt (cons 'kvspec:string (cdr elt)))
- ;;
- ;; XEmacs 19.14 introduced extents into the modeline that we
- ;; must work around. Assume any XEmacs is at least that new.
- (if (featurep 'xemacs)
- (let ((mf modeline-format)
- elt)
- (while mf
- (setq elt (car mf))
- (if (and (consp elt) (eq (cdr elt)
'modeline-buffer-identification))
- (progn (setcdr mf (cons 'kvspec:string (cdr mf)))
- (setq mf nil)))
- (setq mf (cdr mf)))))))))
+ (setcdr elt (cons 'kvspec:string (cdr elt)))))))
(defun kvspec:update-view ()
"Update view according to current setting of local `kvspec:current'
variable."
- [elpa] scratch/hyperbole-lexbind 91e8a73 02/20: Add texinfo pathname section references; improve internal image links, (continued)
- [elpa] scratch/hyperbole-lexbind 91e8a73 02/20: Add texinfo pathname section references; improve internal image links, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind e1a95cc 04/20: Improve paragraph filling to match newer Emacs versions, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind 60d51ad 12/20: Remove last references to XEmscs and xterm used under Emacs 18, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind af55195 05/20: Make Action Key handle bi-directional jumping for Org mode radio target and internal links, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind 36e4724 01/20: 7.0.3a bug fixes; add link-to-ibut, link-to-gbut, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind e647502 18/20: BSD zgrep support for Hyperbole grep command, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind 0829631 13/20: Fix small logic errors in new e/g/ilink functions, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind b128464 06/20: Update Changes and add 7.0.3 release message to HY-ANNOUNCE, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind 332ef33 19/20: V7.0.3b test release: Basic DEMO updates, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind c547ad4 10/20: Merge branch '7.0.3a' into prepare-pr-for-merging, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind 131295e 07/20: Remove conditionals on xemacs,
Stefan Monnier <=
- [elpa] scratch/hyperbole-lexbind ff0f602 11/20: Merge pull request #11 from matsl/prepare-pr-for-merging, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind da8f3fa 09/20: Add labeled implicit buttons, in-buffer links to g/e/ibuts, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind 9ad2bf0 08/20: Remove all featurep checks on xemacs and emacs, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind 21c7432 15/20: Most changes for 7.0.3a release, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind f38ee21 14/20: 7.0.3a changes for creating and modifying ibut labels, small fixes, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind 6e555e7 20/20: Merge remote-tracking branch 'hyperbole/master' into externals/hyperbole, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind d56c8c0 16/20: Most changes for 7.0.3a release, Stefan Monnier, 2019/08/14
- [elpa] scratch/hyperbole-lexbind 64c3563 17/20: Expanded Org mode doc; introduce 'key series' term in Glossary, Stefan Monnier, 2019/08/14