3

我正在尝试摆脱WebStorm并尝试配置VS Code以获取WebStorm. 我正在尝试File Watcher在 VS Code 中实现功能。我曾经在 WebStorm 中有 Jade 和 Stylus 的文件观察器。我已经为他们准备了 gulp 任务,并且也添加了它们tasks.json。我什至也为他们提供了键绑定。但我必须手动运行它们。我想要的是,每当保存文件时,它都会检查它是Jade文件还是Stylus文件,然后运行适当的任务来生成 HTML 或 CSS 文件。

是否有可能在 VS Code 中做到这一点?如果是,那我该怎么做?

4

1 回答 1

6

您必须创建一个扩展来完成您的方案。你说你已经有了自动化gulptask.json所以我认为将其转换为扩展相对容易。

创建扩展程序时应注意这一点

包.json

您的扩展名应该适用于Jadeor Stylus,因此该package.json文件应该具有:

"activationEvents": [
    "onLanguage:Jade",
    "onLanguage:Stylus"
]

OnSave 事件

您可以使用两个事件来检测文件保存:onDidSaveTextDocumentonWillSaveTextDocument,具体取决于您的需要。

文件观察器

VSCode 有一个内置的FileWatcher,你只需要通过vscode.workspace.createFileSystemWatcher. 关键是它只监视打开的文件夹/项目中的文件

如果您需要检测外部的变化,您应该使用fs.watchFileor chokidar

发布/安装

如果您认为您的扩展仅适用于您,或者您出于任何原因无法在市场上发布,请不要担心,因为您可以创建自己的扩展,将它们打包并在本地安装

于 2017-04-23T16:57:05.590 回答