Function: majutsu-interactive--normalize-line-range

majutsu-interactive--normalize-line-range is a natively compiled function defined in majutsu-interactive.el.

Signature

(majutsu-interactive--normalize-line-range START END LIMIT-START LIMIT-END)

Documentation

Return a line-aligned range between START and END.

The range is clamped to LIMIT-START and LIMIT-END.

Source Code

;; Defined in /nix/store/jagqw3nms546pad0gxi5f3wsckk6pji7-emacs-packages-deps/share/emacs/site-lisp/majutsu-interactive.el
(defun majutsu-interactive--normalize-line-range (start end limit-start limit-end)
  "Return a line-aligned range between START and END.
The range is clamped to LIMIT-START and LIMIT-END."
  (let* ((rbeg (max start limit-start))
         (rend (min end limit-end)))
    (when (< rbeg rend)
      (save-excursion
        (goto-char rbeg)
        (setq rbeg (line-beginning-position))
        (goto-char (max (1- rend) rbeg))
        (setq rend (min limit-end (1+ (line-end-position))))))
    (and rbeg rend (< rbeg rend) (cons rbeg rend))))