Function: allout-beginning-of-line
allout-beginning-of-line is an interactive and byte-compiled function
defined in allout.el.gz.
Signature
(allout-beginning-of-line)
Documentation
Beginning-of-line with allout-beginning-of-line-cycles behavior, if set.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/allout.el.gz
;;;_ > allout-beginning-of-line ()
(defun allout-beginning-of-line ()
"Beginning-of-line with `allout-beginning-of-line-cycles' behavior, if set."
(interactive)
(if (or (not allout-beginning-of-line-cycles)
(not (equal last-command this-command)))
(progn
(if (and (not (bolp))
(allout-hidden-p (1- (point))))
(goto-char (previous-single-char-property-change
(1- (point)) 'invisible)))
(move-beginning-of-line 1))
(allout-depth)
(let ((beginning-of-body
(save-excursion
(while (and (allout-do-doublecheck)
(allout-aberrant-container-p)
(allout-previous-visible-heading 1)))
(allout-beginning-of-current-entry)
(point))))
(cond ((= (current-column) 0)
(goto-char beginning-of-body))
((< (point) beginning-of-body)
(allout-beginning-of-current-line))
((= (point) beginning-of-body)
(goto-char (allout-current-bullet-pos)))
(t (allout-beginning-of-current-line)
(if (< (point) beginning-of-body)
;; we were on the headline after its start:
(goto-char beginning-of-body)))))))