I wonder if anyone else is seeing the same error in the latest slime.
Press RET any non-interactive part of the *slime-inspector* buffer and get a "wrong number of arguments" error instead of the intended "no object at point".
Here's a possible patch:
diff --git a/slime.el b/slime.el index 106b0fa..38df505 100644 --- a/slime.el +++ b/slime.el @@ -6645,16 +6645,16 @@ that value. 2. If point is on an action then call that action. 3. If point is on a range-button fetch and insert the range." (interactive) - (let ((opener (lexical-let ((point (slime-inspector-position))) + (let* ((opener (lexical-let ((point (slime-inspector-position))) (lambda (parts) (when parts (slime-open-inspector parts point))))) (new-opener (lambda (parts) (when parts - (slime-open-inspector parts))))) - (destructuring-bind (property value) - (slime-inspector-property-at-point) - (case property + (slime-open-inspector parts)))) + (property-at-point (slime-inspector-property-at-point)) + (value (second property-at-point))) + (case (first property-at-point) (slime-part-number (slime-eval-async `(swank:inspect-nth-part ,value) new-opener) @@ -6664,7 +6664,7 @@ that value. (slime-action-number (slime-eval-async `(swank::inspector-call-nth-action ,value) opener)) - (t (error "No object at point")))))) + (t (error "No object at point")))))
(defun slime-inspector-operate-on-click (event) "Move to events' position and operate the part."
This works, too, and is much simpler. Also more in tune with the cl-style the remaining slime.el
diff --git a/slime.el b/slime.el index 106b0fa..a798763 100644 --- a/slime.el +++ b/slime.el @@ -6652,7 +6652,7 @@ that value. (new-opener (lambda (parts) (when parts (slime-open-inspector parts))))) - (destructuring-bind (property value) + (destructuring-bind (&optional property value) (slime-inspector-property-at-point) (case property (slime-part-number
On Wed, Jul 3, 2013 at 1:10 PM, João Távora joaotavora@gmail.com wrote:
I wonder if anyone else is seeing the same error in the latest slime.
Press RET any non-interactive part of the *slime-inspector* buffer and get a "wrong number of arguments" error instead of the intended "no object at point".
Here's a possible patch:
diff --git a/slime.el b/slime.el index 106b0fa..38df505 100644 --- a/slime.el +++ b/slime.el @@ -6645,16 +6645,16 @@ that value. 2. If point is on an action then call that action. 3. If point is on a range-button fetch and insert the range." (interactive)
- (let ((opener (lexical-let ((point (slime-inspector-position)))
- (let* ((opener (lexical-let ((point (slime-inspector-position))) (lambda (parts) (when parts (slime-open-inspector parts point))))) (new-opener (lambda (parts) (when parts
(slime-open-inspector parts)))))
- (destructuring-bind (property value)
(slime-inspector-property-at-point)
(case property
(slime-open-inspector parts))))
(property-at-point (slime-inspector-property-at-point))
(value (second property-at-point)))
- (case (first property-at-point) (slime-part-number (slime-eval-async `(swank:inspect-nth-part ,value) new-opener)
@@ -6664,7 +6664,7 @@ that value. (slime-action-number (slime-eval-async `(swank::inspector-call-nth-action ,value) opener))
(t (error "No object at point"))))))
(t (error "No object at point")))))
(defun slime-inspector-operate-on-click (event) "Move to events' position and operate the part."
-- João Távora