Function: markdown-cycle-setext
markdown-cycle-setext is a byte-compiled function defined in
markdown-mode.el.
Signature
(markdown-cycle-setext ARG &optional REMOVE)
Documentation
Cycle setext header markup.
Promote header (increase level) when ARG is 1 and demote
header (decrease level or remove) if arg is -1. When demoting a
level-two setext header, replace with a level-three atx header.
When REMOVE is non-nil, remove the header when the level reaches
zero. Otherwise, cycle back to a level six atx header. Assumes
match data is available for markdown-regex-header-setext.
Source Code
;; Defined in ~/.emacs.d/elpa/markdown-mode-20260321.143/markdown-mode.el
(defun markdown-cycle-setext (arg &optional remove)
"Cycle setext header markup.
Promote header (increase level) when ARG is 1 and demote
header (decrease level or remove) if arg is -1. When demoting a
level-two setext header, replace with a level-three atx header.
When REMOVE is non-nil, remove the header when the level reaches
zero. Otherwise, cycle back to a level six atx header. Assumes
match data is available for `markdown-regex-header-setext'."
(let* ((char (char-after (match-beginning 2)))
(old-level (if (char-equal char ?=) 1 2))
(new-level (+ old-level arg)))
(when (and (not remove) (= new-level 0))
(setq new-level 6))
(cond
((= new-level 0)
(markdown-unwrap-thing-at-point nil 0 1))
((<= new-level 2)
(markdown-insert-header new-level nil t))
((<= new-level 6)
(markdown-insert-header new-level nil nil)))))