[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/trunk r102916: allout.el: Summary - migrate
From: |
Ken Manheimer |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/trunk r102916: allout.el: Summary - migrate to defining allout mode using |
Date: |
Thu, 20 Jan 2011 13:13:30 -0500 |
User-agent: |
Bazaar (2.0.3) |
------------------------------------------------------------
revno: 102916
committer: Ken Manheimer <address@hidden>
branch nick: trunk
timestamp: Thu 2011-01-20 13:13:30 -0500
message:
allout.el: Summary - migrate to defining allout mode using
define-minor-mode instead of defun. Significantly clean-up internal keymap
provisions, refactoring a bit and removing a lot of accumulated cruft.
allout-mode-map is now a keymap by virtue of being an defalias to
allout-mode-map-value, which contains the actual keymap structure.
(allout-mode): Use define-minor-mode rather than defun. Remove
now-unnecessary minor-mode setup activities from the body. Specify :keymap
as allout-mode-map so the minor-mode-map-alist entry will be
'(allout-mode . allout-mode-map) - see allout-mode-map-value, below.
Adjust docstring to track changes.
(allout-minor-mode): Remove this defalias, now that we're using
define-minor-mode.
(allout-mode-map): Set value to be 'allout-mode-map. The actual keymap
is allout-mode-map-value, via defalias.
(allout-mode-map-value): The variable holding the actual mode keymap
structure, by virtue of defalias from allout-mode-map.
(allout-compose-and-institute-keymap): Renamed from allout-bind-keys, and
including the binding-composition functionality of the former
produce-allout-mode-map and allout-setup-mode-map.
(allout-institute-keymap): Take over the "setup" part of the former
allout-setup-mode-map. Reassign allout-mode-map-value value and update the
defalias.
(allout-command-prefix) (allout-prefixed-keybindings)
(allout-unprefixed-keybindings): Use allout-compose-and-institute-keymap to
process the bindings.
(allout-unprefixed-keybindings): Remove extraneous '?' question marks.
(allout-prefixed-keybindings): Elide binding to (prefixed) \C-h - user can
customize if they want to use that binding. Bind allout-copy-topic-as-kill
to (prefixed) \M-k. Bind allout-up-current-level to (prefixed) \C-u. (I
think i mistakenly elided that, previously, instead of the one for \C-h.)
(allout-hotspot-key-handler): Remove attempt to resolve the key through the
literal key-string lookup on allout-keybindings-list. That probably hasn't
worked for a Long Time, and removal of allout-keybindings-list further
simplifies the keybindings situation.
(allout-pre-command-business): Use allout-mode-map-value instead of
allout-mode-map.
(allout-preempt-trailing-ctrl-h): Remove. The user can customize the
bindings if they want to use a keybinding having a trailing \C-h. No
deprecation needed since this feature was never in a release.
(allout-keybindings-list): Remove. It's not been useful for a while. (See
allout-hotspot-key-handler changes, above.)
(produce-allout-mode-map): Remove. Consolidate into
allout-compose-and-institute-keymap.
(allout-mode-map-adjustments): Remove. No longer necessary with removal of
allout-preempt-trailing-ctrl-h.
(allout-setup-mode-map): Remove. Consolidate into
allout-compose-and-institute-keymap and allout-institute-keymap.
modified:
lisp/ChangeLog
lisp/allout.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog 2011-01-20 07:17:22 +0000
+++ b/lisp/ChangeLog 2011-01-20 18:13:30 +0000
@@ -1,3 +1,61 @@
+2011-01-20 Ken Manheimer <address@hidden>
+
+ * allout.el: Summary - migrate to defining allout mode using
+ define-minor-mode instead of defun. Significantly clean-up
+ internal keymap provisions, refactoring and, in the process,
+ removing a lot of accumulated cruft.
+
+ allout-mode-map is now a keymap by virtue of being a defalias to
+ allout-mode-map-value, which contains the actual keymap structure.
+
+ (allout-mode): Use define-minor-mode rather than defun. Remove
+ now-unnecessary minor-mode setup activities from the body.
+ Specify :keymap as allout-mode-map so the minor-mode-map-alist
+ entry will be '(allout-mode . allout-mode-map) - see
+ allout-mode-map-value, below. Adjust docstring to track changes.
+ (allout-minor-mode): Remove this defalias, now that we're using
+ define-minor-mode.
+ (allout-mode-map): Set value to be 'allout-mode-map. The actual
+ keymap is allout-mode-map-value, via defalias.
+ (allout-mode-map-value): The variable holding the actual mode
+ keymap structure, by virtue of defalias from allout-mode-map.
+ (allout-compose-and-institute-keymap): Renamed from
+ allout-bind-keys, and including the binding-composition
+ functionality of the former produce-allout-mode-map and
+ allout-setup-mode-map.
+ (allout-institute-keymap): Take over the "setup" part of the former
+ allout-setup-mode-map. Reassign allout-mode-map-value value and
+ update the defalias.
+ (allout-command-prefix) (allout-prefixed-keybindings)
+ (allout-unprefixed-keybindings): Use
+ allout-compose-and-institute-keymap to process the bindings.
+ (allout-unprefixed-keybindings): Remove extraneous '?' question
+ marks.
+ (allout-prefixed-keybindings): Elide binding to (prefixed) \C-h -
+ user can customize if they want to use that binding. Bind
+ allout-copy-topic-as-kill to (prefixed) \M-k. Bind
+ allout-up-current-level to (prefixed) \C-u. (I think i mistakenly
+ elided that, previously, instead of the one for \C-h.)
+ (allout-hotspot-key-handler): Remove attempt to resolve the key
+ through the literal key-string lookup on allout-keybindings-list.
+ That probably hasn't worked for a Long Time, and removal of
+ allout-keybindings-list further simplifies the keybindings
+ situation.
+ (allout-pre-command-business): Use allout-mode-map-value instead
+ of allout-mode-map.
+ (allout-preempt-trailing-ctrl-h): Remove. The user can customize
+ the bindings if they want to use a keybinding having a trailing
+ \C-h. No deprecation needed since this feature was never in a
+ release.
+ (allout-keybindings-list): Remove. It's not been useful for a
+ while. (See allout-hotspot-key-handler changes, above.)
+ (produce-allout-mode-map): Remove. Consolidate into
+ allout-compose-and-institute-keymap.
+ (allout-mode-map-adjustments): Remove. No longer necessary with
+ removal of allout-preempt-trailing-ctrl-h.
+ (allout-setup-mode-map): Remove. Consolidate into
+ allout-compose-and-institute-keymap and allout-institute-keymap.
+
2011-01-20 Glenn Morris <address@hidden>
* vc/vc-svn.el (vc-svn-after-dir-status): Tweak previous change.
=== modified file 'lisp/allout.el'
--- a/lisp/allout.el 2011-01-16 02:21:30 +0000
+++ b/lisp/allout.el 2011-01-20 18:13:30 +0000
@@ -108,23 +108,39 @@
;;;_ + Layout, Mode, and Topic Header Configuration
(defvar allout-command-prefix) ; defined below
-(defvar allout-mode-map)
;;;_ > allout-keybindings incidentals:
-;;;_ > allout-bind-keys &optional varname value
-(defun allout-bind-keys (&optional varname value)
- "Rebuild the `allout-mode-map' according to the keybinding specs.
-
-Useful standalone, to init the map, or in customizing the
+;;;_ : internal key binding stuff - in this section for load-order.
+;;;_ = allout-mode-map
+(defvar allout-mode-map 'allout-mode-map
+ "Keybindings place-holder for (allout) outline minor mode.
+
+Do NOT set the value of this variable. Instead, customize
+`allout-command-prefix', `allout-prefixed-keybindings', and
+`allout-unprefixed-keybindings'.")
+;;;_ = allout-mode-map-value
+(defvar allout-mode-map-value nil
+ "Keymap for allout outline minor mode.
+
+Do NOT set the value of this variable. Instead, customize
+`allout-command-prefix', `allout-prefixed-keybindings', and
+`allout-unprefixed-keybindings'.")
+;;;_ = make allout-mode-map-value an alias for allout-mode-map:
+;; this needs to be revised when the value is changed, sigh.
+(defalias 'allout-mode-map allout-mode-map-value)
+;;;_ > allout-compose-and-institute-keymap (&optional varname value)
+(defun allout-compose-and-institute-keymap (&optional varname value)
+ "Create the allout keymap according to the keybinding specs, and set it.
+
+Useful standalone or to effect customizations of the
respective allout-mode keybinding variables, `allout-command-prefix',
`allout-prefixed-keybindings', and `allout-unprefixed-keybindings'"
;; Set the customization variable, if any:
(when varname
(set-default varname value))
- (let ((map (make-sparse-keymap))
- key)
+ (let ((map (make-sparse-keymap)))
(when (boundp 'allout-prefixed-keybindings)
- ;; Be tolerant of the moments when the variables are first being defined.
+ ;; tolerate first definitions of the variables:
(dolist (entry allout-prefixed-keybindings)
(define-key map
;; XXX vector vs non-vector key descriptions?
@@ -134,9 +150,33 @@
(when (boundp 'allout-unprefixed-keybindings)
(dolist (entry allout-unprefixed-keybindings)
(define-key map (car (read-from-string (car entry))) (cadr entry))))
- (setq allout-mode-map map)
- map
- ))
+ (substitute-key-definition 'beginning-of-line 'allout-beginning-of-line
+ map global-map)
+ (substitute-key-definition 'move-beginning-of-line
'allout-beginning-of-line
+ map global-map)
+ (substitute-key-definition 'end-of-line 'allout-end-of-line
+ map global-map)
+ (substitute-key-definition 'move-end-of-line 'allout-end-of-line
+ map global-map)
+ (allout-institute-keymap map)))
+;;;_ > allout-institute-keymap (map)
+(defun allout-institute-keymap (map)
+ "Associate allout-mode bindings with allout as a minor mode."
+ ;; Architecture:
+ ;; allout-mode-map var is a keymap by virtue of being a defalias for
+ ;; allout-mode-map-value, which has the actual keymap value.
+ ;; allout-mode-map's symbol value is just 'allout-mode-map, so it can be
+ ;; used in minor-mode-map-alist to indirect to the actual
+ ;; allout-mode-map-var value, which can be adjusted and reassigned.
+
+ (setq allout-mode-map-value map)
+ ;; The defalias reexecution is necessary when allout-mode-map-value is
+ ;; changing from nil, and it doesn't hurt to do it every time, so:
+ (defalias 'allout-mode-map allout-mode-map-value))
+;;;_ * intialize the mode map:
+;; ensure that allout-mode-map has some setting even if allout-mode hasn't
+;; been invoked:
+(allout-compose-and-institute-keymap)
;;;_ = allout-command-prefix
(defcustom allout-command-prefix "\C-c "
"Key sequence to be used as prefix for outline mode command key bindings.
@@ -145,7 +185,7 @@
willing to let allout use a bunch of \C-c keybindings."
:type 'string
:group 'allout-keybindings
- :set 'allout-bind-keys)
+ :set 'allout-compose-and-institute-keymap)
;;;_ = allout-keybindings-binding
(define-widget 'allout-keybindings-binding 'lazy
"Structure of allout keybindings customization items."
@@ -157,7 +197,7 @@
(defcustom allout-prefixed-keybindings
'(("[(control ?n)]" allout-next-visible-heading)
("[(control ?p)]" allout-previous-visible-heading)
-;; ("[(control ?u)]" allout-up-current-level)
+ ("[(control ?u)]" allout-up-current-level)
("[(control ?f)]" allout-forward-current-level)
("[(control ?b)]" allout-backward-current-level)
("[(control ?a)]" allout-beginning-of-current-entry)
@@ -166,7 +206,8 @@
("[(control ?i)]" allout-show-children)
("[(control ?s)]" allout-show-current-subtree)
("[(control ?t)]" allout-toggle-current-subtree-exposure)
- ("[(control ?h)]" allout-hide-current-subtree)
+;; Let user customize if they want to preempt describe-prefix-bindings ^h use.
+;; ("[(control ?h)]" allout-hide-current-subtree)
("[?h]" allout-hide-current-subtree)
("[(control ?o)]" allout-show-current-entry)
("[?!]" allout-show-all)
@@ -181,7 +222,7 @@
("[?*]" allout-rebullet-current-heading)
("[?']" allout-number-siblings)
("[(control ?k)]" allout-kill-topic)
- ("[??]" allout-copy-topic-as-kill)
+ ("[(meta ?k)]" allout-copy-topic-as-kill)
("address@hidden" allout-resolve-xref)
("[?=?c]" allout-copy-exposed-to-buffer)
("[?=?i]" allout-indented-exposed-to-buffer)
@@ -205,14 +246,14 @@
prevails."
:type 'allout-keybindings-binding
:group 'allout-keybindings
- :set 'allout-bind-keys
+ :set 'allout-compose-and-institute-keymap
)
;;;_ = allout-unprefixed-keybindings
(defcustom allout-unprefixed-keybindings
'(("[(control ?k)]" allout-kill-line)
- ("[??(meta ?k)]" allout-copy-line-as-kill)
+ ("[(meta ?k)]" allout-copy-line-as-kill)
("[(control ?y)]" allout-yank)
- ("[??(meta ?y)]" allout-yank-pop)
+ ("[(meta ?y)]" allout-yank-pop)
)
"Allout-mode functions bound to keys without any added prefix.
@@ -228,68 +269,9 @@
See the existing keys for examples."
:type 'allout-keybindings-binding
:group 'allout-keybindings
- :set 'allout-bind-keys
+ :set 'allout-compose-and-institute-keymap
)
-;;;_ = allout-preempt-trailing-ctrl-h
-(defcustom allout-preempt-trailing-ctrl-h nil
- "Use <prefix>-\C-h, instead of leaving it for describe-prefix-bindings?"
- :type 'boolean
- :group 'allout)
-
-;;;_ = allout-keybindings-list
-;;; You have to reactivate allout-mode to change this var's current setting.
-(defvar allout-keybindings-list ()
- "*List of `allout-mode' key / function bindings, for `allout-mode-map'.
-String or vector key will be prefaced with `allout-command-prefix',
-unless optional third, non-nil element is present.")
-(setq allout-keybindings-list
- '(
- ; Motion commands:
- ("\C-n" allout-next-visible-heading)
- ("\C-p" allout-previous-visible-heading)
- ("\C-u" allout-up-current-level)
- ("\C-f" allout-forward-current-level)
- ("\C-b" allout-backward-current-level)
- ("\C-a" allout-beginning-of-current-entry)
- ("\C-e" allout-end-of-entry)
- ; Exposure commands:
- ([(control i)] allout-show-children) ; xemacs translates "\C-i" to tab
- ("\C-i" allout-show-children) ; but we still need this for hotspot
- ("\C-s" allout-show-current-subtree)
- ;; binding to \C-h is included if allout-preempt-trailing-ctrl-h,
- ;; so user controls whether or not to preempt the conventional ^H
- ;; binding to help-command.
- ("\C-h" allout-hide-current-subtree)
- ("\C-t" allout-toggle-current-subtree-exposure)
- ("h" allout-hide-current-subtree)
- ("\C-o" allout-show-current-entry)
- ("!" allout-show-all)
- ("x" allout-toggle-current-subtree-encryption)
- ; Alteration commands:
- (" " allout-open-sibtopic)
- ("." allout-open-subtopic)
- ("," allout-open-supertopic)
- ("'" allout-shift-in)
- (">" allout-shift-in)
- ("<" allout-shift-out)
- ("\C-m" allout-rebullet-topic)
- ("*" allout-rebullet-current-heading)
- ("#" allout-number-siblings)
- ("\C-k" allout-kill-line t)
- ([?\M-k] allout-copy-line-as-kill t)
- ("\C-y" allout-yank t)
- ([?\M-y] allout-yank-pop t)
- ("\C-k" allout-kill-topic)
- ([?\M-k] allout-copy-topic-as-kill)
- ; Miscellaneous commands:
- ;([?\C-\ ] allout-mark-topic)
- ("@" allout-resolve-xref)
- ("=c" allout-copy-exposed-to-buffer)
- ("=i" allout-indented-exposed-to-buffer)
- ("=t" allout-latexify-exposed)
- ("=p" allout-flatten-exposed-to-buffer)))
-
;;;_ = allout-auto-activation
(defcustom allout-auto-activation nil
"Regulates auto-activation modality of allout outlines -- see `allout-init'.
@@ -1239,36 +1221,6 @@
"[^" allout-primary-bullet "]"))
"\\)"
))))
-;;;_ : Key bindings
-;;;_ = allout-mode-map
-(defvar allout-mode-map nil "Keybindings for (allout) outline minor mode.")
-;;;_ > produce-allout-mode-map (keymap-alist &optional base-map)
-(defun produce-allout-mode-map (keymap-list &optional base-map)
- "Produce keymap for use as `allout-mode-map', from KEYMAP-LIST.
-
-Built on top of optional BASE-MAP, or empty sparse map if none specified.
-See doc string for `allout-keybindings-list' for format of binding list."
- (let ((map (or base-map (make-sparse-keymap)))
- (pref (list allout-command-prefix)))
- (mapc (function
- (lambda (cell)
- (let ((add-pref (null (cdr (cdr cell))))
- (key-suff (list (car cell))))
- (apply 'define-key
- (list map
- (apply 'vconcat (if add-pref
- (append pref key-suff)
- key-suff))
- (car (cdr cell)))))))
- keymap-list)
- map))
-;;;_ > allout-mode-map-adjustments (base-map)
-(defun allout-mode-map-adjustments (base-map)
- "Do conditional additions to specified base-map, like inclusion of \\C-h."
- (if allout-preempt-trailing-ctrl-h
- (cons '("\C-h" allout-hide-current-subtree) base-map)
- base-map)
- )
;;;_ : Menu bar
(defvar allout-mode-exposure-menu)
(defvar allout-mode-editing-menu)
@@ -1277,7 +1229,7 @@
(defun produce-allout-mode-menubar-entries ()
(require 'easymenu)
(easy-menu-define allout-mode-exposure-menu
- allout-mode-map
+ allout-mode-map-value
"Allout outline exposure menu."
'("Exposure"
["Show Entry" allout-show-current-entry t]
@@ -1288,7 +1240,7 @@
"----"
["Show All" allout-show-all t]))
(easy-menu-define allout-mode-editing-menu
- allout-mode-map
+ allout-mode-map-value
"Allout outline editing menu."
'("Headings"
["Open Sibling" allout-open-sibtopic t]
@@ -1305,7 +1257,7 @@
allout-toggle-current-subtree-encryption
(> (allout-current-depth) 1)]))
(easy-menu-define allout-mode-navigation-menu
- allout-mode-map
+ allout-mode-map-value
"Allout outline navigation menu."
'("Navigation"
["Next Visible Heading" allout-next-visible-heading t]
@@ -1322,7 +1274,7 @@
["End of Entry" allout-end-of-entry t]
["End of Subtree" allout-end-of-current-subtree t]))
(easy-menu-define allout-mode-misc-menu
- allout-mode-map
+ allout-mode-map-value
"Allout outlines miscellaneous bindings."
'("Misc"
["Version" allout-version t]
@@ -1776,19 +1728,16 @@
'(allout-overlay-insert-in-front-handler)))
(put 'allout-exposure-category 'modification-hooks
'(allout-overlay-interior-modification-handler)))
-;;;_ > allout-mode (&optional force)
+;;;_ > define-minor-mode allout-mode
;;;_ : Defun:
;;;###autoload
-(defun allout-mode (&optional force)
+(define-minor-mode allout-mode
;;;_ . Doc string:
"Toggle minor mode for controlling exposure and editing of text outlines.
-\\<allout-mode-map>
+\\<allout-mode-map-value>
Allout outline mode always runs as a minor mode.
-Optional FORCE non-nil, or command with no universal argument,
-means force activation.
-
Allout outline mode provides extensive outline oriented
formatting and manipulation. It enables structural editing of
outlines, as well as navigation and exposure. It also is
@@ -1816,14 +1765,16 @@
instructions on priming your emacs session for automatic
activation of `allout-mode'.
-The bindings are dictated by the customizable `allout-keybindings-list'
-variable. We recommend customizing `allout-command-prefix' to use just
-`\\C-c' as the command prefix, if the allout bindings don't conflict with
-any personal bindings you have on \\C-c. In any case, outline structure
-navigation and authoring is simplified by positioning the cursor on an
-item's bullet character, the \"hot-spot\" -- then you can invoke allout
-commands with just the un-prefixed, un-control-shifted command letters.
-This is described further in the HOT-SPOT Operation section.
+The bindings are those listed in `allout-prefixed-keybindings'
+and `allout-unprefixed-keybindings'. We recommend customizing
+`allout-command-prefix' to use just `\\C-c' as the command
+prefix, if the allout bindings don't conflict with any personal
+bindings you have on \\C-c. In any case, outline structure
+navigation and authoring is simplified by positioning the cursor
+on an item's bullet character, the \"hot-spot\" -- then you can
+invoke allout commands with just the un-prefixed,
+un-control-shifted command letters. This is described further in
+the HOT-SPOT Operation section.
Exposure Control:
----------------
@@ -2043,7 +1994,8 @@
CLOSED: A TOPIC whose immediate OFFSPRING and body-text is CONCEALED.
OPEN: A TOPIC that is not CLOSED, though its OFFSPRING or BODY may be."
;;;_ . Code
- (interactive "P")
+ :lighter " Allout"
+ :keymap 'allout-mode-map
(let ((write-file-hook-var-name (cond ((boundp 'write-file-functions)
'write-file-functions)
@@ -2054,7 +2006,7 @@
allout-layout
allout-default-layout)))
- (if (and (allout-mode-p) (not force))
+ (if (not (allout-mode-p))
(progn
;; Deactivation:
@@ -2069,18 +2021,14 @@
(remove-hook 'post-command-hook 'allout-post-command-business t)
(remove-hook 'before-change-functions 'allout-before-change-handler
t)
(remove-hook 'isearch-mode-end-hook 'allout-isearch-end-handler t)
- (remove-hook write-file-hook-var-name 'allout-write-file-hook-handler
- t)
+ (remove-hook write-file-hook-var-name
+ 'allout-write-file-hook-handler t)
(remove-hook 'auto-save-hook 'allout-auto-save-hook-handler t)
(remove-overlays (point-min) (point-max)
- 'category 'allout-exposure-category)
-
- (setq allout-mode nil)
- (run-hooks 'allout-mode-deactivate-hook)
- (run-hooks 'allout-mode-off-hook))
-
- ;; Activation:
+ 'category 'allout-exposure-category))
+
+ ;; Activating:
(if allout-old-style-prefixes
;; Inhibit all the fancy formatting:
(allout-add-resumptions '(allout-primary-bullet "*")))
@@ -2098,17 +2046,9 @@
allout-bob-regexp
extend))
- ;; Produce map from current version of allout-keybindings-list:
- (allout-setup-mode-map)
+ (allout-compose-and-institute-keymap)
(produce-allout-mode-menubar-entries)
- ;; Include on minor-mode-map-alist, if not already there:
- (if (not (member '(allout-mode . allout-mode-map)
- minor-mode-map-alist))
- (setq minor-mode-map-alist
- (cons '(allout-mode . allout-mode-map)
- minor-mode-map-alist)))
-
(add-to-invisibility-spec '(allout . t))
(allout-add-resumptions '(line-move-ignore-invisible t))
@@ -2142,13 +2082,7 @@
;; allout-auto-fill will use the stashed values and so forth.
(allout-add-resumptions '(auto-fill-function allout-auto-fill)))
- (or (assq 'allout-mode minor-mode-alist)
- (setq minor-mode-alist
- (cons '(allout-mode " Allout") minor-mode-alist)))
-
(allout-setup-menubar)
- (setq allout-mode t)
- (run-hooks 'allout-mode-hook)
;; Do auto layout if warranted:
(when (and allout-layout
@@ -2182,36 +2116,6 @@
) ; define-minor-mode
;;;_ > allout-minor-mode alias
(defalias 'allout-minor-mode 'allout-mode)
-;;;_ > allout-setup-mode-map ())
-(defun allout-setup-mode-map ()
- "Establish allout-mode bindings."
- (setq-default allout-mode-map
- (produce-allout-mode-map
- (allout-mode-map-adjustments allout-keybindings-list)))
- (setq allout-mode-map
- (produce-allout-mode-map
- (allout-mode-map-adjustments allout-keybindings-list)))
- (substitute-key-definition 'beginning-of-line
- 'allout-beginning-of-line
- allout-mode-map global-map)
- (substitute-key-definition 'move-beginning-of-line
- 'allout-beginning-of-line
- allout-mode-map global-map)
- (substitute-key-definition 'end-of-line
- 'allout-end-of-line
- allout-mode-map global-map)
- (substitute-key-definition 'move-end-of-line
- 'allout-end-of-line
- allout-mode-map global-map)
- (fset 'allout-mode-map allout-mode-map))
-
-;; ensure that allout-mode-map has some setting even if allout-mode hasn't
-;; been invoked:
-(allout-setup-mode-map)
-
-;;;_ > allout-minor-mode
-(defalias 'allout-minor-mode 'allout-mode)
-
;;;_ > allout-unload-function
(defun allout-unload-function ()
"Unload the allout outline library."
@@ -3425,7 +3329,7 @@
then unset it. Set by `allout-pre-command-business' when implementing
hot-spot operation, where literal characters typed over a topic bullet
are mapped to the command of the corresponding control-key on the
-`allout-mode-map'.")
+`allout-mode-map-value'.")
(make-variable-buffer-local 'allout-post-goto-bullet)
;;;_ = allout-command-counter
(defvar allout-command-counter 0
@@ -3464,11 +3368,12 @@
Among other things, implements special behavior when the cursor is on the
topic bullet character.
-When the cursor is on the bullet character, self-insert characters are
-reinterpreted as the corresponding control-character in the
-`allout-mode-map'. The `allout-mode' `post-command-hook' insures that
-the cursor which has moved as a result of such reinterpretation is
-positioned on the bullet character of the destination topic.
+When the cursor is on the bullet character, self-insert
+characters are reinterpreted as the corresponding
+control-character in the `allout-mode-map-value'. The
+`allout-mode' `post-command-hook' insures that the cursor which
+has moved as a result of such reinterpretation is positioned on
+the bullet character of the destination topic.
The upshot is that you can get easy, single (ie, unmodified) key
outline maneuvering operations by positioning the cursor on the bullet
@@ -3495,9 +3400,6 @@
Returns the qualifying command, if any, else nil."
(interactive)
(let* ((modified (event-modifiers last-command-event))
- (key-string (if (numberp last-command-event)
- (char-to-string
- (event-basic-type last-command-event))))
(key-num (cond ((numberp last-command-event) last-command-event)
;; for XEmacs character type:
((and (fboundp 'characterp)
@@ -3514,16 +3416,13 @@
(not modified)
(<= 33 key-num)
(setq mapped-binding
- (or (and (assoc key-string allout-keybindings-list)
- ;; translate literal membership on list:
- (cadr (assoc key-string allout-keybindings-list)))
- ;; translate as a keybinding:
- (key-binding (vconcat allout-command-prefix
- (vector
- (if (and (<= 97 key-num) ; "a"
- (>= 122 key-num)) ; "z"
- (- key-num 96) key-num)))
- t))))
+ ;; translate as a keybinding:
+ (key-binding (vconcat allout-command-prefix
+ (vector
+ (if (and (<= 97 key-num) ; "a"
+ (>= 122 key-num)) ; "z"
+ (- key-num 96) key-num)))
+ t)))
;; Qualified as an allout command -- do hot-spot operation.
(setq allout-post-goto-bullet t)
;; accept-defaults nil, or else we get allout-item-icon-key-handler.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r102916: allout.el: Summary - migrate to defining allout mode using,
Ken Manheimer <=