是否可以编写插件来打开目录并在其中生成一些文件?

时间:2018-07-03 03:31:14

标签: visual-studio-code vscode-extensions

我很想写一个类似yo插件但带有一些UI的插件。但是您无法在vscode中打开目录之前工作。我需要在用户界面中选择一个目录并自动生成代码。

任何人都可以告诉我使用哪个API来执行此类操作,我将对此进行深入研究。

1 个答案:

答案 0 :(得分:2)

如果当前未打开目录,则可以使用vscode.window namespace中的showOpenDialog()方法让用户选择目录。使用canSelectFiles: falsecanSelectFolders: true,它变成一个文件夹选择器。之后,您可以运行"vscode.openFolder"命令打开新创建的工作区。

vscode.window.showOpenDialog({
    canSelectFolders: true,
    canSelectFiles: false
}).then(folders => {
    if (folders != null && folders.length > 0) {
        setupProject(folders[0].fsPath);
        vscode.commands.executeCommand("vscode.openFolder", folders[0]);
    }
});

这基本上是我们为"init project" command in the Haxe extension采取的方法。