calva 2025-04-25

Is debugging supported for Babashka?

Another way is to run your script in the JVM, use the debug tools you're used to and then return to the glorious wonder world of bb Use bb print-deps to print a deps.edn you can use for development in a JVM

πŸ™ 1

No. This needs support in the #babashka nrepl to provide. But inline def debugging of course works. Very often that is as good as, even better than, the debugger. (And sometimes it is not as good.)

ok, thanks for clarifying

πŸ™ 1

Can I move the calva repl window in VSC to the window bottom, where my terminal is, into another tab?

The repl window is a regular file/editor and can only go where editors can go. So, no. Until the VS Code team fixes it, it can’t be moved into the bottom panel. Are you using it as a prompt or for output?

Mainly for output. Is there another way to print the output at the terminal etc?

i.e. the bottom of the window

Yes, search for calva output destination in Settings. I recommend setting them all to "terminal".

I guess I have have both, repl and terminal?

I’m not following.

like this? "evalResults": ["terminal", "repl-window"],

Perplexity AI suggested this option : ))

"calva.outputDestinations": {
  "evaluationResults": ["repl-window"],
  "evaluationOutput": ["calva-says-output-channel", "calva-output-terminal"],
  "otherOutput": ["calva-output-terminal"]
}

It’s a pretty neat idea! I often use their hallucinations to get ideas for how to design API and settings. Unfortunately the output destination configurability was made without AI assistance. πŸ˜ƒ Anyway, I have them all set to terminal and Calva is configured to not open the REPL Window automatically. It’s a bliss.

πŸ’‘ 1
πŸ˜… 1
1

yes, the only difference is the colour scheme of the terminal output

syntax highlight for end structures etc

There are a few more differences πŸ˜ƒ but yeah, ANSI coloring in the terminal.

βœ”οΈ 1

I use the terminal output, but have that terminal automatically moved into a window/tab on jack-in. (so, the opposite πŸ™ƒ

The terminals behave a lot like all views should behave. You can place them where you want. It is totally beyond me why they have made the UI so that there are like five different kinds of views with random placement policies.