this isn't directly related to emacs but I figured anyone who'd know would more likely be here; is the LSP protocol 'extendible'? Or is it a very specific set of features its meant to answer to / wrap
there's no XY problem here, btw, I'm not fully sure why I'm curious myself
Is it just me or is MELPA very slow today?
I'm trying to get started with clojure-lsp for the nth time, and I think I may be failing once more
I always run into the weirdest issues
@pesterhazy I did a sync with MELPA an hour ago and it was fine. I pretty much just followed the docs for clojure-lsp and it works pretty well in Linux. I'm running it alongside python-lsp and that works fine also. You can check /tmp/lsp.out once it tries to start for debugging.
@snaffu that log file is a useful hint
ok so I deleted my elpa directory to get a new version of lsp-mode
I also had to trash ~/.emacs.d/.lsp-session-v1
seems to be working a bit better now
@pesterhazy Cool.. glad to hear its working for you now
The documentation is impossible to understand for me though
> It is possible to pass some options to clojure-lsp through clients'Â InitializationOptions. Options are a map with keys
Where does the configuration go?
The only config I have is within my .emacs and pretty much what is mentioned on the clojure-lsp binary page here. https://github.com/snoe/clojure-lsp I just dropped those options in and commented out the ones I did not want to use.
ah, do you mean .lsp/config.edn
?
those were just updated as well i believe
@dpsutton do you mean the clojure-lsp package has been updated?
no i mean specifically the emacs instructions on the repo changed the other day
it was my config and someone updated them i believe. to be a bit more idiomatic with use-package
it was more for @snaffu to check what the updates were as i'm assuming you are seeing the updates
right yeah
so my understanding now is that there's a .lsp/config.edn that can be used to configure source paths etc
I'm trying it on a simple project, and even there it seems I need to do some configuration
this seems to work for me
cat .lsp/config.edn
{"source-paths" ["src"]
"ignore-classpath-directories" true}
do you all use clojure-lsp extensively? What are the features you're using the most?
I like the linting capabilities for clj and python. I prefer emacs over the jetbrains tools personally but the linting was something that I couldn't get easily. This handles that use case really well for me.
hm yeah. joker already does that in a much simpler way though no?
I haven't tried joker, heard it was very nice but i hit an issue with installing it on BSD. Didn't know at the time LSP-Clojure would have that same issue, so I tried LSP. Plus I work in multiple languages, so having a unified top level methodology is appealing. The lsp-python works fine in BSD, it uses a pip.
I think I was able to configure lsp for my CLJS work project now
Emacs crashed a few times during the process so that's not too encouraging
But let's see 🙂
Good luck 🙂 I havent seen any crashes myself so hopefully it stabilizes for you.
Alright! Seems like it's working pretty nicely!
Different topic, how do I copy something from a helm window?
E.g. I want to copy the name of a command. I can find the command using helm-M-x
But then how do I copy that symbol?
Found it: C-c <tab>
Even better: C-u C-c C-k
Or rather C-c C-k
Anyone know how I can view a list of keyboard shortcuts while in a minibuffer? I'm using Doom and SPC s p
runs projectile-ripgrep
and I want to know how I can, for example, visit a result without losing the minibuffer, or persist the minibuffer in a new buffer, etc...
In helm C-j usually works for that
In Doom, with evil bindings, C-j
moves down to the next line. I see describe-buffer
takes an optional buffer argument, and C-x o
works when in the minibuffer to switch buffers. So I thought I could C-x o
to get out of the minibuffer and then (describe-buffer <name-of-minibuffer>)
to get the description, but when I do a list-buffers
while the minibuffer is open, I don't see the name of the minibuffer in the list.
Ah. C-h m
. Of course.