JetBrains-Research / coqpilot

VSCode extension that is designed to help automate writing of Coq proofs.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Outline is redundant

Alizter opened this issue · comments

With the Coqpilot and coq-lsp extension enabled, they both show the outline of a document leading to duplicated entries. Coqpilot probably doesn't need to also report such entries.

Hi, Ali! Could you please tell which version you are using. And whether errors are doubled in the error panel or someway visually? I manually ignore errors in code and I thought this behavior should not have happened.

The version of the coqpilot extension is 1.5.1.

Here is what the outline pane looks like:
image

Also apparent when using Ctrl+P with @ to search for things in the document:
image

Error messages do not appear to be doubled.

I suppose one solution to this would be to make coqpilot a plugin for the coq-lsp extension. That way we wouldn't have to communicate with the server with two different clients. cc @ejgallego

I see, thanks, Ali, firstly, I thought the problem you described was about diagnostics duplication. Now I understand it properly. Will try to fix this issue as soon as my vacation ends on 11th Jan.

I suppose one solution to this would be to make coqpilot a plugin for the coq-lsp extension. That way we wouldn't have to communicate with the server with two different clients. cc @ejgallego

Regarding this idea, here are my thoughts from our chat with Emilio:

Regarding your idea to hook coqpilot to coq-lsp client plugin. We believe it would have been convenient, but will lower the generallity of the code. Moreover, we are now planning on writing a benchmark framework to evaluate how different LLMs perform on generating coq. It is going to communicate with coq-lsp in a similar way as the plugin does, so we want this part to be shared across the plugin and the benchmark. It would be easier to test stuff when its not launching electron with a vscode instance etc. And I had an idea of writing a benchmark in kotlin and compiling the required part to js, so it makes things complicated to work with coq-lsp client rather than the server itself.

Thanks folks for the discussion, due to holidays and some other personal stuff I didn't get time to get back to you.

I will answer better ASAP, but I think it is possible to hook CoqPilot to coq-lsp in a "plugin" way without lowering the generality of the code.

I will provide more details when I get some free time.

By the way, the concrete reason VSCode shows this is because two extensions are registering as a documentSymbols provider.

By the way, the concrete reason VSCode shows this is because two extensions are registering as a documentSymbols provider.

Oh, great, thanks for an insight, Emilio.

Hey @Alizter! Fixed this and published the update.