Merge pull request #1750 from stsquad/logging/more-tweaks

mu4e/mu4e-utils: save our position before deleting old data
This commit is contained in:
Dirk-Jan C. Binnema
2020-07-07 00:12:59 +03:00
committed by GitHub
2 changed files with 31 additions and 20 deletions

View File

@ -270,6 +270,9 @@ Indexer::Private::start(const Indexer::Config& conf)
cleanup(); cleanup();
clean_done_ = true; clean_done_ = true;
g_debug ("cleanup finished"); g_debug ("cleanup finished");
} else {
clean_done_ = true;
g_debug ("cleanup skipped");
} }
store_.commit(); store_.commit();

View File

@ -1000,11 +1000,10 @@ in the background; otherwise, pop up a window."
"Max number of characters to keep around in the log buffer.") "Max number of characters to keep around in the log buffer.")
(defconst mu4e~log-buffer-name "*mu4e-log*" (defconst mu4e~log-buffer-name "*mu4e-log*"
"*internal* Name of the logging buffer.") "*internal* Name of the logging buffer.")
(defun mu4e-log (type frm &rest args)
"Write a message of TYPE with format-string FRM and ARGS in (defun mu4e~get-log-buffer ()
*mu4e-log* buffer, if the variable mu4e-debug is non-nil. Type is "Fetch (and maybe create) the log buffer."
either 'to-server, 'from-server or 'misc. This function is meant for debugging." (unless (get-buffer mu4e~log-buffer-name)
(when mu4e-debug
(with-current-buffer (get-buffer-create mu4e~log-buffer-name) (with-current-buffer (get-buffer-create mu4e~log-buffer-name)
(view-mode) (view-mode)
@ -1012,7 +1011,15 @@ either 'to-server, 'from-server or 'misc. This function is meant for debugging."
(unless (eq major-mode 'so-long-mode) (unless (eq major-mode 'so-long-mode)
(eval '(so-long-mode)))) (eval '(so-long-mode))))
(setq buffer-undo-list t) (setq buffer-undo-list t)))
mu4e~log-buffer-name)
(defun mu4e-log (type frm &rest args)
"Write a message of TYPE with format-string FRM and ARGS in
*mu4e-log* buffer, if the variable mu4e-debug is non-nil. Type is
either 'to-server, 'from-server or 'misc. This function is meant for debugging."
(when mu4e-debug
(with-current-buffer (mu4e~get-log-buffer)
(let* ((inhibit-read-only t) (let* ((inhibit-read-only t)
(tstamp (propertize (format-time-string "%Y-%m-%d %T.%3N" (tstamp (propertize (format-time-string "%Y-%m-%d %T.%3N"
(current-time)) (current-time))
@ -1025,21 +1032,22 @@ either 'to-server, 'from-server or 'misc. This function is meant for debugging."
(error 'font-lock-warning-face) (error 'font-lock-warning-face)
(otherwise (mu4e-error "Unsupported log type")))) (otherwise (mu4e-error "Unsupported log type"))))
(msg (propertize (apply 'format frm args) 'face msg-face))) (msg (propertize (apply 'format frm args) 'face msg-face)))
(goto-char (point-max)) (save-excursion
(insert tstamp (goto-char (point-max))
(cl-case type (insert tstamp
(from-server " <- ") (cl-case type
(to-server " -> ") (from-server " <- ")
(error " !! ") (to-server " -> ")
(otherwise " ")) (error " !! ")
msg "\n") (otherwise " "))
msg "\n")
;; if `mu4e-log-max-lines is specified and exceeded, clearest the oldest ;; if `mu4e-log-max-lines is specified and exceeded, clearest the oldest
;; lines ;; lines
(when (> (buffer-size) mu4e~log-max-size) (when (> (buffer-size) mu4e~log-max-size)
(goto-char (- (buffer-size) mu4e~log-max-size)) (goto-char (- (buffer-size) mu4e~log-max-size))
(beginning-of-line) (beginning-of-line)
(delete-region (point-min) (point))))))) (delete-region (point-min) (point))))))))
(defun mu4e-toggle-logging () (defun mu4e-toggle-logging ()
"Toggle between enabling/disabling debug-mode (in debug-mode, "Toggle between enabling/disabling debug-mode (in debug-mode,