Fork me on GitHub
#inf-clojure
<
2023-03-04
>
jjttjj19:03:15

In use-package's :bind I'm trying to do some custom stuff before eval'ing a defun. (This is a minimal repro without doing the extra stuff.)

:bind
  (:map inf-clojure-minor-mode-map
   ("C-c C-c" .
       (lambda () (interactive) (inf-clojure-eval-defun))))
But getting
error in process filter: string-prefix-p: Wrong type argument: symbolp, (lambda nil (interactive) (inf-clojure-eval-defun))
This seems to be due to the call here: https://github.com/clojure-emacs/inf-clojure/blob/fb9b5ea55f9ef02be32660cc29df15023968fb78/inf-clojure.el#L712 Where symbol-name is called on the lambda expression. The debugger shows:
symbol-name((lambda nil (interactive "") (inf-clojure-eval-defun)))
Is this a bug/something worth supporting? I added a symbolp check for the this-command and things seem to be working, but I'm not fully understanding yet what that condition check in the preoutput filter is doing and if there are things this will break