Function: logview--do-save-filters-as-view
logview--do-save-filters-as-view is a natively compiled function
defined in logview.el.
Signature
(logview--do-save-filters-as-view NAME GLOBAL)
Source Code
;; Defined in /nix/store/3zkn9hgpv447zb8nrg55d9x2ynmmrk40-emacs-packages-deps/share/emacs/site-lisp/elpa/logview-20260218.2013/logview.el
(defun logview--do-save-filters-as-view (name global)
(unless (caar (car logview--effective-filter))
(user-error "There are currently no filters"))
(unless name
(setq name (read-string "Save as: " nil 'logview--view-name-history)))
(when (= (length name) 0)
(user-error "View name may not be empty"))
(let ((matches (lambda (view)
(and (string= (plist-get view :name) name)
(or global (null (plist-get view :submode)) (string= (plist-get view :submode) logview--submode-name))))))
(dolist (view (logview--views))
(when (funcall matches view)
(unless (y-or-n-p (format-message (if global
"There is already a view named `%s'. Replace it?"
"There is already a view named `%s' for this submode. Replace it?")
name))
(user-error "View named `%s' already exists; try a different name" name))))
(let (new-views)
(dolist (view (logview--views))
(unless (funcall matches view)
(push view new-views)))
(push (list :name name :filters logview--main-filter-text) new-views)
(unless global
(plist-put (car new-views) :submode logview--submode-name))
(setq logview--views (nreverse new-views)
logview--views-need-saving t)
(logview--after-updating-view-definitions)
(logview--update-mode-name)
(message (if global "Saved filters as a global view named `%s'" "Saved filters as a submode view named `%s'") name))))