Function: logview--do-edit-views

logview--do-edit-views is a natively compiled function defined in logview.el.

Signature

(logview--do-edit-views SUBMODE-ONLY)

Source Code

;; Defined in /nix/store/3zkn9hgpv447zb8nrg55d9x2ynmmrk40-emacs-packages-deps/share/emacs/site-lisp/elpa/logview-20260218.2013/logview.el
(defun logview--do-edit-views (submode-only)
  (let ((self    (current-buffer))
        (windows (current-window-configuration))
        (submode (when submode-only logview--submode-name)))
    (if (buffer-live-p logview--view-editing-buffer)
        (when (and (buffer-modified-p logview--view-editing-buffer)
                   (not (eq (with-current-buffer logview--view-editing-buffer
                              logview-filter-edit--editing-views-for-submode)
                            submode)))
          (pop-to-buffer logview--view-editing-buffer)
          (unless (yes-or-no-p "Discard current view editing changes?")
            (user-error "Another view editing is in progress")))
      (setq logview--view-editing-buffer (generate-new-buffer "Logview views")))
    (split-window-vertically)
    (other-window 1)
    (switch-to-buffer logview--view-editing-buffer)
    (unless (eq major-mode 'logview-filter-edit-mode)
      (logview-filter-edit-mode))
    (setf logview-filter-edit--mode                      'views
          logview-filter-edit--editing-views-for-submode submode
          logview-filter-edit--parent-buffer             self
          logview-filter-edit--window-configuration      windows)
    (logview-filter-edit--initialize-text)))