有没有办法在vscode扩展中观察文件名更改。我想知道旧的名字 - >文件重命名的新名称或用户保存以前未保存的文件时的名称(例如,Untitled-1 - > someName.txt)。
我注意到有一个FileSystemWatcher但它似乎只跟踪onDidChange,onDidCreate和onDidDelete,并且每个回调只传递一个URI。
有没有更好的方法呢?
答案 0 :(得分:0)
从VS Code 1.29开始,跟踪文件here的文件重命名api。
您今天可以使用proposed APIs进行尝试:
export namespace workspace {
export const onWillRenameFile: Event<FileWillRenameEvent>;
export const onDidRenameFile: Event<FileRenameEvent>;
}
答案 1 :(得分:0)
使用与您相关的所需全局路径创建一个 FileSystemWatcher
var watcher = vscode.workspace.createFileSystemWatcher("**/*.ts"); //glob search string
watcher.ignoreChangeEvents = false;
watcher.onDidChange(() => {
vscode.window.showInformationMessage("change applied!");
});
取自 - Using FileSystemWatcher in Typescript (Visual Studio Code extension)