Fork me on GitHub
#vim
<
2020-07-04
>
Chase16:07:57

I know fireplace is pretty minimal (why I love it) but is there a way to see some previous evaluations? Sometimes I miss having a log of things when trying to explore data.

Chase17:07:04

Side questions: I'm trying to cut out some chaff from my init.vim. Do I need the vim-classpath and vim-salve plugins when using vim fireplace? I always use a nrepl so I think I can cut those out. I use clojure.vim/async-clj-omni for auto completion with fireplace. Any other tools you folks use often that I might be missing out on?

noisesmith17:07:11

I think the use case for vim-classpath is the ability to visit source for out-of-project definitions

noisesmith17:07:45

it takes about 1000 times longer to load than the average plugin

Chase17:07:10

That's why I'm hoping to eliminate it!

noisesmith17:07:56

if you don't need go-to-source for jars in m2 cache, I'd skip it (or at least install it as an on-demand extension rather than autoload)

Chase17:07:03

Fireplace, itself, is doing a weird thing too when I do my first evaluation. The cursor bounces from the expression down to the command menu in the bottom of the buffer a few times until it evaluates. Takes a few seconds but then after that it's all normal.

noisesmith17:07:13

regarding seeing execution history, that's why I use neoterm for evaluation - I'd rather just use a repl in a terminal and have a record of everything executed

noisesmith17:07:28

I use that instead of fireplace 95% of the time

Chase17:07:54

Oh really? So you aren't evaluating and coding in your file buffer but straight in the repl?

noisesmith17:07:55

I have fireplace as an optional package and usually don't bother loading it

noisesmith17:07:22

neoterm defines a command that sends a text object or visual selection to the terminal

noisesmith17:07:25

that's all I need

noisesmith17:07:56

the one thing that is harder than it should be - it doesn't have any way to automatically ensure the repl is in the current namespace

noisesmith17:07:22

I need to do that by hand, but if my namespaces are well designed I'm only editing one at a time anyway

noisesmith17:07:47

I also use (require 'some.ns :reload) instead of sending whole files

noisesmith17:07:34

@chase-lambert I know my choices in tooling are idiosyncratic - I know clojure better than I know any editor tooling and I prefer it that way (saves me a lot of pain when the abstractions leak / collapse) so I like the tooling that is closest to just using clojure directly

Chase18:07:00

It's an interesting approach for sure. I've bookmarked neoterm and will check it out. Going to stick with fireplace for now

noisesmith18:07:30

it's straightforward to compromise - use an nrepl client inside neoterm and send commands there if you want a buffer to hold the output, use fireplace connected to the same server for the normal commands

noisesmith18:07:12

also I believe fireplace does have commands to use / reuse the result of previous execution, but I prefer to use my existing repl knowledge rather than figuring out that model

Chase19:07:24

Sounds like the right approach. I appreciate it

dave19:07:30

@chase-lambert it's also worth looking into https://github.com/Olical/conjure , if you want repl integration and a log buffer 🙂

Chase21:07:39

Edit: was able to configure the Conjure hud to my liking. And I like the easy access to the log too. This could work great!

💯 3