summaryrefslogtreecommitdiff
path: root/vim/bundle/slimv/slime/contrib/swank-hyperdoc.lisp
diff options
context:
space:
mode:
authorNick Shipp <nick@shipp.ninja>2017-05-07 09:04:01 -0400
committerNick Shipp <nick@shipp.ninja>2017-05-07 09:04:01 -0400
commitc012f55efda29f09179e921cf148d79deb57616e (patch)
treeff0ad37f22622d51194cab192a2aa4b0106d7ad0 /vim/bundle/slimv/slime/contrib/swank-hyperdoc.lisp
parent4ca8f6608883d230131f8a9e8b6d6c091c516049 (diff)
Much maturering of vim configs
Diffstat (limited to 'vim/bundle/slimv/slime/contrib/swank-hyperdoc.lisp')
-rw-r--r--vim/bundle/slimv/slime/contrib/swank-hyperdoc.lisp18
1 files changed, 18 insertions, 0 deletions
diff --git a/vim/bundle/slimv/slime/contrib/swank-hyperdoc.lisp b/vim/bundle/slimv/slime/contrib/swank-hyperdoc.lisp
new file mode 100644
index 0000000..1e34a1d
--- /dev/null
+++ b/vim/bundle/slimv/slime/contrib/swank-hyperdoc.lisp
@@ -0,0 +1,18 @@
+(in-package :swank)
+
+(defslimefun hyperdoc (string)
+ (let ((hyperdoc-package (find-package :hyperdoc)))
+ (when hyperdoc-package
+ (multiple-value-bind (symbol foundp symbol-name package)
+ (parse-symbol string *buffer-package*)
+ (declare (ignore symbol))
+ (when foundp
+ (funcall (find-symbol (string :lookup) hyperdoc-package)
+ (package-name (if (member package (cons *buffer-package*
+ (package-use-list
+ *buffer-package*)))
+ *buffer-package*
+ package))
+ symbol-name))))))
+
+(provide :swank-hyperdoc)