Function: outline-minor-mode-cycle--bind

outline-minor-mode-cycle--bind is a byte-compiled function defined in outline.el.gz.

Signature

(outline-minor-mode-cycle--bind MAP KEY BINDING &optional FILTER)

Documentation

Define KEY as BINDING in MAP using FILTER.

The key takes effect only on the following conditions: outline-minor-mode-cycle is non-nil, point is located on the heading line, FILTER or outline-minor-mode-cycle-filter is nil or returns non-nil. The argument MAP is optional and defaults to outline-minor-mode-cycle-map.

Probably introduced at or before Emacs version 29.1.

Source Code

;; Defined in /usr/src/emacs/lisp/outline.el.gz
(defun outline-minor-mode-cycle--bind (map key binding &optional filter)
  "Define KEY as BINDING in MAP using FILTER.
The key takes effect only on the following conditions:
`outline-minor-mode-cycle' is non-nil, point is located on the heading line,
FILTER or `outline-minor-mode-cycle-filter' is nil or returns non-nil.
The argument MAP is optional and defaults to `outline-minor-mode-cycle-map'."
  (define-key (or map outline-minor-mode-cycle-map) key
    `(menu-item
      "" ,binding
      ;; Filter out specific positions on the heading.
      :filter
      ,(or filter
           (lambda (cmd)
             (when (and outline-minor-mode-cycle
                        (outline-on-heading-p t)
                        (or (not (functionp outline-minor-mode-cycle-filter))
                            (funcall outline-minor-mode-cycle-filter)))
               cmd))))))