Centralize all file system access in VLS
octref opened this issue · 2 comments
octref commented
Motivation
Currently Vetur's file system access is scattered throughout the code. However, we also use TextDocuments
from https://github.com/Microsoft/vscode-languageserver-node to track LSP documents, and with the new FileEvents generated through VS Code file watcher, it's time to put these all together.
Benefits
- All file access / events in one place. Easier to track, log, do perf analysis, etc
- Possible to use in-memory / virtual FS system with VLS
- Easier to manage the "virtual files" we generate for each region in Vue files
- Possible to reduce chattiness of LSP by switching to Incremental Syncing
- Possible to listen to changes by granularity of Vue regions (as compared to currently letting each file change triggering all features in file)
Fixes
Unblocks
s-KaiNet commented
octref commented
Outdated and won't do any more.