Function: evil-get-marker

evil-get-marker is a byte-compiled function defined in evil-common.el.

Signature

(evil-get-marker CHAR &optional RAW)

Documentation

Return the marker denoted by CHAR.

This is either a marker object as returned by make-marker, a number, a cons cell (FILE . POS) with FILE being a string and POS a number, or nil. If RAW is non-nil, then the return value may also be a variable, a movement function, or a marker object pointing nowhere.

Source Code

;; Defined in ~/.emacs.d/elpa/evil-20251108.138/evil-common.el
(defun evil-get-marker (char &optional raw)
  "Return the marker denoted by CHAR.
This is either a marker object as returned by `make-marker',
a number, a cons cell (FILE . POS) with FILE being a string
and POS a number, or nil. If RAW is non-nil, then the
return value may also be a variable, a movement function,
or a marker object pointing nowhere."
  (let ((marker (cdr (assq char (if (evil-global-marker-p char)
                                    (default-value 'evil-markers-alist)
                                  evil-markers-alist)))))
    (if raw
        marker
      (when (and (symbolp marker) (boundp marker))
        (setq marker (symbol-value marker)))
      (when (functionp marker)
        (save-excursion
          (save-window-excursion
            (funcall marker)
            (setq marker (move-marker (make-marker) (point))))))
      (if (markerp marker)
          (if (eq (marker-buffer marker) (current-buffer))
              (marker-position marker)
            (when (marker-buffer marker) marker))
        marker))))