summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJose Antonio Ortega Ruiz <jao@gnu.org>2010-11-26 16:12:24 +0100
committerJose Antonio Ortega Ruiz <jao@gnu.org>2010-11-26 16:12:24 +0100
commit0233627d20dd483745c8386b2eb5ff26b355f854 (patch)
treeb0d114edc4ead058d661f199d14e04f055cbb88b
parent931c38b796dd90897c7039aa7a9afde70131dbb8 (diff)
downloadgeiser-guile-0233627d20dd483745c8386b2eb5ff26b355f854.tar.gz
geiser-guile-0233627d20dd483745c8386b2eb5ff26b355f854.tar.bz2
Doc browser: better link highlighting
We were adding extra spaces to function signatures.
-rw-r--r--elisp/geiser-autodoc.el5
-rw-r--r--elisp/geiser-doc.el19
2 files changed, 12 insertions, 12 deletions
diff --git a/elisp/geiser-autodoc.el b/elisp/geiser-autodoc.el
index b1feef3..5612296 100644
--- a/elisp/geiser-autodoc.el
+++ b/elisp/geiser-autodoc.el
@@ -143,7 +143,8 @@ when `geiser-autodoc-display-module-p' is on."
(propertize str 'face 'geiser-font-lock-autodoc-identifier)))
(defun geiser-autodoc--str* (full-signature)
- (geiser-autodoc--str (list (car full-signature)) full-signature))
+ (let ((geiser-font-lock-autodoc-current-arg 'default))
+ (geiser-autodoc--str (list (car full-signature)) full-signature)))
(defsubst geiser-autodoc--value-str (proc module value)
(let ((name (geiser-autodoc--id-name proc module)))
@@ -167,7 +168,7 @@ when `geiser-autodoc-display-module-p' is on."
(insert " |"))))
(delete-char -2)
(insert ")")
- (buffer-string)))))
+ (buffer-substring (point-min) (point))))))
(defun geiser-autodoc--autodoc (path &optional keep-cached)
(let ((signs (geiser-autodoc--get-signatures (mapcar 'car path)
diff --git a/elisp/geiser-doc.el b/elisp/geiser-doc.el
index 37c069e..19e2075 100644
--- a/elisp/geiser-doc.el
+++ b/elisp/geiser-doc.el
@@ -150,18 +150,18 @@ help (e.g. browse an HTML page) implementing this method.")
(defun geiser-doc--insert-button (target module impl &optional sign)
(let ((link (geiser-doc--make-link target module impl))
- (text (format "%s" (or (and sign (geiser-autodoc--str* sign))
+ (text (format "%s" (or (and sign
+ (geiser-autodoc--str* sign))
target
module)))
(help (format "%smodule %s"
(if target (format "%s in " target) "")
(or module "<unknown>"))))
- (apply 'insert-text-button
- `(,text
- :type geiser-doc--button
- ,@(and (not sign) (list 'face 'geiser-font-lock-doc-link))
- geiser-link ,link
- help-echo ,help))))
+ (insert-text-button text
+ :type 'geiser-doc--button
+ 'face 'geiser-font-lock-doc-link
+ 'geiser-link link
+ 'help-echo help)))
(defun geiser-doc--xbutton-action (button)
(when geiser-doc--buffer-link
@@ -238,7 +238,7 @@ help (e.g. browse an HTML page) implementing this method.")
(let ((name (car w))
(signature (cdr (assoc 'signature w)))
(info (cdr (assoc 'info w))))
- (insert (format "\t- "))
+ (insert "\t- ")
(if module
(geiser-doc--insert-button name module impl signature)
(geiser-doc--insert-button nil name impl))
@@ -294,8 +294,7 @@ help (e.g. browse an HTML page) implementing this method.")
(geiser-doc--with-buffer
(erase-buffer)
(geiser-doc--insert-title
- (geiser-autodoc--str (list (symbol-name symbol) 0)
- (cdr (assoc 'signature ds))))
+ (geiser-autodoc--str* (cdr (assoc 'signature ds))))
(newline)
(insert (or (cdr (assoc 'docstring ds)) ""))
(geiser-doc--buttonize-modules impl)