Расширение VSCode: Как открыть файл, если папки рабочей области недоступны?

#visual-studio-code #vscode-extensions

Вопрос:

Я работал над расширением, которое позволяет добавлять файлы с заранее определенным содержимым и изменять их с помощью пользовательского веб-редактора. Пользовательская команда «Добавить новый файл XXX» выглядит следующим образом:

 let disposable = vscode.commands.registerCommand('myextension.add-new-file', () =gt; {  if(vscode.workspace.workspaceFolders?.length){  const rootPath = vscode.workspace.workspaceFolders[0].uri.fsPath ;  let counter = 0;  let filePath = '';  do{  counter  ;  filePath = path.join(rootPath, `NewFile${counter}.my-ext`);  }while(fs.existsSync(filePath));  fs.writeFileSync(filePath, JSON.stringify(newFileContent), 'utf8');  const openPath = vscode.Uri.file(filePath);   vscode.commands.executeCommand('vscode.openWith', openPath, 'myextension.custom-designer');   } });  

Это нормально работает, если папка открыта в VS Code. Однако, если папка не открыта, корневой путь не может быть разрешен. Каково решение для такого сценария? Принимает ли «vscode.OpenWith» содержимое файла вместо пути для открытия?

Комментарии:

1. создайте документ без названия и заполните его текстом

2. @rioV8 как я могу открыть документ без названия с помощью моего пользовательского редактора?