<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>