Function: markdown-cur-list-item-end
markdown-cur-list-item-end is a byte-compiled function defined in
markdown-mode.el.
Signature
(markdown-cur-list-item-end LEVEL)
Documentation
Move to end of list item with pre-marker indentation LEVEL.
Return the point at the end when a list item was found at the original point. If the point is not in a list item, do nothing.
Source Code
;; Defined in ~/.emacs.d/elpa/markdown-mode-20260321.143/markdown-mode.el
(defun markdown-cur-list-item-end (level)
"Move to end of list item with pre-marker indentation LEVEL.
Return the point at the end when a list item was found at the
original point. If the point is not in a list item, do nothing."
(let (indent)
(forward-line)
;; #904 consider a space indentation and tab indentation case
(save-excursion
(let ((pos (point)))
(back-to-indentation)
(setq indent (- (point) pos))))
(while
(cond
;; Stop at end of the buffer.
((eobp) nil)
;; Continue while indentation is the same or greater
((>= indent level) t)
;; Continue if the current line is blank
((looking-at markdown-regex-blank-line) t)
;; Stop if current indentation is less than list item
;; and the previous line was blank.
((and (< indent level)
(markdown-prev-line-blank))
nil)
;; Stop at a new list items of the same or lesser
;; indentation, headings, and horizontal rules.
((looking-at (concat "\\(?:" markdown-regex-list
"\\|" markdown-regex-header
"\\|" markdown-regex-hr "\\)"))
nil)
;; Otherwise, continue.
(t t))
(forward-line)
(setq indent (current-indentation)))
;; Don't skip over whitespace for empty list items (marker and
;; whitespace only), just move to end of whitespace.
(if (save-excursion
(beginning-of-line)
(looking-at (concat markdown-regex-list "[ \t]*$")))
(goto-char (match-end 3))
(skip-chars-backward " \t\n"))
(end-of-line)
(point)))