emacs-commit
[Top][All Lists]
Advanced

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

[Emacs-commit] emacs/lisp allout.el


From: Eli Zaretskii
Subject: [Emacs-commit] emacs/lisp allout.el
Date: Sat, 16 Sep 2006 10:24:24 +0000

CVSROOT:        /cvsroot/emacs
Module name:    emacs
Changes by:     Eli Zaretskii <eliz>    06/09/16 10:24:24

Modified files:
        lisp           : allout.el 

Log message:
        (allout-regexp, allout-line-boundary-regexp)
        (allout-bob-regexp): Correct grouping and boundaries to fix backwards 
traversal.
        (allout-depth-specific-regexp, allout-depth-one-regexp): New versions 
that
        exploit \\{M\\} regexp syntax, to avoid geometric or worse time in
        allout-ascend.
        (allout-doublecheck-at-and-shallower): Identify depth threshold below 
which
        topics are checked for and disqualified by containment discontinuities.
        (allout-hotspot-key-handler): Correctly handle multiple-key strokes.  
Remove
        some unused variables.
        (allout-mode-leaders): Clarify that mode-specific comment-start will be 
used
        (set-allout-regexp): Correctly regexp-quote allout regexps to properly 
accept
        alternative header-leads and primary bullets with regexp-specific 
characters
        (eg, C "/*", mathematica "(*").
        Include new regular expressions among those configured.
        (allout-infer-header-lead-and-primary-bullet): Rename 
allout-infer-header-lead.
        (allout-recent-depth): Manifest as a variable as well as a function.
        (allout-prefix-data): Simplify into an inline instead of a macro, 
assuming
        current match data rather than being explicitly passed it.  Establish
        allout-recent-depth value as well as allout-recent-prefix-beginning and
        allout-recent-prefix-end.
        (allout-aberrant-container-p): True when an item's immediate offspring
        discontinuously contained.  Useful for disqualifying unintended topic 
prefixes,
        likely at low depths.
        (allout-goto-prefix-doublechecked): Elaborated version of 
allout-goto-prefix
        which disqualifies aberrant pseudo-items.
        (allout-pre-next-prefix): Layer on top of lower-level routines, to get
        disqualification of aberrant containers.
        (allout-end-of-prefix, allout-end-of-subtree): Disqualify aberrant 
containers.
        (allout-beginning-of-current-entry): Position at start of buffer when in
        container (depth 0) entry.
        (nullify-allout-prefix-data): Invalidate allout-recent-* prefix data.
        (allout-current-bullet): Strip text properties.
        (allout-get-prefix-bullet): Use right match groups.
        (allout-beginning-of-line, allout-next-heading): Disqualify aberrant 
containers.
        (allout-previous-heading): Disqualify aberrant containers, and change to
        regular (rather than inline) function, to allow self-recursion.
        (allout-get-invisibility-overlay): Increment so progress is made when 
the first
        overlay is not the sought one.
        (allout-end-of-prefix): Disqualify aberrant containers.
        (allout-end-of-line): Cycle something like allout-beginning-of-line.
        (allout-mode): Make allout-old-style-prefixes (ie, enabling use with 
outline.el
        outlines) functional again.  Change the primary bullet along with the
        header-lead - level 1 new-style bullets now work.
        Engage allout-before-change-handler in mainline emacs, not just xemacs, 
to do
        undo handling.
        (allout-before-change-handler): Expose undo changes occurring in hidden
        regions.  Use allout-get-invisibility-overlay instead of reimplementing 
it
        inline.
        (allout-chart-subtree): Use start rather than end of prefix in charts.  
Use
        allout-recent-depth variable.
        (allout-chart-siblings): Disqualify aberrant topics.
        (allout-beginning-of-current-entry): Position correctly.
        (allout-ascend): Use new allout-depth-specific-regexp and
        allout-depth-one-regexp for linear instead of O(N^2) or worse behavior.
        (allout-ascend-to-depth): Depend on allout-ascend, rather than 
reimplementing
        an algorithm.
        (allout-up-current-level): Depend on allout-ascend, rather than 
reimplementing
        an algorithm.  Return to start-point if we fail.
        (allout-descend-to-depth): Use allout-recent-depth variable instead of 
function.
        (allout-next-sibling): On traversal of numerous intervening topics, 
resort to
        economical allout-next-sibling-leap.
        (allout-next-sibling-leap): Specialized version of allout-next-sibling 
that
        uses allout-ascend cleverly, to depend on a regexp search to leap large 
numbers
        of contained topics, rather than arbitrarily many one-by-one traversals.
        (allout-next-visible-heading): Disqualify aberrant topics.
        (allout-previous-visible-heading): Position consistently when 
interactive.
        (allout-forward-current-level): Base on allout-previous-sibling rather 
than
         (differently) reimplmenting the algorithm.  Remove some unused 
variables.
        (allout-solicit-alternate-bullet): Present default choice stripped of 
text
        properties.
        (allout-rebullet-heading): Use bullet stripped of text properties.
        Register changes using allout-exposure-change-hook.  Disregard aberrant 
topics.
        (allout-shift-in): With universal-argument, make topic a peer of it's 
former
        offspring.  Simplify the code by separating out allout-shift-out 
functionality.
        (allout-shift-out): With universal-argument, make offspring peers of 
their
        former container, and its siblings.  Implement the functionality here, 
rather
        than inappropriately muddling the implementation of allout-shift-in.
        (allout-rebullet-topic): Respect additional argument for new 
parent-child
        separation function.
        (allout-yank-processing): Use allout-ascend directly.
        (allout-show-entry): Disqualify aberrant topics.
        (allout-show-children): Handle discontinuous children gracefully, 
extending the
        depth being revealed to expose them and posting a message indicating the
        situation.
        (allout-show-to-offshoot): Remove obsolete and incorrect comment.  
Leave cursor
        in correct position.
        (allout-hide-current-subtree): Use allout-ascend directly.  Disqualify 
aberrant
        topics.
        (allout-kill-line, allout-kill-topic): Preserve exposure layout in a 
way that
        the yanks can restore it, as used to happen.
        (allout-yank-processing): Restore exposure layout as recorded by 
allout-kill-*,
        as used to happen.
        (allout-annotate-hidden, allout-hide-by-annotation): New routines for 
preseving
        and restoring exposure layout across kills.
        (allout-toggle-subtree-encryption): Run allout-exposure-change-hook.
        (allout-encrypt-string): Strip text properties.  Rearranged order and
        outline-headings for some of the miscellaneous functions.
        (allout-resolve-xref): No need to quote the error name in the 
condition-case
        handler section.
        (allout-flatten): Classic recursive (and recursively intensive, without
        tail-recursion) list-flattener, needed by allout-shift-out when 
confronted with
        discontinuous children.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/allout.el?cvsroot=emacs&r1=1.82&r2=1.83




reply via email to

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