本文整理汇总了TypeScript中vscode.FileSystemWatcher.onDidChange方法的典型用法代码示例。如果您正苦于以下问题:TypeScript FileSystemWatcher.onDidChange方法的具体用法?TypeScript FileSystemWatcher.onDidChange怎么用?TypeScript FileSystemWatcher.onDidChange使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类vscode.FileSystemWatcher
的用法示例。
在下文中一共展示了FileSystemWatcher.onDidChange方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: setupFileSystemWatcherOnHead
//Sets up a file system watcher on HEAD so we can know when the current branch has changed
private setupFileSystemWatcherOnHead(): void {
let pattern: string = this._gitContext.GitFolder + "/HEAD";
let fsw:FileSystemWatcher = workspace.createFileSystemWatcher(pattern, true, false, true);
fsw.onDidChange((uri) => {
Logger.LogInfo("HEAD has changed, re-parsing GitContext object");
this._gitContext = new GitContext(workspace.rootPath);
Logger.LogInfo("CurrentBranch is: " + this._gitContext.CurrentBranch);
this.refreshPollingItems();
});
}
示例2: doInit
public doInit(indexInProgress: boolean) {
console.log("Crane Initialised...");
this.showIndexingStatusBarMessage();
var statusBarItem: StatusBarItem = window.createStatusBarItem(StatusBarAlignment.Right);
statusBarItem.text = Config.version;
statusBarItem.tooltip = 'Crane (PHP Code-completion) version ' + Config.version;
statusBarItem.show();
var serverDebugMessage: NotificationType<{ type: string, message: string }> = { method: "serverDebugMessage" };
Crane.langClient.onNotification(serverDebugMessage, message => {
switch (message.type) {
case 'info': Debug.info(message.message); break;
case 'error': Debug.error(message.message); break;
case 'warning': Debug.warning(message.message); break;
default: Debug.info(message.message); break;
}
});
var requestType: RequestType<any, any, any> = { method: "workDone" };
Crane.langClient.onRequest(requestType, (tree) => {
// this.projectBuilding = false;
Crane.statusBarItem.text = '$(check) PHP File Indexing Complete!';
// Load settings
let craneSettings = workspace.getConfiguration("crane");
Debug.info("Processing complete!");
if (Config.showBugReport) {
setTimeout(() => {
Crane.statusBarItem.tooltip = "Found a problem with the PHP Intellisense provided by Crane? Click here to file a bug report on Github";
Crane.statusBarItem.text = "$(bug) Found a PHP Intellisense Bug?";
Crane.statusBarItem.command = "crane.reportBug";
Crane.statusBarItem.show();
}, 5000);
} else {
Crane.statusBarItem.hide();
}
});
var types = Config.phpFileTypes;
Debug.info(`Watching these files: {${types.include.join(',')}}`);
var fsw: FileSystemWatcher = workspace.createFileSystemWatcher(`{${types.include.join(',')}}`);
fsw.onDidChange(e => {
workspace.openTextDocument(e).then(document => {
if (document.languageId != 'php') return;
Debug.info('File Changed: ' + e.fsPath);
Crane.langClient.sendRequest({ method: 'buildObjectTreeForDocument' }, {
path: e.fsPath,
text: document.getText()
});
});
});
fsw.onDidCreate(e => {
workspace.openTextDocument(e).then(document => {
if (document.languageId != 'php') return;
Debug.info('File Created: ' + e.fsPath);
Crane.langClient.sendRequest({ method: 'buildObjectTreeForDocument' }, {
path: e.fsPath,
text: document.getText()
});
});
});
fsw.onDidDelete(e => {
Debug.info('File Deleted: ' + e.fsPath);
Crane.langClient.sendRequest({ method: 'deleteFile' }, {
path: e.fsPath
});
});
if (!indexInProgress) {
// Send request to server to build object tree for all workspace files
this.processAllFilesInWorkspace();
}
}