Add error msg when extensionsPath is not found
This commit is contained in:
Родитель
2625546266
Коммит
d00358daea
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "vscode-emmet-helper",
|
"name": "vscode-emmet-helper",
|
||||||
"version": "1.0.19",
|
"version": "1.0.20",
|
||||||
"description": "Helper to use emmet modules in Visual Studio Code",
|
"description": "Helper to use emmet modules in Visual Studio Code",
|
||||||
"main": "./out/emmetHelper.js",
|
"main": "./out/emmetHelper.js",
|
||||||
"types": "./out/emmetHelper.d.ts",
|
"types": "./out/emmetHelper.d.ts",
|
||||||
|
@ -24,7 +24,7 @@
|
||||||
"vscode-languageserver-types": "^3.0.3"
|
"vscode-languageserver-types": "^3.0.3"
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"prepublish": "npm run compile",
|
"prepublish": "npm run compile && npm run test",
|
||||||
"compile": "tsc -p ./ && cpy ./src/expand/*.js ./out/expand",
|
"compile": "tsc -p ./ && cpy ./src/expand/*.js ./out/expand",
|
||||||
"test": "mocha out/test"
|
"test": "mocha out/test"
|
||||||
}
|
}
|
||||||
|
|
|
@ -444,13 +444,18 @@ function getVariables(variablesFromSettings: object): any {
|
||||||
* Updates customizations from snippets.json and syntaxProfiles.json files in the directory configured in emmet.extensionsPath setting
|
* Updates customizations from snippets.json and syntaxProfiles.json files in the directory configured in emmet.extensionsPath setting
|
||||||
*/
|
*/
|
||||||
export function updateExtensionsPath(emmetExtensionsPath: string): Promise<void> {
|
export function updateExtensionsPath(emmetExtensionsPath: string): Promise<void> {
|
||||||
if (!emmetExtensionsPath || !emmetExtensionsPath.trim() || !path.isAbsolute(emmetExtensionsPath.trim()) || !dirExists(emmetExtensionsPath.trim())) {
|
if (!emmetExtensionsPath || !emmetExtensionsPath.trim()) {
|
||||||
customSnippetRegistry = {};
|
resetSettingsFromFile();
|
||||||
snippetKeyCache.clear();
|
|
||||||
profilesFromFile = {};
|
|
||||||
variablesFromFile = {};
|
|
||||||
return Promise.resolve();
|
return Promise.resolve();
|
||||||
}
|
}
|
||||||
|
if (!path.isAbsolute(emmetExtensionsPath.trim())) {
|
||||||
|
resetSettingsFromFile();
|
||||||
|
return Promise.reject('The path provided in emmet.extensionsPath setting should be absoulte path');
|
||||||
|
}
|
||||||
|
if (!dirExists(emmetExtensionsPath.trim())) {
|
||||||
|
resetSettingsFromFile();
|
||||||
|
return Promise.reject(`The directory ${emmetExtensionsPath.trim()} doesnt exist. Update emmet.extensionsPath setting`);
|
||||||
|
}
|
||||||
|
|
||||||
let dirPath = emmetExtensionsPath.trim();
|
let dirPath = emmetExtensionsPath.trim();
|
||||||
let snippetsPath = path.join(dirPath, 'snippets.json');
|
let snippetsPath = path.join(dirPath, 'snippets.json');
|
||||||
|
@ -516,6 +521,13 @@ function dirExists(dirPath: string): boolean {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function resetSettingsFromFile(){
|
||||||
|
customSnippetRegistry = {};
|
||||||
|
snippetKeyCache.clear();
|
||||||
|
profilesFromFile = {};
|
||||||
|
variablesFromFile = {};
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the corresponding emmet mode for given vscode language mode
|
* Get the corresponding emmet mode for given vscode language mode
|
||||||
* Eg: jsx for typescriptreact/javascriptreact or pug for jade
|
* Eg: jsx for typescriptreact/javascriptreact or pug for jade
|
||||||
|
|
Загрузка…
Ссылка в новой задаче