diff --git a/CHANGELOG.md b/CHANGELOG.md index b639f4d..15415f9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,10 @@ # Changelog +### v1.1.3 + +- Add create option if file does not exist + + If the file doesn't exist, a warning is displayed. Add a create button to create the file on the warning and proceed. + ### v1.1.2 - Always use posix-specific pathing diff --git a/package-lock.json b/package-lock.json index a8c488e..e225eae 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "dotfiles", - "version": "1.1.2", + "version": "1.1.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "dotfiles", - "version": "1.1.2", + "version": "1.1.3", "license": "MIT", "dependencies": { "jsonc-parser": "^3.2.1" diff --git a/package.json b/package.json index 6516f5d..c5d87cb 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,7 @@ }, "description": "Apply dotfiles from settings", "icon": "images/icon-small.png", - "version": "1.1.2", + "version": "1.1.3", "license": "MIT", "engines": { "vscode": "^1.74.0" diff --git a/src/extension.ts b/src/extension.ts index 3ace24e..819fee5 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -13,6 +13,15 @@ async function apply() { const filePath = path.join(directory, file); try { await fs.stat(filePath); + } catch (err) { + switch (await vscode.window.showWarningMessage(`${filePath} does not exist: ${err}`, "Create")) { + case "Create": + break; + default: + continue; + } + } + try { await fs.writeFile(filePath, content); outputChannel.appendLine(`${new Date().toLocaleString()}: wrote ${filePath}`); } catch (err) {