#visual-studio-code #vscode-extensions #vscode-tasks
#visual-studio-code #vscode-расширения #vscode-задачи
Вопрос:
Нам нужно расширение Visual Studio Code, которое отслеживает определенную папку в файловой системе, и когда содержимое папки изменяется, это должно вызвать какое-то действие.
Может ли расширение это сделать?
Я полагаю, нам нужна задача. Однако все примеры задач, которые я нашел, имеют дело с триггерами изнутри VSCode (в основном редактируются пользователем).
Я не нашел никаких примеров фоновых задач, которые запускаются внешним источником событий, таким как сеть или файловая система.
Комментарии:
1. вы смотрели на API просмотра файлов VSC
2.
FileSystemWatcher
иFileSystemProvider
.3. @Mark не
FileSystemWatcher
только для файлов в текущем открытом решении? ИFileSystemProvider
, похоже, это интерфейс, который мне нужно реализовать, если я хочу свою собственную файловую систему.4. @rioV8 единственное, что я могу найти
vscode.workspace.createFileSystemWatcher(...)
, но, похоже, речь идет о файлах в текущей открытой рабочей области или папке. Мне нужно следить за файловой системой за пределами рабочей области.5. есть ли у Node модуль просмотра файлов?
Ответ №1:
Начиная с версии VSCode 1.64.2 (январь 2022), vscode.workspace.createFileSystemWatcher
может отслеживать файлы за пределами текущей рабочей области VSCode!
См. Выпуск 140693 «Тест: просмотр файлов вне рабочей области из расширений».
спасибо команде Windows за внедрение лучшего средства просмотра файлов OS во всех операционных системах.
ReadDirectoryChangesW является потрясающим и используется библиотекой File Watcher, которую мы используем.