@nate fwiw, vim-jack-in can open the repl in tmux
I think it might even be able to figure out that it's inside tmux and use tmux automagically? I remember using vim-jack-in inside tmux and being pleasantly surprised that my REPL opened in a tmux window
It does, yep!
💯
Is there a way to configure pretty printing at the moment? At first, I thought conjure was leveraging nrepl-middleware to print to the log buffer, but i haven't been able to do (set! nrepl.middleware.print/*print-fn* zprint.core/zprint)
so perhaps not?
Nice! Glad to hear it! Should have it released this week too 😄
It is indeed using nREPL for pprint
One sec will check
Conjure sends conjure.internal/pprint
to the REPL on connection and sets nrepl.middleware.print/print
for each eval
I don't think you can just set the print-fn to any old fn, I think it has to have a certain signature
:code (.. "(ns conjure.internal"
" (:require [clojure.pprint :as pp]))"
"(defn pprint [val w opts]"
" (apply pp/write val"
" (mapcat identity (assoc opts :stream w))))")}
So I think it needs to take value, writer and options map.
hm. I was following the example here https://nrepl.org/nrepl/usage/misc.html#_pretty_printing
Pretty sure if you don't meet that contract it silently fails and just falls through to a default?
Including the zprint-pprint
wrapper function?
it's funny they give an example of setting print-fn
and then afterwards explain the wrapper. sorry if the error is between the keyboard and computer here!
Yeah, maybe the docs could be improved there :thinking_face: I remember being thoroughly confused when I was first implementing the print option at the nREPL message level
I tried using the wrapper, but to no effect. None of the changes seem to affect the log printing
:thinking_face:
Not really sure what's going on right now but I'm off to cook some dinner, might be worth running it past #cider or #nrepl? I feel like it's more a problem with getting that config exactly right
Oops I accidentally slipped and made it configurable on develop with g:conjure#client#clojure#nrepl#eval#print_function
. Feel free to give that a go!
Thanks, I'll give it a go!
Thanks a bunch. I was able to get it to work with that configuration. I'll continue to investigate doing it with nrepl directly though, because I wouldn't want for you to add unnecessary configuration bloat if you don't have to!