Fix emmet update extensions path issue (#117797)

* Emmet: fix unloaded emmetHelper

* Emmet: fix wrong type of error object
This commit is contained in:
Hsuan-An Weng Lin 2021-03-01 11:50:14 -06:00 committed by GitHub
parent e4a69193d0
commit c30e2d46b2
2 changed files with 3 additions and 7 deletions

View file

@ -23,6 +23,7 @@ import { addFileToParseCache, removeFileFromParseCache } from './parseDocument';
export function activateEmmetExtension(context: vscode.ExtensionContext) {
registerCompletionProviders(context);
updateEmmetExtensionsPath();
context.subscriptions.push(vscode.commands.registerCommand('editor.emmet.action.wrapWithAbbreviation', (args) => {
wrapWithAbbreviation(args);
@ -125,8 +126,6 @@ export function activateEmmetExtension(context: vscode.ExtensionContext) {
vscode.commands.executeCommand('workbench.action.quickOpen', '>Emmet: ');
}));
updateEmmetExtensionsPath();
context.subscriptions.push(vscode.workspace.onDidChangeConfiguration((e) => {
if (e.affectsConfiguration('emmet.includeLanguages')) {
registerCompletionProviders(context);

View file

@ -28,7 +28,6 @@ export function getEmmetHelper() {
if (!_emmetHelper) {
_emmetHelper = require('vscode-emmet-helper');
}
updateEmmetExtensionsPath();
return _emmetHelper;
}
@ -36,9 +35,7 @@ export function getEmmetHelper() {
* Update Emmet Helper to use user snippets from the extensionsPath setting
*/
export function updateEmmetExtensionsPath(forceRefresh: boolean = false) {
if (!_emmetHelper) {
return;
}
const helper = getEmmetHelper();
let extensionsPath = vscode.workspace.getConfiguration('emmet')['extensionsPath'];
if (forceRefresh || _currentExtensionsPath !== extensionsPath) {
_currentExtensionsPath = extensionsPath;
@ -47,7 +44,7 @@ export function updateEmmetExtensionsPath(forceRefresh: boolean = false) {
} else {
const rootPath = vscode.workspace.workspaceFolders[0].uri;
const fileSystem = vscode.workspace.fs;
_emmetHelper.updateExtensionsPath(extensionsPath, fileSystem, rootPath, _homeDir).then(null, (err: string) => vscode.window.showErrorMessage(err));
helper.updateExtensionsPath(extensionsPath, fileSystem, rootPath, _homeDir).catch(err => vscode.window.showErrorMessage(err.message));
}
}
}