diff --git a/extensions/notebook/src/book/bookTreeItem.ts b/extensions/notebook/src/book/bookTreeItem.ts index 1009621ede..09a34f8d60 100644 --- a/extensions/notebook/src/book/bookTreeItem.ts +++ b/extensions/notebook/src/book/bookTreeItem.ts @@ -13,7 +13,6 @@ export class BookTreeItem extends vscode.TreeItem { public readonly tableOfContents: any[], public readonly collapsibleState: vscode.TreeItemCollapsibleState, public uri?: string, - public readonly type?: vscode.FileType, public command?: vscode.Command ) { super(title, collapsibleState); diff --git a/extensions/notebook/src/book/bookTreeView.ts b/extensions/notebook/src/book/bookTreeView.ts index dd47b10930..0a35d4c590 100644 --- a/extensions/notebook/src/book/bookTreeView.ts +++ b/extensions/notebook/src/book/bookTreeView.ts @@ -40,13 +40,23 @@ export class BookTreeViewProvider implements vscode.TreeDataProvider { + async openNotebook(resource: string): Promise { try { let doc = await vscode.workspace.openTextDocument(resource); vscode.window.showTextDocument(doc); } catch (e) { vscode.window.showErrorMessage(localize('openNotebookError', 'Open file {0} failed: {1}', - resource.fsPath, + resource, + e instanceof Error ? e.message : e)); + } + } + + async openMarkdown(resource: string): Promise { + try { + vscode.commands.executeCommand('markdown.showPreview', vscode.Uri.file(resource)); + } catch (e) { + vscode.window.showErrorMessage(localize('openMarkdownError', 'Open file {0} failed: {1}', + resource, e instanceof Error ? e.message : e)); } } @@ -94,10 +104,10 @@ export class BookTreeViewProvider implements vscode.TreeDataProvider bookTreeViewProvider.openNotebook(resource)); + vscode.commands.registerCommand('bookTreeView.openMarkdown', (resource) => bookTreeViewProvider.openMarkdown(resource)); extensionContext.subscriptions.push(vscode.commands.registerCommand('_notebook.command.new', (context?: azdata.ConnectedContext) => { let connectionProfile: azdata.IConnectionProfile = undefined;