From 9b0386991c360391c7b48de5451108b939ecf314 Mon Sep 17 00:00:00 2001 From: Lockywolf Date: Wed, 7 Aug 2019 13:05:51 +0800 Subject: Add error reporting about missing symbols to geiser-edit.el Add (chibi filesystem) import to geiser.sld --- elisp/geiser-edit.el | 8 +++++--- scheme/chibi/geiser/geiser.sld | 12 +++++++++++- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/elisp/geiser-edit.el b/elisp/geiser-edit.el index 6754472..541363d 100644 --- a/elisp/geiser-edit.el +++ b/elisp/geiser-edit.el @@ -237,12 +237,14 @@ With prefix, asks for the symbol to edit." (geiser-completion--read-symbol "Edit symbol: "))) (cmd `(:eval (:ge symbol-location ',symbol))) (marker (point-marker))) - (condition-case-unless-debug err + (condition-case-unless-debug err-of-sym (progn (geiser-edit--try-edit symbol (geiser-eval--send/wait cmd)) (when marker (xref-push-marker-stack))) - (error (condition-case-unless-debug nil + (error (condition-case-unless-debug err-of-mod (geiser-edit-module-at-point) - (error (error (error-message-string err)))))))) + (error (error "Geiser:cannot edit symbol at point\nSymbol error message:%s\nModule error message:%s" + (error-message-string err-of-sym) + (error-message-string err-of-mod)))))))) (defun geiser-pop-symbol-stack () "Pop back to where \\[geiser-edit-symbol-at-point] was last invoked." diff --git a/scheme/chibi/geiser/geiser.sld b/scheme/chibi/geiser/geiser.sld index 700a9b3..8e43fb8 100644 --- a/scheme/chibi/geiser/geiser.sld +++ b/scheme/chibi/geiser/geiser.sld @@ -8,5 +8,15 @@ ;TODO: geiser:symbol-location ; implement this interface in [[file://./geiser.scm#geiser:symbol-location]] in order to make proper cross-referencing working. geiser:module-location geiser:newline) - (import (scheme small) (chibi modules) (chibi) (meta) (chibi ast) (chibi string) (srfi 1) (srfi 95) (chibi show)) + (import + (scheme small) + (chibi modules) + (chibi) + (chibi filesystem) + (meta) + (chibi ast) + (chibi string) + (srfi 1) + (srfi 95) + (chibi show)) (include "geiser.scm")) -- cgit v1.2.3