diff options
author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-10-30 23:48:18 +0200 |
---|---|---|
committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-10-30 23:48:18 +0200 |
commit | 6b31cd5a246ada814327aaffd3fcfe38eaa7dbcf (patch) | |
tree | 6a2e01bcf996a0552e23a42371a3b39fcf1a93e2 | |
parent | 9ad7d3a695d4543bd530e42252d36456914be5be (diff) | |
download | geiser-guile-6b31cd5a246ada814327aaffd3fcfe38eaa7dbcf.tar.gz geiser-guile-6b31cd5a246ada814327aaffd3fcfe38eaa7dbcf.tar.bz2 |
Guile: really support R6RS libs
-rw-r--r-- | elisp/geiser-guile.el | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/elisp/geiser-guile.el b/elisp/geiser-guile.el index 51de947..c406d88 100644 --- a/elisp/geiser-guile.el +++ b/elisp/geiser-guile.el @@ -134,7 +134,10 @@ This function uses `geiser-guile-init-file' if it exists." (t (format "ge:%s %s" proc (geiser-guile--linearize-args args))))) (defconst geiser-guile--module-re - "(\\(?:define-module\\|library\\) +\\(([^)]+)\\)") + "(define-module +\\(([^)]+)\\)") + +(defconst geiser-guile--library-re + "(library +\\(([^)]+)\\)") (defun geiser-guile--get-module (&optional module) (cond ((null module) @@ -142,7 +145,8 @@ This function uses `geiser-guile-init-file' if it exists." (ignore-errors (while (not (zerop (geiser-syntax--nesting-level))) (backward-up-list))) - (if (re-search-backward geiser-guile--module-re nil t) + (if (or (re-search-backward geiser-guile--module-re nil t) + (looking-at geiser-guile--library-re)) (geiser-guile--get-module (match-string-no-properties 1)) :f))) ((listp module) module) |