calva

JR 2025-07-23T22:34:09.089449Z

I noticed that Slurp Sexp Forward regards the preprocessor discard reader macro (#_) as an sexp. So starting with

(do)
#_(def a :a)
(def b :b)
by doing Slurp Sexp Forward, I can get
(do
#_)(def a :a)
(def b :b)
Is this a (minor) bug? (video in thread)

JR 2025-07-26T19:45:55.291959Z

Here's an approach that I liked better, it treats ignored sexps as if they are sexps

2025-07-26T21:00:12.115019Z

I prefer the 2nd - "treats ignored sexps like sexps"

JR 2025-07-25T02:14:56.386469Z

There's a relatively easy fix for this that I put into the issue. It completely ignores the sexp following the discard reader macro. What do you think about the behavior? I was thinking that the ignored sexp would still be treated as an sexp, but now I'm not sure.

JR 2025-07-25T02:15:05.298489Z

JR 2025-07-23T22:35:11.978859Z

Note that this may be a somewhat desirable behavior with navigation or selection (although that may be up for debate - it was the navigation that was annoying me at first)

➕ 1
JR 2025-07-23T22:36:01.880189Z

JR 2025-07-23T22:36:39.063389Z

The video shows • Slurp Sexp Forward • navigation • selection

2025-07-23T22:37:26.648599Z

I second the notion that slurp and barf should not separate the ignore blot from its charge I am not certain how I feel about selection and motion...

JR 2025-07-24T00:42:19.868149Z

What got me for navigation/motion and selection is that they are supposed to be forwardSexp (move cursor forward sexp/form) and selectForwardSexp (select forward sexp). I don't think the discard reader symbol is either an sexp or a form. I'll file a bug soon, unless someone objects.

2025-07-24T01:00:23.503169Z

Hopefully it won't break that "evaluate current form" at either #_|42 or #_42| produces 42

JR 2025-07-24T01:02:36.843539Z

More moving pieces!

pez 2025-07-24T06:55:56.629049Z

It’s complicated. 😀