summaryrefslogtreecommitdiff
path: root/geiser/doc.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-06-04 14:42:57 +0200
committerJose Antonio Ortega Ruiz <jao@gnu.org>2013-06-04 14:50:22 +0200
commit6c9efbc61592aa24429d5c29b641b7f1ff1eff51 (patch)
tree81b49a28d5eef4ae724b62b860972d75fb5ce8cd /geiser/doc.scm
parent8624afc1961d468542cb4090c99187dc2745542f (diff)
downloadgeiser-guile-6c9efbc61592aa24429d5c29b641b7f1ff1eff51.tar.gz
geiser-guile-6c9efbc61592aa24429d5c29b641b7f1ff1eff51.tar.bz2
Guile: Fix subr argument name retrieval for Guile >= 2.0.9.
Diffstat (limited to 'geiser/doc.scm')
-rw-r--r--geiser/doc.scm7
1 files changed, 5 insertions, 2 deletions
diff --git a/geiser/doc.scm b/geiser/doc.scm
index ebb8e1d..185b204 100644
--- a/geiser/doc.scm
+++ b/geiser/doc.scm
@@ -129,8 +129,11 @@
(rest . ,(car (cddddr arglist)))))
(define (doc->args proc)
- (define proc-rx "-- Scheme Procedure: ([^[\n]+)\n")
- (define proc-rx2 "-- Scheme Procedure: ([^[\n]+\\[[^\n]*(\n[^\n]+\\]+)?)")
+ ;; Guile 2.0.9+ uses the (texinfo ...) modules to produce
+ ;; `guile-procedures.txt', and the output has a single hyphen, whereas
+ ;; `makeinfo' produces two hyphens.
+ (define proc-rx "--? Scheme Procedure: ([^[\n]+)\n")
+ (define proc-rx2 "--? Scheme Procedure: ([^[\n]+\\[[^\n]*(\n[^\n]+\\]+)?)")
(let ((doc (object-documentation proc)))
(and doc
(let ((match (or (string-match proc-rx doc)