Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
掘金者说
vscode
提交
9737b1aa
V
vscode
项目概览
掘金者说
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
9737b1aa
编写于
2月 11, 2021
作者:
J
Johannes Rieken
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
move INotebookKernelInfoDto2 to protocol, separate kernel from dto, renames
上级
55d26729
变更
10
显示空白变更内容
内联
并排
Showing
10 changed file
with
44 addition
and
36 deletion
+44
-36
src/vs/workbench/api/browser/mainThreadNotebook.ts
src/vs/workbench/api/browser/mainThreadNotebook.ts
+5
-6
src/vs/workbench/api/common/extHost.protocol.ts
src/vs/workbench/api/common/extHost.protocol.ts
+15
-1
src/vs/workbench/api/common/extHostNotebook.ts
src/vs/workbench/api/common/extHostNotebook.ts
+2
-2
src/vs/workbench/contrib/notebook/browser/contrib/status/editorStatus.ts
...h/contrib/notebook/browser/contrib/status/editorStatus.ts
+2
-2
src/vs/workbench/contrib/notebook/browser/notebookBrowser.ts
src/vs/workbench/contrib/notebook/browser/notebookBrowser.ts
+3
-3
src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.ts
...orkbench/contrib/notebook/browser/notebookEditorWidget.ts
+6
-6
src/vs/workbench/contrib/notebook/browser/notebookServiceImpl.ts
...workbench/contrib/notebook/browser/notebookServiceImpl.ts
+3
-3
src/vs/workbench/contrib/notebook/common/notebookCommon.ts
src/vs/workbench/contrib/notebook/common/notebookCommon.ts
+3
-5
src/vs/workbench/contrib/notebook/common/notebookService.ts
src/vs/workbench/contrib/notebook/common/notebookService.ts
+2
-5
src/vs/workbench/contrib/notebook/test/testNotebookEditor.ts
src/vs/workbench/contrib/notebook/test/testNotebookEditor.ts
+3
-3
未找到文件。
src/vs/workbench/api/browser/mainThreadNotebook.ts
浏览文件 @
9737b1aa
...
...
@@ -23,7 +23,7 @@ import { INotebookEditor } from 'vs/workbench/contrib/notebook/browser/notebookB
import
{
NotebookCellTextModel
}
from
'
vs/workbench/contrib/notebook/common/model/notebookCellTextModel
'
;
import
{
NotebookTextModel
}
from
'
vs/workbench/contrib/notebook/common/model/notebookTextModel
'
;
import
{
INotebookCellStatusBarService
}
from
'
vs/workbench/contrib/notebook/common/notebookCellStatusBarService
'
;
import
{
ACCESSIBLE_NOTEBOOK_DISPLAY_ORDER
,
CellEditType
,
DisplayOrderKey
,
ICellEditOperation
,
ICellRange
,
IEditor
,
IMainCellDto
,
INotebookDecorationRenderOptions
,
INotebookDocumentFilter
,
INotebookEditorModel
,
INotebookExclusiveDocumentFilter
,
INotebookKernel
Info2
,
NotebookCellsChangeType
,
NOTEBOOK_DISPLAY_ORDER
,
TransientMetadata
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
ACCESSIBLE_NOTEBOOK_DISPLAY_ORDER
,
CellEditType
,
DisplayOrderKey
,
ICellEditOperation
,
ICellRange
,
IEditor
,
IMainCellDto
,
INotebookDecorationRenderOptions
,
INotebookDocumentFilter
,
INotebookEditorModel
,
INotebookExclusiveDocumentFilter
,
INotebookKernel
,
NotebookCellsChangeType
,
NOTEBOOK_DISPLAY_ORDER
,
TransientMetadata
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
INotebookEditorModelResolverService
}
from
'
vs/workbench/contrib/notebook/common/notebookEditorModelResolverService
'
;
import
{
IMainNotebookController
,
INotebookService
}
from
'
vs/workbench/contrib/notebook/common/notebookService
'
;
import
{
IEditorGroup
,
IEditorGroupsService
,
preferredSideBySideGroupDirection
}
from
'
vs/workbench/services/editor/common/editorGroupsService
'
;
...
...
@@ -533,8 +533,8 @@ export class MainThreadNotebooks extends Disposable implements MainThreadNoteboo
providerDescription
:
extension
.
description
,
onDidChangeKernels
:
emitter
.
event
,
selector
:
documentFilter
,
provideKernels
:
async
(
uri
:
URI
,
token
:
CancellationToken
):
Promise
<
INotebookKernel
Info2
[]
>
=>
{
const
result
:
INotebookKernel
Info2
[]
=
[];
provideKernels
:
async
(
uri
:
URI
,
token
:
CancellationToken
):
Promise
<
INotebookKernel
[]
>
=>
{
const
result
:
INotebookKernel
[]
=
[];
const
kernelsDto
=
await
that
.
_proxy
.
$provideNotebookKernels
(
handle
,
uri
,
token
);
for
(
const
dto
of
kernelsDto
)
{
...
...
@@ -543,14 +543,13 @@ export class MainThreadNotebooks extends Disposable implements MainThreadNoteboo
friendlyId
:
dto
.
friendlyId
,
label
:
dto
.
label
,
extension
:
dto
.
extension
,
extensionLocation
:
dto
.
extensionLocation
,
extensionLocation
:
URI
.
revive
(
dto
.
extensionLocation
)
,
providerHandle
:
dto
.
providerHandle
,
description
:
dto
.
description
,
detail
:
dto
.
detail
,
isPreferred
:
dto
.
isPreferred
,
preloads
:
dto
.
preloads
,
preloads
:
dto
.
preloads
?.
map
(
u
=>
URI
.
revive
(
u
))
,
supportedLanguages
:
dto
.
supportedLanguages
,
resolve
:
(
uri
:
URI
,
editorId
:
string
,
token
:
CancellationToken
):
Promise
<
void
>
=>
{
this
.
logService
.
debug
(
'
MainthreadNotebooks.resolveNotebookKernel
'
,
uri
.
path
,
dto
.
friendlyId
);
return
this
.
_proxy
.
$resolveNotebookKernel
(
handle
,
editorId
,
uri
,
dto
.
friendlyId
,
token
);
...
...
src/vs/workbench/api/common/extHost.protocol.ts
浏览文件 @
9737b1aa
...
...
@@ -51,7 +51,7 @@ import { TunnelDto } from 'vs/workbench/api/common/extHostTunnelService';
import
{
TunnelCreationOptions
,
TunnelProviderFeatures
,
TunnelOptions
}
from
'
vs/platform/remote/common/tunnel
'
;
import
{
Timeline
,
TimelineChangeEvent
,
TimelineOptions
,
TimelineProviderDescriptor
,
InternalTimelineOptions
}
from
'
vs/workbench/contrib/timeline/common/timeline
'
;
import
{
revive
}
from
'
vs/base/common/marshalling
'
;
import
{
INotebookDisplayOrder
,
NotebookCellMetadata
,
NotebookDocumentMetadata
,
ICellEditOperation
,
NotebookCellsChangedEventDto
,
NotebookDataDto
,
IMainCellDto
,
INotebookDocumentFilter
,
INotebookKernelInfoDto2
,
TransientMetadata
,
INotebookCellStatusBarEntry
,
ICellRange
,
INotebookDecorationRenderOptions
,
INotebookExclusiveDocumentFilter
,
IOutputDto
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
INotebookDisplayOrder
,
NotebookCellMetadata
,
NotebookDocumentMetadata
,
ICellEditOperation
,
NotebookCellsChangedEventDto
,
NotebookDataDto
,
IMainCellDto
,
INotebookDocumentFilter
,
TransientMetadata
,
INotebookCellStatusBarEntry
,
ICellRange
,
INotebookDecorationRenderOptions
,
INotebookExclusiveDocumentFilter
,
IOutputDto
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
CallHierarchyItem
}
from
'
vs/workbench/contrib/callHierarchy/common/callHierarchy
'
;
import
{
Dto
}
from
'
vs/base/common/types
'
;
import
{
ISerializableEnvironmentVariableCollection
}
from
'
vs/workbench/contrib/terminal/common/environmentVariable
'
;
...
...
@@ -1777,6 +1777,20 @@ export interface INotebookDocumentsAndEditorsDelta {
visibleEditors
?:
string
[];
}
export
interface
INotebookKernelInfoDto2
{
id
?:
string
;
friendlyId
:
string
;
label
:
string
;
extension
:
ExtensionIdentifier
;
extensionLocation
:
UriComponents
;
providerHandle
?:
number
;
description
?:
string
;
detail
?:
string
;
isPreferred
?:
boolean
;
preloads
?:
UriComponents
[];
supportedLanguages
?:
string
[]
}
export
interface
ExtHostNotebookShape
{
$resolveNotebookData
(
viewType
:
string
,
uri
:
UriComponents
,
backupId
?:
string
):
Promise
<
NotebookDataDto
>
;
$resolveNotebookEditor
(
viewType
:
string
,
uri
:
UriComponents
,
editorId
:
string
):
Promise
<
void
>
;
...
...
src/vs/workbench/api/common/extHostNotebook.ts
浏览文件 @
9737b1aa
...
...
@@ -9,7 +9,7 @@ import { Disposable, DisposableStore } from 'vs/base/common/lifecycle';
import
{
URI
,
UriComponents
}
from
'
vs/base/common/uri
'
;
import
*
as
UUID
from
'
vs/base/common/uuid
'
;
import
{
IExtensionDescription
}
from
'
vs/platform/extensions/common/extensions
'
;
import
{
ExtHostNotebookShape
,
ICommandDto
,
IMainContext
,
IModelAddedData
,
INotebookDocumentPropertiesChangeData
,
INotebookDocumentsAndEditorsDelta
,
INotebookDocumentShowOptions
,
INotebookEditorPropertiesChangeData
,
MainContext
,
MainThreadNotebookShape
}
from
'
vs/workbench/api/common/extHost.protocol
'
;
import
{
ExtHostNotebookShape
,
ICommandDto
,
IMainContext
,
IModelAddedData
,
INotebookDocumentPropertiesChangeData
,
INotebookDocumentsAndEditorsDelta
,
INotebookDocumentShowOptions
,
INotebookEditorPropertiesChangeData
,
INotebookKernelInfoDto2
,
MainContext
,
MainThreadNotebookShape
}
from
'
vs/workbench/api/common/extHost.protocol
'
;
import
{
ILogService
}
from
'
vs/platform/log/common/log
'
;
import
{
CommandsConverter
,
ExtHostCommands
}
from
'
vs/workbench/api/common/extHostCommands
'
;
import
{
ExtHostDocumentsAndEditors
}
from
'
vs/workbench/api/common/extHostDocumentsAndEditors
'
;
...
...
@@ -17,7 +17,7 @@ import { IExtensionStoragePaths } from 'vs/workbench/api/common/extHostStoragePa
import
*
as
typeConverters
from
'
vs/workbench/api/common/extHostTypeConverters
'
;
import
*
as
extHostTypes
from
'
vs/workbench/api/common/extHostTypes
'
;
import
{
asWebviewUri
,
WebviewInitData
}
from
'
vs/workbench/api/common/shared/webview
'
;
import
{
CellStatusbarAlignment
,
CellUri
,
INotebookCellStatusBarEntry
,
INotebookDisplayOrder
,
INotebookExclusiveDocumentFilter
,
INotebookKernelInfoDto2
,
NotebookCellMetadata
,
NotebookCellsChangedEventDto
,
NotebookCellsChangeType
,
NotebookDataDto
,
notebookDocumentMetadataDefaults
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
CellStatusbarAlignment
,
CellUri
,
INotebookCellStatusBarEntry
,
INotebookDisplayOrder
,
INotebookExclusiveDocumentFilter
,
NotebookCellMetadata
,
NotebookCellsChangedEventDto
,
NotebookCellsChangeType
,
NotebookDataDto
,
notebookDocumentMetadataDefaults
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
*
as
vscode
from
'
vscode
'
;
import
{
ResourceMap
}
from
'
vs/base/common/map
'
;
import
{
ExtHostCell
,
ExtHostNotebookDocument
}
from
'
./extHostNotebookDocument
'
;
...
...
src/vs/workbench/contrib/notebook/browser/contrib/status/editorStatus.ts
浏览文件 @
9737b1aa
...
...
@@ -14,7 +14,7 @@ import { INotebookEditor, NOTEBOOK_IS_ACTIVE_EDITOR } from 'vs/workbench/contrib
import
{
INotebookService
}
from
'
vs/workbench/contrib/notebook/common/notebookService
'
;
import
{
IEditorService
}
from
'
vs/workbench/services/editor/common/editorService
'
;
import
{
CancellationTokenSource
}
from
'
vs/base/common/cancellation
'
;
import
{
INotebookKernel
Info2
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
INotebookKernel
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
Extensions
as
WorkbenchExtensions
,
IWorkbenchContributionsRegistry
,
IWorkbenchContribution
}
from
'
vs/workbench/common/contributions
'
;
import
{
LifecyclePhase
}
from
'
vs/workbench/services/lifecycle/common/lifecycle
'
;
import
{
Disposable
,
DisposableStore
,
MutableDisposable
}
from
'
vs/base/common/lifecycle
'
;
...
...
@@ -213,7 +213,7 @@ export class KernelStatus extends Disposable implements IWorkbenchContribution {
}
}
showKernelStatus
(
kernel
:
INotebookKernel
Info2
|
undefined
)
{
showKernelStatus
(
kernel
:
INotebookKernel
|
undefined
)
{
this
.
kernelInfoElement
.
value
=
this
.
_statusbarService
.
addEntry
({
text
:
kernel
?
kernel
.
label
:
'
Choose Kernel
'
,
ariaLabel
:
kernel
?
kernel
.
label
:
'
Choose Kernel
'
,
...
...
src/vs/workbench/contrib/notebook/browser/notebookBrowser.ts
浏览文件 @
9737b1aa
...
...
@@ -22,7 +22,7 @@ import { OutputRenderer } from 'vs/workbench/contrib/notebook/browser/view/outpu
import
{
RunStateRenderer
,
TimerRenderer
}
from
'
vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer
'
;
import
{
CellViewModel
,
IModelDecorationsChangeAccessor
,
NotebookViewModel
}
from
'
vs/workbench/contrib/notebook/browser/viewModel/notebookViewModel
'
;
import
{
NotebookCellTextModel
}
from
'
vs/workbench/contrib/notebook/common/model/notebookCellTextModel
'
;
import
{
CellKind
,
NotebookCellMetadata
,
NotebookDocumentMetadata
,
IEditor
,
INotebookKernel
Info2
,
ICellRange
,
IOrderedMimeType
,
INotebookRendererInfo
,
ICellOutput
,
IOutputItemDto
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
CellKind
,
NotebookCellMetadata
,
NotebookDocumentMetadata
,
IEditor
,
INotebookKernel
,
ICellRange
,
IOrderedMimeType
,
INotebookRendererInfo
,
ICellOutput
,
IOutputItemDto
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
Webview
}
from
'
vs/workbench/contrib/webview/browser/webview
'
;
import
{
NotebookTextModel
}
from
'
vs/workbench/contrib/notebook/common/model/notebookTextModel
'
;
import
{
IMenu
}
from
'
vs/platform/actions/common/actions
'
;
...
...
@@ -333,7 +333,7 @@ export interface INotebookEditor extends IEditor, ICommonNotebookEditor {
readonly
onDidChangeModel
:
Event
<
NotebookTextModel
|
undefined
>
;
readonly
onDidFocusEditorWidget
:
Event
<
void
>
;
readonly
isNotebookEditor
:
boolean
;
activeKernel
:
INotebookKernel
Info2
|
undefined
;
activeKernel
:
INotebookKernel
|
undefined
;
multipleKernelsAvailable
:
boolean
;
readonly
onDidChangeAvailableKernels
:
Event
<
void
>
;
readonly
onDidChangeKernel
:
Event
<
void
>
;
...
...
@@ -379,7 +379,7 @@ export interface INotebookEditor extends IEditor, ICommonNotebookEditor {
/**
* Fetch the contributed kernels for this notebook
*/
beginComputeContributedKernels
():
Promise
<
INotebookKernel
Info2
[]
>
;
beginComputeContributedKernels
():
Promise
<
INotebookKernel
[]
>
;
/**
* Insert a new cell around `cell`
...
...
src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.ts
浏览文件 @
9737b1aa
...
...
@@ -54,7 +54,7 @@ import { CodeCellViewModel } from 'vs/workbench/contrib/notebook/browser/viewMod
import
{
NotebookEventDispatcher
,
NotebookLayoutChangedEvent
}
from
'
vs/workbench/contrib/notebook/browser/viewModel/eventDispatcher
'
;
import
{
CellViewModel
,
IModelDecorationsChangeAccessor
,
INotebookEditorViewState
,
NotebookViewModel
}
from
'
vs/workbench/contrib/notebook/browser/viewModel/notebookViewModel
'
;
import
{
NotebookTextModel
}
from
'
vs/workbench/contrib/notebook/common/model/notebookTextModel
'
;
import
{
CellKind
,
CellToolbarLocKey
,
ICellRange
,
INotebookDecorationRenderOptions
,
INotebookKernel
Info2
,
NotebookCellRunState
,
NotebookRunState
,
ShowCellStatusBarKey
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
CellKind
,
CellToolbarLocKey
,
ICellRange
,
INotebookDecorationRenderOptions
,
INotebookKernel
,
NotebookCellRunState
,
NotebookRunState
,
ShowCellStatusBarKey
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
NotebookProviderInfo
}
from
'
vs/workbench/contrib/notebook/common/notebookProvider
'
;
import
{
INotebookService
}
from
'
vs/workbench/contrib/notebook/common/notebookService
'
;
import
{
editorGutterModifiedBackground
}
from
'
vs/workbench/contrib/scm/browser/dirtydiffDecorator
'
;
...
...
@@ -149,20 +149,20 @@ export class NotebookEditorWidget extends Disposable implements INotebookEditor
}
private
_activeKernelExecuted
:
boolean
=
false
;
private
_activeKernel
:
INotebookKernel
Info2
|
undefined
=
undefined
;
private
_activeKernel
:
INotebookKernel
|
undefined
=
undefined
;
private
readonly
_onDidChangeKernel
=
this
.
_register
(
new
Emitter
<
void
>
());
readonly
onDidChangeKernel
:
Event
<
void
>
=
this
.
_onDidChangeKernel
.
event
;
private
readonly
_onDidChangeAvailableKernels
=
this
.
_register
(
new
Emitter
<
void
>
());
readonly
onDidChangeAvailableKernels
:
Event
<
void
>
=
this
.
_onDidChangeAvailableKernels
.
event
;
private
_contributedKernelsComputePromise
:
CancelablePromise
<
INotebookKernel
Info2
[]
>
|
null
=
null
;
private
_contributedKernelsComputePromise
:
CancelablePromise
<
INotebookKernel
[]
>
|
null
=
null
;
private
_initialKernelComputationDone
:
boolean
=
false
;
get
activeKernel
()
{
return
this
.
_activeKernel
;
}
set
activeKernel
(
kernel
:
INotebookKernel
Info2
|
undefined
)
{
set
activeKernel
(
kernel
:
INotebookKernel
|
undefined
)
{
if
(
this
.
_isDisposed
)
{
return
;
}
...
...
@@ -829,7 +829,7 @@ export class NotebookEditorWidget extends Disposable implements INotebookEditor
tokenSource
.
dispose
();
}
private
async
_setKernelsFromProviders
(
provider
:
NotebookProviderInfo
,
kernels
:
INotebookKernel
Info2
[],
tokenSource
:
CancellationTokenSource
)
{
private
async
_setKernelsFromProviders
(
provider
:
NotebookProviderInfo
,
kernels
:
INotebookKernel
[],
tokenSource
:
CancellationTokenSource
)
{
const
rawAssociations
=
this
.
configurationService
.
getValue
<
NotebookKernelProviderAssociations
>
(
notebookKernelProviderAssociationsSettingId
)
||
[];
const
userSetKernelProvider
=
rawAssociations
.
filter
(
e
=>
e
.
viewType
===
this
.
viewModel
?.
viewType
)[
0
]?.
kernelProvider
;
const
memento
=
this
.
_activeKernelMemento
.
getMemento
(
StorageScope
.
GLOBAL
,
StorageTarget
.
MACHINE
);
...
...
@@ -915,7 +915,7 @@ export class NotebookEditorWidget extends Disposable implements INotebookEditor
tokenSource
.
dispose
();
}
private
async
_loadKernelPreloads
(
extensionLocation
:
URI
,
kernel
:
INotebookKernel
Info2
)
{
private
async
_loadKernelPreloads
(
extensionLocation
:
URI
,
kernel
:
INotebookKernel
)
{
if
(
kernel
.
preloads
&&
kernel
.
preloads
.
length
)
{
await
this
.
_resolveWebview
();
this
.
_webview
?.
updateKernelPreloads
([
extensionLocation
],
kernel
.
preloads
.
map
(
preload
=>
URI
.
revive
(
preload
)));
...
...
src/vs/workbench/contrib/notebook/browser/notebookServiceImpl.ts
浏览文件 @
9737b1aa
...
...
@@ -32,7 +32,7 @@ import { NotebookKernelProviderAssociationRegistry, NotebookViewTypesExtensionRe
import
{
CellViewModel
}
from
'
vs/workbench/contrib/notebook/browser/viewModel/notebookViewModel
'
;
import
{
NotebookCellTextModel
}
from
'
vs/workbench/contrib/notebook/common/model/notebookCellTextModel
'
;
import
{
NotebookTextModel
}
from
'
vs/workbench/contrib/notebook/common/model/notebookTextModel
'
;
import
{
ACCESSIBLE_NOTEBOOK_DISPLAY_ORDER
,
BUILTIN_RENDERER_ID
,
CellEditType
,
CellKind
,
DisplayOrderKey
,
ICellEditOperation
,
INotebookDecorationRenderOptions
,
INotebookKernel
Info2
,
INotebookKernelProvider
,
INotebookRendererInfo
,
INotebookTextModel
,
IOrderedMimeType
,
IOutputDto
,
mimeTypeIsAlwaysSecure
,
mimeTypeSupportedByCore
,
notebookDocumentFilterMatch
,
NotebookEditorPriority
,
NOTEBOOK_DISPLAY_ORDER
,
RENDERER_NOT_AVAILABLE
,
sortMimeTypes
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
ACCESSIBLE_NOTEBOOK_DISPLAY_ORDER
,
BUILTIN_RENDERER_ID
,
CellEditType
,
CellKind
,
DisplayOrderKey
,
ICellEditOperation
,
INotebookDecorationRenderOptions
,
INotebookKernel
,
INotebookKernelProvider
,
INotebookRendererInfo
,
INotebookTextModel
,
IOrderedMimeType
,
IOutputDto
,
mimeTypeIsAlwaysSecure
,
mimeTypeSupportedByCore
,
notebookDocumentFilterMatch
,
NotebookEditorPriority
,
NOTEBOOK_DISPLAY_ORDER
,
RENDERER_NOT_AVAILABLE
,
sortMimeTypes
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
NotebookOutputRendererInfo
}
from
'
vs/workbench/contrib/notebook/common/notebookOutputRenderer
'
;
import
{
NotebookEditorDescriptor
,
NotebookProviderInfo
}
from
'
vs/workbench/contrib/notebook/common/notebookProvider
'
;
import
{
IMainNotebookController
,
INotebookService
}
from
'
vs/workbench/contrib/notebook/common/notebookService
'
;
...
...
@@ -695,9 +695,9 @@ export class NotebookService extends Disposable implements INotebookService, ICu
});
}
async
getNotebookKernels
(
viewType
:
string
,
resource
:
URI
,
token
:
CancellationToken
):
Promise
<
INotebookKernel
Info2
[]
>
{
async
getNotebookKernels
(
viewType
:
string
,
resource
:
URI
,
token
:
CancellationToken
):
Promise
<
INotebookKernel
[]
>
{
const
filteredProvider
=
this
.
notebookKernelProviderInfoStore
.
get
(
viewType
,
resource
);
const
result
=
new
Array
<
INotebookKernel
Info2
[]
>
(
filteredProvider
.
length
);
const
result
=
new
Array
<
INotebookKernel
[]
>
(
filteredProvider
.
length
);
const
promises
=
filteredProvider
.
map
(
async
(
provider
,
index
)
=>
{
const
data
=
await
provider
.
provideKernels
(
resource
,
token
);
result
[
index
]
=
data
;
...
...
src/vs/workbench/contrib/notebook/common/notebookCommon.ts
浏览文件 @
9737b1aa
...
...
@@ -713,7 +713,7 @@ export function notebookDocumentFilterMatch(filter: INotebookDocumentFilter, vie
return
false
;
}
export
interface
INotebookKernel
InfoDto2
{
export
interface
INotebookKernel
{
id
?:
string
;
friendlyId
:
string
;
label
:
string
;
...
...
@@ -723,11 +723,9 @@ export interface INotebookKernelInfoDto2 {
description
?:
string
;
detail
?:
string
;
isPreferred
?:
boolean
;
preloads
?:
U
riComponents
[];
preloads
?:
U
RI
[];
supportedLanguages
?:
string
[]
}
export
interface
INotebookKernelInfo2
extends
INotebookKernelInfoDto2
{
resolve
(
uri
:
URI
,
editorId
:
string
,
token
:
CancellationToken
):
Promise
<
void
>
;
executeNotebookCell
(
uri
:
URI
,
handle
:
number
|
undefined
):
Promise
<
void
>
;
cancelNotebookCell
(
uri
:
URI
,
handle
:
number
|
undefined
):
Promise
<
void
>
;
...
...
@@ -738,7 +736,7 @@ export interface INotebookKernelProvider {
providerDescription
?:
string
;
selector
:
INotebookDocumentFilter
;
onDidChangeKernels
:
Event
<
URI
|
undefined
>
;
provideKernels
(
uri
:
URI
,
token
:
CancellationToken
):
Promise
<
INotebookKernel
Info2
[]
>
;
provideKernels
(
uri
:
URI
,
token
:
CancellationToken
):
Promise
<
INotebookKernel
[]
>
;
}
export
class
CellSequence
implements
ISequence
{
...
...
src/vs/workbench/contrib/notebook/common/notebookService.ts
浏览文件 @
9737b1aa
...
...
@@ -8,10 +8,7 @@ import { URI } from 'vs/base/common/uri';
import
{
NotebookProviderInfo
}
from
'
vs/workbench/contrib/notebook/common/notebookProvider
'
;
import
{
NotebookExtensionDescription
}
from
'
vs/workbench/api/common/extHost.protocol
'
;
import
{
Event
}
from
'
vs/base/common/event
'
;
import
{
INotebookTextModel
,
INotebookRendererInfo
,
IEditor
,
INotebookKernelProvider
,
INotebookKernelInfo2
,
TransientMetadata
,
NotebookDataDto
,
TransientOptions
,
INotebookDecorationRenderOptions
,
INotebookExclusiveDocumentFilter
,
IOrderedMimeType
,
IOutputDto
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
INotebookTextModel
,
INotebookRendererInfo
,
IEditor
,
INotebookKernelProvider
,
INotebookKernel
,
TransientMetadata
,
NotebookDataDto
,
TransientOptions
,
INotebookDecorationRenderOptions
,
INotebookExclusiveDocumentFilter
,
IOrderedMimeType
,
IOutputDto
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
NotebookTextModel
}
from
'
vs/workbench/contrib/notebook/common/model/notebookTextModel
'
;
import
{
CancellationToken
}
from
'
vs/base/common/cancellation
'
;
import
{
NotebookCellTextModel
}
from
'
vs/workbench/contrib/notebook/common/model/notebookCellTextModel
'
;
...
...
@@ -52,7 +49,7 @@ export interface INotebookService {
getMimeTypeInfo
(
textModel
:
NotebookTextModel
,
output
:
IOutputDto
):
readonly
IOrderedMimeType
[];
registerNotebookKernelProvider
(
provider
:
INotebookKernelProvider
):
IDisposable
;
getNotebookKernels
(
viewType
:
string
,
resource
:
URI
,
token
:
CancellationToken
):
Promise
<
INotebookKernel
Info2
[]
>
;
getNotebookKernels
(
viewType
:
string
,
resource
:
URI
,
token
:
CancellationToken
):
Promise
<
INotebookKernel
[]
>
;
getContributedNotebookKernelProviders
():
Promise
<
INotebookKernelProvider
[]
>
;
getContributedNotebookOutputRenderers
(
id
:
string
):
NotebookOutputRendererInfo
|
undefined
;
getRendererInfo
(
id
:
string
):
INotebookRendererInfo
|
undefined
;
...
...
src/vs/workbench/contrib/notebook/test/testNotebookEditor.ts
浏览文件 @
9737b1aa
...
...
@@ -18,7 +18,7 @@ import { NotebookEventDispatcher } from 'vs/workbench/contrib/notebook/browser/v
import
{
CellViewModel
,
IModelDecorationsChangeAccessor
,
NotebookViewModel
}
from
'
vs/workbench/contrib/notebook/browser/viewModel/notebookViewModel
'
;
import
{
NotebookCellTextModel
}
from
'
vs/workbench/contrib/notebook/common/model/notebookCellTextModel
'
;
import
{
NotebookTextModel
}
from
'
vs/workbench/contrib/notebook/common/model/notebookTextModel
'
;
import
{
CellKind
,
CellUri
,
INotebookEditorModel
,
NotebookCellMetadata
,
ICellRange
,
INotebookKernel
Info2
,
notebookDocumentMetadataDefaults
,
IOutputDto
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
CellKind
,
CellUri
,
INotebookEditorModel
,
NotebookCellMetadata
,
ICellRange
,
INotebookKernel
,
notebookDocumentMetadataDefaults
,
IOutputDto
}
from
'
vs/workbench/contrib/notebook/common/notebookCommon
'
;
import
{
Webview
}
from
'
vs/workbench/contrib/webview/browser/webview
'
;
import
{
ICompositeCodeEditor
,
IEditor
}
from
'
vs/editor/common/editorCommon
'
;
import
{
NotImplementedError
}
from
'
vs/base/common/errors
'
;
...
...
@@ -87,7 +87,7 @@ export class TestNotebookEditor implements INotebookEditor {
updateOutputHeight
(
cellInfo
:
ICommonCellInfo
,
output
:
ICellOutputViewModel
,
height
:
number
,
isInit
:
boolean
):
void
{
throw
new
Error
(
'
Method not implemented.
'
);
}
async
beginComputeContributedKernels
():
Promise
<
INotebookKernel
Info2
[]
>
{
async
beginComputeContributedKernels
():
Promise
<
INotebookKernel
[]
>
{
return
[];
}
setEditorDecorations
(
key
:
string
,
range
:
ICellRange
):
void
{
...
...
@@ -142,7 +142,7 @@ export class TestNotebookEditor implements INotebookEditor {
}
cursorNavigationMode
=
false
;
activeKernel
:
INotebookKernel
Info2
|
undefined
;
activeKernel
:
INotebookKernel
|
undefined
;
onDidChangeKernel
:
Event
<
void
>
=
new
Emitter
<
void
>
().
event
;
onDidChangeActiveEditor
:
Event
<
ICompositeCodeEditor
>
=
new
Emitter
<
ICompositeCodeEditor
>
().
event
;
activeCodeEditor
:
IEditor
|
undefined
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录