From c8bb77a3df4efd9db1d1751150e7ccd3c7fcb2bf Mon Sep 17 00:00:00 2001 From: Gabriel Ebner Date: Thu, 13 Apr 2017 09:18:38 +0200 Subject: [PATCH] fix(emacs): demote errors --- src/emacs/lean-info.el | 15 ++++++++------- src/emacs/lean-mode.el | 2 +- src/emacs/lean-server.el | 24 +++++++++++++----------- 3 files changed, 22 insertions(+), 19 deletions(-) diff --git a/src/emacs/lean-info.el b/src/emacs/lean-info.el index 8841a99857..1136bfe0b4 100644 --- a/src/emacs/lean-info.el +++ b/src/emacs/lean-info.el @@ -58,13 +58,14 @@ (defun lean-get-info-record-at-point (cont) "Get info-record at the current point" - (lean-server-send-command - 'info (list :file_name (buffer-file-name) - :line (line-number-at-pos) - :column (lean-line-offset)) - (cl-function - (lambda (&key record) - (funcall cont record))))) + (with-demoted-errors "lean get info: %s" + (lean-server-send-command + 'info (list :file_name (buffer-file-name) + :line (line-number-at-pos) + :column (lean-line-offset)) + (cl-function + (lambda (&key record) + (funcall cont record)))))) (cl-defun lean-find-definition-cont (&key file line column) (when (fboundp 'xref-push-marker-stack) (xref-push-marker-stack)) diff --git a/src/emacs/lean-mode.el b/src/emacs/lean-mode.el index a8b3842ec4..748be818d4 100644 --- a/src/emacs/lean-mode.el +++ b/src/emacs/lean-mode.el @@ -147,7 +147,7 @@ enabled and disabled respectively.") (defun lean-mode-setup () "Default lean-mode setup" ;; server - (lean-server-ensure-alive) + (ignore-errors (lean-server-ensure-alive)) (setq mode-name '("Lean" (:eval (lean-server-status-string)))) ;; Flycheck (lean-flycheck-turn-on) diff --git a/src/emacs/lean-server.el b/src/emacs/lean-server.el index fd83ac4579..a6dba10f98 100644 --- a/src/emacs/lean-server.el +++ b/src/emacs/lean-server.el @@ -236,10 +236,10 @@ (defun lean-server-update-task-overlays () (dolist (ov lean-server-task-overlays) (delete-overlay ov)) (setq lean-server-task-overlays nil) - (when lean-server-show-pending-tasks - (let* ((tasks (if lean-server-session (lean-server-session-tasks lean-server-session))) + (when (and lean-server-show-pending-tasks lean-server-session) + (let* ((tasks (lean-server-session-tasks lean-server-session)) (cur-fn (buffer-file-name)) - (roi (if lean-server-session (cdr (assq cur-fn (lean-server-session-current-roi lean-server-session)))))) + (roi (cdr (assq cur-fn (lean-server-session-current-roi lean-server-session))))) (dolist (task (plist-get tasks :tasks)) (if (and (equal (plist-get task :file_name) cur-fn) (--any? (<= (max (car it) (plist-get task :pos_line)) @@ -350,11 +350,12 @@ (defun lean-server-sync (&optional buf) "Synchronizes the state of BUF (or the current buffer, if nil) with the lean server" - (with-current-buffer (or buf (current-buffer)) - (lean-server-sync-roi) - (lean-server-send-command - 'sync (list :file_name (buffer-file-name) - :content (buffer-string))))) + (with-demoted-errors "lean server sync: %s" + (with-current-buffer (or buf (current-buffer)) + (lean-server-sync-roi) + (lean-server-send-command + 'sync (list :file_name (buffer-file-name) + :content (buffer-string)))))) (defvar-local lean-server-sync-timer nil) @@ -410,9 +411,10 @@ (defun lean-server-window-scroll-function-hook (wnd new-start-pos) (let ((buf (window-buffer wnd))) - (with-current-buffer buf - (lean-server-ensure-alive) - (lean-server-sync-roi)))) + (with-demoted-errors "lean scroll hook: %s" + (with-current-buffer buf + (lean-server-ensure-alive) + (lean-server-sync-roi))))) (defun lean-set-check-mode (mode) (setq lean-server-check-mode mode)