> IC is heavily tied to nimsuggest

That reinforces the need to implement IC first, I agree.

> there is a perfectly working nim check --ic:on --dus:file:line:col 
> project.nim command

Interesting. I just tried the "Go to references" functionality in VSCode again 
and found that it works - partially. It finds references in the same file, but 
not references elsewhere in the project.

I tried executing the nim check command you outlined in a terminal window, and 
got an error message:

> invalid command line option: '\--dus'

After a lot of searching in the Compiler User Guide and through Google, I found 
that if I change the command to the following it executes:

> nim check --ic:on --defusages:file1.nim,line,col file2.nim

where the `--defusages` option points to the symbol to be searched for and 
file2 points to the file to be searched. I think.

I tried it with file1 and file2 the same, and it did successfully find 
references to a symbol within that file. But when I made file1 and file2 
different, and pointed to a proc that was defined in the first and called in 
the second, then it found the definition in the first file (the only occurrence 
there) but nothing in the second.

One thing I noticed is that the code base I'm working on does not have a 
`project.nim` file, where I assume that `project` is the name of the project. 
Is this what is needed in order to search all source files in said project?

Regardless of the resolution of this particular matter, there are a number of 
other issues I have seen. Some examples:

  * Compile errors (at least 2 types - one dealing with `base` method pragma 
and the other with `=destroy` declarations) that are flagged in VSCode but do 
not appear in a compile run. Hovering over said flags shows an error message 
that is claimed to originate from nim check. I believe that one has been fixed 
in `devel`, I have not had time to pursue the other.
  * Periods of time where the plugin (or background tool support) doesn't work 
properly - making changes in one file and saving it, followed by changing an 
impacted file to accommodate those changes, caused the changes made in the 
second file to be flagged as errors; the changes in the first file did not seem 
to have been noticed when checking the second. Restarting VSCode fixes the 
problem. Until the next it appears.
  * At least once I saw a notification while editing - something to the effect 
of "nimlsp has crashed 3 times in 5 minutes. Deactivating". I assume this might 
be related to comments I have seen elsewhere about nimsuggest crashes.



I'm not piling on, just pointing out that work remains.

I'm really looking forward to seeing the situation when IC comes out; hopefully 
it will improve the situation considerably. In the meantime I can work around 
the various glitches - my personal work doesn't have deadlines :D. And if there 
is some way I can help to resolve such problems, I would be very happy to 
contribute whatever effort I can.

But my opinion stated previously still stands. 

Reply via email to