<div>Here is a fix for an annoyance similar to the one I described in</div><div>my previous email: Pressing M-. on the first position of the</div><div>*slime-apropos* raises a "args out of range error".</div><div>
<br></div><div>Marco, I'm cc'ing you, since I believe the error stems from the interaction</div><div>of your `slime-fancy-inspector' contrib with</div><div>`slime-inspector-property-at-point'.</div><div><br>
</div><div>It could be a easy fix in slime.el</div><div><br></div><div>diff --git a/slime.el b/slime.el</div><div>index 106b0fa..857e68f 100644</div><div>--- a/slime.el</div><div>+++ b/slime.el</div><div>@@ -6636,7 +6636,8 @@ position of point in the current buffer."</div>
<div> when value</div><div> return (list property value)))))</div><div> (or (funcall find-property (point))</div><div>- (funcall find-property (1- (point))))))</div><div>
+ (and (> (point) (point-min))</div><div>+ (funcall find-property (1- (point)))))))</div><div> </div><div> (defun slime-inspector-operate-on-point ()</div><div> "Invoke the command for the text at point.</div>
<div><br></div><div>But the real problem is that `slime-fancy-inspector' contrib places</div><div>its `slime-edit-inspector-part' in `slime-edit-definition-hooks', thus</div><div>causing `slime-inspector-operate-on-point' to be called uselessly in</div>
<div>non-inspector contexts. </div><div><br></div><div>So maybe there's a better fix within the spirit of</div><div>`slime-edit-definition-hooks'</div><div><br></div><div>diff --git a/contrib/slime-fancy-inspector.el b/contrib/slime-fancy-inspector.el</div>
<div>index 8918f90..bef8d1c 100644</div><div>--- a/contrib/slime-fancy-inspector.el</div><div>+++ b/contrib/slime-fancy-inspector.el</div><div>@@ -22,6 +22,7 @@</div><div> ,(slime-definition-at-point t))))</div>
<div> </div><div> (defun slime-edit-inspector-part (name &optional where)</div><div>+ (and (eq major-mode 'slime-inspector-mode)</div><div> (destructuring-bind (&optional property value)</div><div> (slime-inspector-property-at-point)</div>
<div> (when (eq property 'slime-part-number)</div><div>@@ -34,6 +35,6 @@</div><div> (list (make-slime-xref :dspec `(,name)</div><div> :location location))</div>
<div> name</div><div>- where))))))</div><div>+ where)))))))</div><div><br></div><div><br></div><div>-- </div><div>João Távora</div>