mirror of
https://git.savannah.gnu.org/git/emacs/org-mode.git
synced 2024-08-21 23:48:34 +00:00
Added a less functional Org-mode copy of the cl reduce function.
* lisp/org.el (org-reduce): Added a less functional Org-mode copy of the cl reduce function.
This commit is contained in:
parent
f55810593e
commit
15417f67c4
12
lisp/org.el
12
lisp/org.el
|
@ -19660,6 +19660,18 @@ Taken from `count' in cl-seq.el with all keyword arguments removed."
|
|||
(if (funcall predicate e) (push e res)))
|
||||
(nreverse res)))
|
||||
|
||||
(defun org-reduce (cl-func cl-seq &rest cl-keys)
|
||||
"Reduce two-argument FUNCTION across SEQ.
|
||||
Taken from `reduce' in cl-seq.el with all keyword arguments but
|
||||
\":initial-value\" removed."
|
||||
(let ((cl-accum (cond ((memq :initial-value cl-keys)
|
||||
(cadr (memq :initial-value cl-keys)))
|
||||
(cl-seq (pop cl-seq))
|
||||
(t (funcall cl-func)))))
|
||||
(while cl-seq
|
||||
(setq cl-accum (funcall cl-func cl-accum (pop cl-seq))))
|
||||
cl-accum))
|
||||
|
||||
(defun org-back-over-empty-lines ()
|
||||
"Move backwards over whitespace, to the beginning of the first empty line.
|
||||
Returns the number of empty lines passed."
|
||||
|
|
Loading…
Reference in a new issue