Function: allout-yank
allout-yank is an interactive and byte-compiled function defined in
allout.el.gz.
Signature
(allout-yank &optional ARG)
Documentation
allout-mode(var)/allout-mode(fun) yank, with depth and numbering adjustment of yanked topics.
Non-topic yanks work no differently than normal yanks.
If a topic is being yanked into a bare topic prefix, the depth of the yanked topic is adjusted to the depth of the topic prefix.
1 we're yanking in an allout-mode(var)/allout-mode(fun) buffer
2 the stuff being yanked starts with a valid outline header prefix, and
3 it is being yanked at the end of a line which consists of only a valid
topic prefix.
If these conditions hold then the depth of the yanked topics are all adjusted the amount it takes to make the first one at the depth of the header into which it's being yanked.
The point is left in front of yanked, adjusted topics, rather than at the end (and vice-versa with the mark). Non-adjusted yanks, however, (ones that don't qualify for adjustment) are handled exactly like normal yanks.
Numbering of yanked topics, and the successive siblings at the depth into which they're being yanked, is adjusted.
allout-yank-pop works with allout-yank just like normal yank-pop
works with normal yank in non-outline buffers.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/allout.el.gz
;;;_ > allout-yank (&optional arg)
(defun allout-yank (&optional arg)
"`allout-mode' yank, with depth and numbering adjustment of yanked topics.
Non-topic yanks work no differently than normal yanks.
If a topic is being yanked into a bare topic prefix, the depth of the
yanked topic is adjusted to the depth of the topic prefix.
1 we're yanking in an `allout-mode' buffer
2 the stuff being yanked starts with a valid outline header prefix, and
3 it is being yanked at the end of a line which consists of only a valid
topic prefix.
If these conditions hold then the depth of the yanked topics are all
adjusted the amount it takes to make the first one at the depth of the
header into which it's being yanked.
The point is left in front of yanked, adjusted topics, rather than
at the end (and vice-versa with the mark). Non-adjusted yanks,
however, (ones that don't qualify for adjustment) are handled
exactly like normal yanks.
Numbering of yanked topics, and the successive siblings at the depth
into which they're being yanked, is adjusted.
`allout-yank-pop' works with `allout-yank' just like normal `yank-pop'
works with normal `yank' in non-outline buffers."
(interactive "*P")
(setq this-command 'yank)
(allout-unprotected
(yank arg))
(if (allout-mode-p)
(allout-yank-processing)))