Function: allout-rebullet-topic

allout-rebullet-topic is an interactive and byte-compiled function defined in allout.el.gz.

Signature

(allout-rebullet-topic ARG &optional SANS-OFFSPRING)

Documentation

Rebullet the visible topic containing point and all contained subtopics.

Descends into invisible as well as visible topics, however.

When optional SANS-OFFSPRING is non-nil, subtopics are not shifted. (Shifting a topic outwards without shifting its offspring is disallowed, since this would create a "containment discontinuity", where the depth difference between a topic and its immediate offspring is greater than one.)

With repeat count, shift topic depth by that amount.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/allout.el.gz
  ) ; defun
;;;_    > allout-rebullet-topic (arg)
(defun allout-rebullet-topic (arg &optional sans-offspring)
  "Rebullet the visible topic containing point and all contained subtopics.

Descends into invisible as well as visible topics, however.

When optional SANS-OFFSPRING is non-nil, subtopics are not
shifted.  (Shifting a topic outwards without shifting its
offspring is disallowed, since this would create a \"containment
discontinuity\", where the depth difference between a topic and
its immediate offspring is greater than one.)

With repeat count, shift topic depth by that amount."
  (interactive "P")
  (let ((start-col (current-column)))
    (save-excursion
      ;; Normalize arg:
      (cond ((null arg) (setq arg 0))
            ((listp arg) (setq arg (car arg))))
      ;; Fill the user in, in case we're shifting a big topic:
      (if (not (zerop arg)) (message "Shifting..."))
      (allout-back-to-current-heading)
      (if (<= (+ allout-recent-depth arg) 0)
          (error "Attempt to shift topic below level 1"))
      (allout-rebullet-topic-grunt arg nil nil nil nil sans-offspring)
      (if (not (zerop arg)) (message "Shifting... done.")))
    (move-to-column (max 0 (+ start-col arg)))))