Fork me on GitHub
#conjure
<
2022-03-15
>
dharrigan16:03:16

anyone using neovim + coc + clojure-lsp who would like to verify if a problem I am seeing only happens for me or for others?

dharrigan19:03:18

I wonder if you could clone http://github.com/dharrigan/weird and try to go to definition on authetication.clj function http-basic-backend

dharrigan19:03:24

it should work repeatingly

dharrigan19:03:39

then, try on wrap-authentication, for me it works only once then no more.

dharrigan19:03:51

Would be great to confirm if it's just me, or something else going on.

dharrigan19:03:14

thank you 🙂

nate21:03:53

both jumps work repeatedly for me

nate21:03:43

I noticed a bit ago that repeated jumps wouldn't work if I had closed the jumped-to buffer, but there was an lsp fix for that

nate21:03:47

I'm on the latest clojure-lsp (2022.02.23-12.12.12), nvim 0.5.0, Ubuntu 18.04, coc.nvim sha:e7d5d359 (haven't updated in a few weeks)

dharrigan21:03:44

so, you can repeatingly jump over and over again to each function?

nate21:03:17

jump, go back, jump, delete buffer, jump in a split, go back...

nate21:03:25

most every combo I can think of

dharrigan21:03:48

curious, could you try one more thing, if you jump into, say wrap-authentication, can you further jump into a regular clojure function like assoc or some->> within the loaded jar source?

nate21:03:59

yes, I just jumped to the apply function

dharrigan21:03:31

thank you. valuable information. ta.

nate21:03:11

glad to help, I hope you figure out the issue

dharrigan21:03:28

it's really bugging me

dharrigan21:03:41

I will solider on

dharrigan21:03:13

btw, I'm on neovim 0.6.1 🙂

dharrigan21:03:19

it works on nvim 0.5.0!

dharrigan21:03:49

interesting.

nate21:03:31

I switched to a 0.7.0 nightly build a bit ago for something else, and repeated jumps work on that too

dharrigan21:03:37

0.5.1 works, 0.6.0 does not work

nate21:03:44

the 0.7.0 is on Mac

dharrigan21:03:57

I'm on Arch, getting nightly if available...

dharrigan21:03:55

does not work

nate21:03:23

so, the 0.5.x works, but nothing after it?

nate21:03:34

what version of node?

nate21:03:48

❯ node --version
v17.6.0

dharrigan21:03:03

0.5.0, 0.5.1 works. after that no

dharrigan21:03:27

:checkhealth reports 16.13.0

nate21:03:45

(above was on mac, v14.17.2 on linux)

dharrigan21:03:27

node latest (17.7.1) no works

dharrigan21:03:36

so looks like something after 5.1.0 broke

nate21:03:16

my random 0.7.0 nightly build on Mac works

nate21:03:21

what's the error?

dharrigan21:03:12

Basically, I can only jump to wrap-authentication once, then no more. Yet, strangely http-basic-backend always. This is just one example, I have other jars that exhibit the same behaviour. Now, you would think that if goto-defintion to source in a jar was broken, no functions would be able to be loaded. Yet, it looks like some can, some can't. It's a puzzle

dharrigan21:03:43

if you don't mind, if you jump to a definition, what does it show at the buttom of the buffer, does it show zipfile://.... or jar:file://...?

nate21:03:47

zipfile://

dharrigan21:03:42

that always works for me

nate21:03:05

I have this in my coc-settings.json, under "clojure-lsp": "additionalSchemes": ["jar", "zipfile"],

dharrigan21:03:20

if you set the dependency-schema to be jar, then that's the issue

nate21:03:15

default is zip and you set it to jar?

dharrigan21:03:16

apparently, in emacs it's always jar, whereas in vim, clojure-lsp allows zipfile for vim users!

dharrigan21:03:51

right, for what happens for me is that if I set it to zip, it opens the file, but I can't then go into another definition, i.e., a core clojure function

dharrigan21:03:56

so nested jumps don't work

dharrigan21:03:21

Maybe I can fix that

dharrigan21:03:14

default is actually jar 🙂

dharrigan21:03:17

so now I wonder why I can't go nested if I change it to zip!

nate21:03:13

I don't know how the additionalSchemes coc config option interacts with the dependency-schema init options

nate21:03:34

that link is my whole coc-settings, maybe something else will help

dharrigan22:03:39

Thank you. Investigating.

dharrigan22:03:34

Okay, so I'm using coc-clojure to wrap clojure-lsp, and with a slight change it works

nate22:03:34

oh interesting, coc-clojure?

nate22:03:56

that one?