summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cider-apropos.el2
-rw-r--r--cider-doc.el26
2 files changed, 9 insertions, 19 deletions
diff --git a/cider-apropos.el b/cider-apropos.el
index bd8f8d9c..86052c42 100644
--- a/cider-apropos.el
+++ b/cider-apropos.el
@@ -57,7 +57,7 @@ the symbol found by the apropos search as argument."
(define-button-type 'apropos-special-form
'apropos-label "Special form"
'apropos-short-label "s"
- 'face 'apropos-misc-button
+ 'face 'font-lock-keyword-face
'help-echo "mouse-2, RET: Display more help on this special form"
'follow-link t
'action (lambda (button)
diff --git a/cider-doc.el b/cider-doc.el
index 29abd39a..2b34444c 100644
--- a/cider-doc.el
+++ b/cider-doc.el
@@ -396,8 +396,10 @@ Tables are marked to be ignored by line wrap."
(depr (nrepl-dict-get info "deprecated"))
(macro (nrepl-dict-get info "macro"))
(special (nrepl-dict-get info "special-form"))
- (forms (nrepl-dict-get info "forms-str"))
- (args (nrepl-dict-get info "arglists-str"))
+ (forms (when-let ((str (nrepl-dict-get info "forms-str")))
+ (split-string str "\n")))
+ (args (when-let ((str (nrepl-dict-get info "arglists-str")))
+ (split-string str "\n")))
(doc (or (nrepl-dict-get info "doc")
"Not documented."))
(url (nrepl-dict-get info "url"))
@@ -426,22 +428,10 @@ Tables are marked to be ignored by line wrap."
(emit (concat " "(cider-font-lock-as 'java-mode iface)))))
(when (or super ifaces)
(insert "\n"))
- (when (or forms args)
- (insert " ")
- (save-excursion
- (emit (cider-font-lock-as-clojure
- ;; All `defn's use ([...] [...]), but some special forms use
- ;; (...). We only remove the parentheses on the former.
- (replace-regexp-in-string "\\`(\\(\\[.*\\]\\))\\'" "\\1"
- (or forms args)))))
- ;; It normally doesn't happen, but it's technically conceivable for
- ;; the args string to contain unbalanced sexps, so `ignore-errors'.
- (ignore-errors
- (forward-sexp 1)
- (while (not (looking-at "$"))
- (insert "\n")
- (forward-sexp 1)))
- (forward-line 1))
+ (when-let ((forms (or forms args)))
+ (dolist (form forms)
+ (insert " ")
+ (emit (cider-font-lock-as-clojure form))))
(when (or special macro)
(emit (if special "Special Form" "Macro") 'font-lock-variable-name-face))
(when added