What is the rationale for setting conjure#client#clojure#nrepl#connection#auto_repl#enabled to false (in Practicalli Astronvim User Config)?
And, as a rather embarrasingly follow-up question: how do I view/change this option? In vanilla neovim I can use e.g. :set sts? and :set sts=4 to view/change the value of softtabstop, but in astro this does not seem to work for me.
I appreciate disabling the auto repl is a bias of mine. I would rather have a not connected message that start a REPL that I hadnt configured. I use Clojure CLI with aliases to configure the REPL startup. My understanding was that auto_repl started a Babashka repl by default, which I dont think would support my workflow as it wouldnt have the tools I use.
To override my config, you could add the following to any .lua file in lua/plugins , e.g. lua/plugins/clojure.lua or lua/plugins/worrelsilk.lua .
Or update the configuration directly in lua/community.lua (although this means managing merging if pulling updates from Practicalli repo (there shouldnt be to many)
{
"AstroNvim/astrocore",
opts = {
options = {
g = {
-- auto repl (babashka)
["conjure#client#clojure#nrepl#connection#auto_repl#enabled"] = true,
["conjure#client#clojure#nrepl#connection#auto_repl#hidden"] = false,
["conjure#client#clojure#nrepl#connection#auto_repl#cmd"] = "bb nrepl-server localhost:$port",
["conjure#client#clojure#nrepl#eval#auto_require"] = false,
-- Test runner: "clojure", "clojuresCRipt", "kaocha"
["conjure#client#clojure#nrepl#test#runner"] = "clojure",
},
},
},
},With hindsight, I could probably move my biased conjure workflow options into lua/plugins/practicalli.lua and leave conjure defaults as they are. Then people could disable that whole lua file which if full of my opinions laughcry.
Something to try out at the weekend 🙂
Thanks for the elaboration!
It seems that lua/plugins/clojure.lua and lua/community.lua are waltzing together: when in one file the first if true then return {} end form is uncommented, it should be commented out in the other file, right?
At least, for my current download of your files, maybe I'm behind a few commits...
Yes, using one or the other is recommended.
The lua/community.lua uses the astrocommunity clojure pack with conjure, parinfer and paredit (sexp).
The lua/plugins/clojure.lua is for a custom configuration for Clojure, with examples of plugins you could use.
I did a test today and I can move all my Conjure configuration options into lua/plugins/practicalli.lua and have things working as I wish. The practicalli lua file can be disabled if my options (more than for just clojre) are not required. I'll push an update to the Practicalli Astro config tonight hopefully.
I will recommend people create their own alternative to the lua/plugins/practicalli.lua configuration file if they want to use their own plugin options, key bindings, colorscheme and dashboard logo.
FYI. I also hide the Conjure Hud (the floating REPL log) via Conjure options, as I have Portal connected to the Clojure project and listening to all evaluation results (over nrepl). I also have a mulog publisher that sends log events to Portal.
I'm making some changes to the Practicalli Neovim configuration (AstroNvim4) over the next few days
• all my personal neovim options (and associated workflow biases) will only be in lua/plugins/practicalli.lua so you can easily disable them (I encourage you to create your own "lua/plugins/personal.lua" customisation so any changes from upstream will be easier to merge
• rename the repo to `practicalli/astro-config` practicalli/astro because its much easier to write and say 🙂 - GitHub should redirect when pulling updates
• update Practicalli Neovim install with new repo and further info on how to use the config effectively (especially with your own customisations)
• create the first official release of the config 🙂
If I have time, there are lots of things to add to Practicalli Neovim book too (including a few more plugins I'm using in the config)