[clim-desktop-cvs] CVS clim-desktop
thenriksen
thenriksen at common-lisp.net
Sun Apr 30 12:10:05 UTC 2006
Update of /project/clim-desktop/cvsroot/clim-desktop
In directory clnet:/tmp/cvs-serv15722
Modified Files:
swine.lisp
Log Message:
Make `definition-at-mark' behave as in SLIME (this probably requires
more extensive redesign).
--- /project/clim-desktop/cvsroot/clim-desktop/swine.lisp 2006/04/23 15:34:12 1.3
+++ /project/clim-desktop/cvsroot/clim-desktop/swine.lisp 2006/04/30 12:10:05 1.4
@@ -43,13 +43,15 @@
(list obj)))
(defun definition-at-mark (mark syntax)
- "Return the text of the definition at mark."
- (let ((m (clone-mark mark)))
- (end-of-definition m syntax)
- (let ((end (offset m)))
- (beginning-of-definition m syntax)
- (buffer-substring (buffer mark) (offset m) end))))
-
+ "Return the text of the definition at mark."
+ (let* ((definition (form-toplevel (or (form-around syntax (offset mark))
+ (form-after syntax (offset mark)))
+ syntax))
+ (definition-pos (start-offset definition)))
+ (buffer-substring (buffer mark)
+ definition-pos
+ (end-offset definition))))
+
(defun expression-at-mark (mark syntax)
"Return the text of the expression at mark."
(let ((m (clone-mark mark)))
More information about the Clim-desktop-cvs
mailing list