diff options
-rw-r--r-- | elisp/geiser-edit.el | 8 | ||||
-rw-r--r-- | elisp/geiser-racket.el | 3 |
2 files changed, 7 insertions, 4 deletions
diff --git a/elisp/geiser-edit.el b/elisp/geiser-edit.el index 8d25133..563d8c6 100644 --- a/elisp/geiser-edit.el +++ b/elisp/geiser-edit.el @@ -130,12 +130,14 @@ or following links in error buffers.") 'follow-link t) (defun geiser-edit--button-action (button) - (let ((loc (button-get button 'geiser-location))) - (when loc (geiser-edit--try-edit-location nil loc)))) + (let ((loc (button-get button 'geiser-location)) + (method (button-get button 'geiser-method))) + (when loc (geiser-edit--try-edit-location nil loc method)))) -(defun geiser-edit--make-link (beg end file line col) +(defun geiser-edit--make-link (beg end file line col &optional method) (make-button beg end :type 'geiser-edit--button + 'geiser-method method 'geiser-location (geiser-edit--make-location 'error file line col) 'help-echo "Go to error location")) diff --git a/elisp/geiser-racket.el b/elisp/geiser-racket.el index 7f00810..de66029 100644 --- a/elisp/geiser-racket.el +++ b/elisp/geiser-racket.el @@ -161,7 +161,8 @@ This function uses `geiser-racket-init-file' if it exists." (match-end 1) (match-string 1) (match-string 2) - (match-string 3))))) + (match-string 3) + 'window)))) (defun geiser-racket--display-error (module key msg) (when key |