p4analyzer icon indicating copy to clipboard operation
p4analyzer copied to clipboard

Native File System and File Watcher

Open timjroberts opened this issue 1 year ago • 1 comments

The core LSP types define an EnumerableFileSystem trait. We have an implementation of this trait that sends requests to the LSP client to enumerate the files of workspaces (i.e., as part of indexing), and to retrieve file contents. This implementation uses new LSP request types (extensions), and these are supported directly in Visual Studio Code through our own LSP client implementation.

To support LSP environments outside of Visual Studio Code, we will need another implementation of the EnumerableFileSystem trait that enumerates and reads the file system directly. This implementation should also be extended to optionally watch for file changes, and report them as appropriate LSP notifications.

timjroberts avatar May 19 '23 14:05 timjroberts