Function: logview--do-locate-current-entry

logview--do-locate-current-entry is a natively compiled function defined in logview.el.

Signature

(logview--do-locate-current-entry &optional POSITION)

Documentation

Return the entry around POSITION and its beginning.

If POSITION is nil, take the current value of point as the position, and also signal a user-level error if no entries can be located.

This function may misbehave if any narrowing is in effect. Make sure to cancel it using logview--std-temporarily-widening or something similar first.

Source Code

;; Defined in /nix/store/3zkn9hgpv447zb8nrg55d9x2ynmmrk40-emacs-packages-deps/share/emacs/site-lisp/elpa/logview-20260218.2013/logview.el
(defun logview--do-locate-current-entry (&optional position)
  "Return the entry around POSITION and its beginning.
If POSITION is nil, take the current value of point as the
position, and also signal a user-level error if no entries can be
located.

This function may misbehave if any narrowing is in effect.  Make
sure to cancel it using `logview--std-temporarily-widening' or
something similar first."
  (let* ((entry-at (or position (point)))
         (entry    (or (get-text-property entry-at 'logview-entry)
                       (progn (logview--find-region-entries entry-at (+ entry-at logview--lazy-region-size))
                              (get-text-property entry-at 'logview-entry)))))
    (if entry
        (when (and (> entry-at (point-min))
                   (eq (get-text-property (1- entry-at) 'logview-entry) entry))
          (setq entry-at (or (previous-single-property-change entry-at 'logview-entry) (point-min))))
      (when (setq entry-at (or (next-single-property-change entry-at 'logview-entry)
                               (when (and (> entry-at (point-min))
                                          (get-text-property (1- entry-at) 'logview-entry))
                                 (previous-single-property-change entry-at 'logview-entry))))
        (setq entry (get-text-property entry-at 'logview-entry))))
    (if entry
        (cons entry entry-at)
      (unless position
        (user-error "Unable to locate any log entries")))))