[slime-cvs] CVS slime
CVS User trittweiler
trittweiler at common-lisp.net
Fri Feb 27 19:02:44 UTC 2009
Update of /project/slime/cvsroot/slime
In directory cl-net:/tmp/cvs-serv23908
Modified Files:
ChangeLog hyperspec.el slime.el
Log Message:
* hyperspec.el (common-lisp-hyperspec-symbols): Add links to
reader macros.
* slime.el (slime-reader-macro-at-point): New function.
(slime-hyperspec-lookup): Call it.
Adapted from Stas Boukarev.
--- /project/slime/cvsroot/slime/ChangeLog 2009/02/27 17:37:14 1.1701
+++ /project/slime/cvsroot/slime/ChangeLog 2009/02/27 19:02:44 1.1702
@@ -1,5 +1,15 @@
2009-02-27 Tobias C. Rittweiler <tcr at freebits.de>
+ * hyperspec.el (common-lisp-hyperspec-symbols): Add links to
+ reader macros.
+
+ * slime.el (slime-reader-macro-at-point): New function.
+ (slime-hyperspec-lookup): Call it.
+
+ Adapted from Stas Boukarev.
+
+2009-02-27 Tobias C. Rittweiler <tcr at freebits.de>
+
* slime.el: Rename `slime-symbol-name-at-point' to
`slime-symbol-at-point'.
--- /project/slime/cvsroot/slime/hyperspec.el 2006/12/07 07:36:54 1.11
+++ /project/slime/cvsroot/slime/hyperspec.el 2009/02/27 19:02:44 1.12
@@ -1127,7 +1127,36 @@
("write-to-string" "f_wr_to_.htm")
("y-or-n-p" "f_y_or_n.htm")
("yes-or-no-p" "f_y_or_n.htm")
- ("zerop" "f_zerop.htm"))))
+ ("zerop" "f_zerop.htm")
+ ;; Reader macros
+ ("#" "02_dh.htm")
+ ("##" "02_dhp.htm")
+ ("#'" "02_dhb.htm")
+ ("#(" "02_dhc.htm")
+ ("#*" "02_dhd.htm")
+ ("#:" "02_dhe.htm")
+ ("#." "02_dhf.htm")
+ ("#=" "02_dho.htm")
+ ("#+" "02_dhq.htm")
+ ("#-" "02_dhr.htm")
+ ("#<" "02_dht.htm")
+ ("#A" "02_dhl.htm")
+ ("#B" "02_dhg.htm")
+ ("#C" "02_dhk.htm")
+ ("#O" "02_dhh.htm")
+ ("#P" "02_dhn.htm")
+ ("#R" "02_dhj.htm")
+ ("#S" "02_dhm.htm")
+ ("#X" "02_dhi.htm")
+ ("#\\" "02_dha.htm")
+ ("#|" "02_dhs.htm")
+ ("\"" "02_de.htm")
+ ("'" "02_dc.htm")
+ ("`" "02_df.htm")
+ ("," "02_dg.htm")
+ ("(" "02_da.htm")
+ (")" "02_db.htm")
+ (";" "02_dd.htm"))))
;;; FORMAT character lookup by Frode Vatvedt Fjeld <frodef at acm.org> 20030902
;;;
--- /project/slime/cvsroot/slime/slime.el 2009/02/27 17:37:14 1.1136
+++ /project/slime/cvsroot/slime/slime.el 2009/02/27 19:02:44 1.1137
@@ -4519,7 +4519,9 @@
(defun slime-hyperspec-lookup (symbol-name)
"A wrapper for `hyperspec-lookup'"
- (interactive (list (let* ((symbol-at-point (slime-symbol-at-point))
+ (interactive (list (let* ((symbol-at-point
+ (or (slime-reader-macro-at-point)
+ (slime-symbol-at-point)))
(stripped-symbol
(and symbol-at-point
(downcase
@@ -8197,6 +8199,13 @@
"Return the sexp at point as a string, othwise signal an error."
(or (slime-string-at-point) (error "No string at point.")))
+(defun slime-reader-macro-at-point ()
+ (let ((regexp "\\(#.?\\)\\|\\([\"',`';()]\\)"))
+ (save-match-data
+ (when (looking-back regexp)
+ (buffer-substring-no-properties (match-beginning 0)
+ (match-end 0))))))
+
(defun slime-input-complete-p (start end)
"Return t if the region from START to END contains a complete sexp."
(save-excursion
More information about the slime-cvs
mailing list