Currently this language server have two modes (AFAIK):
If the workspace is an R package, i.e. have a "NAMESPACE" file), then the whole code of the package will be loaded and parsed.
If not, only the opened files in the editor will be parsed.
While this is a good default behavior in my opinion, I suggest to generalize this and give more control for the user, so in the same workspace there could be many (or even only one) R packages in nested directory.
My suggestion is to introduce a new option to the user configuration, say nested.packages.depth.
This option is a number specifying what is the maximal nested directory depth that the language server will scan for R package. Some special cases:
The default value is 0, which mathematically says exactly the current behavior specified above.
For full recursive scanning, the user can specify the value of Inf (don't know how to handle cycled soft/hard links though)
For forcing the language server to ignore any package appears in the workspace, the user can define this value to be a negative number.
Currently this language server have two modes (AFAIK):
While this is a good default behavior in my opinion, I suggest to generalize this and give more control for the user, so in the same workspace there could be many (or even only one) R packages in nested directory.
My suggestion is to introduce a new option to the user configuration, say
nested.packages.depth
. This option is a number specifying what is the maximal nested directory depth that the language server will scan for R package. Some special cases:Inf
(don't know how to handle cycled soft/hard links though)What do you think?