You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When I am using vhdl_ls, I can get into a case when there is a 1-5s delay when nvim is creating the completion menu. I have boiled the issue down to when I have snippets enabled, and am working in a project/file that uses a vendor library, which defines 425 "components". The vhdl_ls creates snippets for each one of these, and it seems that it might be sending too many snippets and overwhelming nvim-cmp?
Steps to reproduce
I have uploaded a gist with the file that seems to cause the issue. I am sure that this isn't the only one that could cause the issue, but since it is such a large one, it is the one causing it in this case.
Here is a VHDL file that shows the issue
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
library unisim;
use unisim.vcomponents.all;
entitytest1isport (
i_clk : instd_logic;
i_rstn : instd_logic;
i_d : instd_logic;
o_q : outstd_logic;
o_qn : outstd_logic
);
endentitytest1;
architecturebehavoftest1isbegino_q_proc : process (i_clk) isbeginifrising_edge(i_clk) thenif (i_rstn ='0') then
o_q <='0';
else
o_q <= i_d;
endif;
endif;
endprocesso_q_proc;
endarchitecturebehav;
You can use the vhdl_ls.toml file to configure the LSP
If you edit the test1.vhd file, and then place your cursor on the empty line above end architecture behav; and start typing, you should notice the delay.
Expected behavior
There shouldn't be a significant delay (on the order of multiple seconds) when serving completions.
Actual behavior
When nvim is creating the completion dialog, it freezes the entire editor. Nothing can be done in this time. If it were simply a delay in when some of the candidates make it into the list, that would be less obtrusive, however it brings down the entire editor.
Additional context
I think that this is an issue in nvim-cmp (or maybe the LSP source, but still). I think this because I created an issue over on the vhdl_lsVHDL-LS/rust_hdl#340 and this doesn't happen on VSCode. I also tried to get coq_nvim working to test if it is an issue there, and it isn't. I can perform the same steps, and it will show the results properly, and can also expand the snippets. However I prefer nvim-cmp vs coq_nvim, so I wanted to see if this can get investigated/fixed.
Please let me know if there is anything else that I can do to help, or anything else that I can provide in the meantime.
The text was updated successfully, but these errors were encountered:
This is only temporary. I am using nvim-cmp for _everything_ besides
completions in VHDL buffers, since nvim-cmp freezes the whole editor
when unisim is loaded and snippets are enabled. However, who knows, I
may switch to coq_nvim completely if I can config it as nicely as
nvim-cmp is
See:
hrsh7th/nvim-cmp#2028VHDL-LS/rust_hdl#340
SethGower
added a commit
to SethGower/dotfiles
that referenced
this issue
Aug 30, 2024
This is only temporary. I am using nvim-cmp for _everything_ besides
completions in VHDL buffers, since nvim-cmp freezes the whole editor
when unisim is loaded and snippets are enabled. However, who knows, I
may switch to coq_nvim completely if I can config it as nicely as
nvim-cmp is
See:
hrsh7th/nvim-cmp#2028VHDL-LS/rust_hdl#340
FAQ
Announcement
Minimal reproducible full config
Description
When I am using
vhdl_ls
, I can get into a case when there is a 1-5s delay when nvim is creating the completion menu. I have boiled the issue down to when I have snippets enabled, and am working in a project/file that uses a vendor library, which defines 425 "components". Thevhdl_ls
creates snippets for each one of these, and it seems that it might be sending too many snippets and overwhelmingnvim-cmp
?Steps to reproduce
I have uploaded a gist with the file that seems to cause the issue. I am sure that this isn't the only one that could cause the issue, but since it is such a large one, it is the one causing it in this case.
Here is a VHDL file that shows the issue
You can use the
vhdl_ls.toml
file to configure the LSPIf you edit the
test1.vhd
file, and then place your cursor on the empty line aboveend architecture behav;
and start typing, you should notice the delay.Expected behavior
There shouldn't be a significant delay (on the order of multiple seconds) when serving completions.
Actual behavior
When
nvim
is creating the completion dialog, it freezes the entire editor. Nothing can be done in this time. If it were simply a delay in when some of the candidates make it into the list, that would be less obtrusive, however it brings down the entire editor.Additional context
I think that this is an issue in
nvim-cmp
(or maybe the LSP source, but still). I think this because I created an issue over on thevhdl_ls
VHDL-LS/rust_hdl#340 and this doesn't happen on VSCode. I also tried to getcoq_nvim
working to test if it is an issue there, and it isn't. I can perform the same steps, and it will show the results properly, and can also expand the snippets. However I prefernvim-cmp
vscoq_nvim
, so I wanted to see if this can get investigated/fixed.Please let me know if there is anything else that I can do to help, or anything else that I can provide in the meantime.
The text was updated successfully, but these errors were encountered: