summaryrefslogtreecommitdiff
path: root/geiser-chez.el
diff options
context:
space:
mode:
authorjao <jao@gnu.org>2022-10-26 00:37:32 +0100
committerjao <jao@gnu.org>2022-10-26 00:37:32 +0100
commit3ad1c3807c25283bb344512b3be3da197200ba3a (patch)
tree1ef52891a6138c7293f8ce95f94f411bb711c7b9 /geiser-chez.el
parent4f8b5d17ba2436ca08e6ba442ef8dd5a8fa5a714 (diff)
downloadgeiser-chez-3ad1c3807c25283bb344512b3be3da197200ba3a.tar.gz
geiser-chez-3ad1c3807c25283bb344512b3be3da197200ba3a.tar.bz2
automatic reload of reverse library dependencies
when modifying and reloading a given library, all libraries that (transitively) use it are also reloaded now.
Diffstat (limited to 'geiser-chez.el')
-rw-r--r--geiser-chez.el10
1 files changed, 6 insertions, 4 deletions
diff --git a/geiser-chez.el b/geiser-chez.el
index b0a668c..1e847ef 100644
--- a/geiser-chez.el
+++ b/geiser-chez.el
@@ -136,7 +136,9 @@ Return its local name."
(if (listp (cadr args))
(format "(geiser:ge:eval '%s '%s)" (car args) (cadr args))
(format "(geiser:eval '%s '%s)" (car args) (cadr args))))
- ((load-file compile-file) (format "(geiser:load-file %s)" (car args)))
+ ((load-file compile-file)
+ (let ((lib (geiser-chez--current-library)))
+ (format "(geiser:load-file %s '%s)" (car args) (or lib "#f"))))
((no-values) "(geiser:no-values)")
(t (list (format "geiser:%s" proc) (mapconcat 'identity args " ")))))
@@ -193,9 +195,9 @@ Return its local name."
(col (or (cdr (assoc "column" loc)) (cdr (assoc "char" loc))))
(name (cdr (assoc "name" loc))))
(unless (string-prefix-p geiser-chez-scheme-dir file)
- (insert "\n" file (format ":%s" line))
- (when col (insert (format ":%s" col)))
- (when name (insert (format " (%s)" name)))))))
+ (insert "\n" file (format ":%s:" line))
+ (when col (insert (format "%s:" col)))
+ (when name (insert (format " (%s)" name)))))))
(geiser-edit--buttonize-files)
t))