Function: logview-filter-edit--font-lock-region
logview-filter-edit--font-lock-region is a natively compiled function
defined in logview.el.
Signature
(logview-filter-edit--font-lock-region REGION-END)
Source Code
;; Defined in /nix/store/3zkn9hgpv447zb8nrg55d9x2ynmmrk40-emacs-packages-deps/share/emacs/site-lisp/elpa/logview-20260218.2013/logview.el
(defun logview-filter-edit--font-lock-region (region-end)
(save-excursion
(save-match-data
;; Not even in a Logview mode buffer, not using `std'.
(logview--temporarily-widening
(with-silent-modifications
(forward-line 0)
;; Never try to parse from the middle of a multiline filter.
(while (and (not (bobp))
(looking-at "\\.\\. "))
(forward-line -1))
(logview--iterate-filter-buffer-lines
(lambda (type line-begin begin end)
(unless (pcase type
(`nil
(when (eq logview-filter-edit--mode 'views)
(save-excursion
(goto-char line-begin)
(cond ((looking-at logview--view-header-regexp)
(put-text-property (match-beginning 1) (match-end 1) 'face 'font-lock-keyword-face)
(put-text-property (match-beginning 2) (match-end 2) 'face 'font-lock-function-name-face)
t)
((looking-at logview--view-submode-regexp)
(put-text-property (match-beginning 1) (match-end 1) 'face 'font-lock-keyword-face)
(let ((submode-name (match-string-no-properties 2)))
(put-text-property (match-beginning 2) (match-end 2) 'face (if (or (assoc submode-name logview-std-submodes)
(assoc submode-name logview-additional-submodes))
'font-lock-variable-name-face
'error)))
t)
((looking-at logview--view-index-regexp)
(put-text-property (match-beginning 1) (match-end 1) 'face 'font-lock-keyword-face)
(put-text-property (match-beginning 2) (match-end 2) 'face 'font-lock-constant-face)
t)))))
("#"
(put-text-property begin end 'face 'font-lock-comment-face)
t)
(""
(put-text-property begin end 'face nil)
t)
((or "lv" "LV")
(when (memq logview-filter-edit--mode '(main-filters views))
(put-text-property line-begin begin 'face 'logview-edit-filters-type-prefix)
(let ((level-string (buffer-substring-no-properties begin end))
(known-levels (with-current-buffer logview-filter-edit--parent-buffer
logview--submode-level-data)))
(while (and level-string known-levels)
(if (string= (caar known-levels) level-string)
(setq level-string nil)
(setq known-levels (cdr known-levels))))
(put-text-property begin end 'face (if level-string 'error nil)))
t))
(_
(when (or (memq logview-filter-edit--mode '(main-filters views)) (member type '("t+" "t-")))
(let* ((valid (logview--valid-regexp-p (logview--filter-regexp begin end))))
(goto-char begin)
(while (let ((from (point)))
(put-text-property (- from 3) from 'face 'logview-edit-filters-type-prefix)
(forward-line)
(put-text-property from (if (bolp) (logview--character-back (point)) (point))
'face (unless valid 'error))
(when (< (point) end)
(forward-char 3)
t))))
t)))
(put-text-property begin end 'face 'error))
(< (point) region-end)))))))
;; Tell font-lock that it's not worth calling us back for "further matches".
nil)