Merge pull request #1750 from stsquad/logging/more-tweaks
mu4e/mu4e-utils: save our position before deleting old data
This commit is contained in:
@ -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();
|
||||||
|
|||||||
@ -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,
|
||||||
|
|||||||
Reference in New Issue
Block a user