nrepl.middleware.session/gather-initial-bindings discards any existing binding of *print-namespace-maps* (unconditionally setting it to true). I assume this is intentional, since the other *print- vars (`*print-meta*`, *print-length*, and *print-level* ) are explicitly shadowed from their existing bindings in the immediately-preceding lines. Does anyone know why?
Related: is it possible somehow to change or override this so that a fresh nrepl session will have *print-namespace-maps* bound to false? My brain can't parse namespace-printed maps; ideally I would be able to disable them unconditionally everywhere in every context. Currently, I have to turn this off by hand in each new REPL.
Not sure why I set it always to true, to be honest. It probably should inherit outer value like everything else. Does setting it to false via config work? https://nrepl.org/nrepl/usage/server.html#dynamic-var-defaults
Just tested, it does not seem to.
It is actually set to false by default, but overriden to true by default in the repl (clojure.main) as it is intended to be more compact for human consumption
> Just tested, it does not seem to.
Correction: It did not work in ~/.nrepl.edn but did work in ~/.nrepl/nrepl.edn. Thanks for the tip!