@codingame/monaco-vscode-notebook-service-override 17.2.0 → 18.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +1 -1
- package/package.json +30 -26
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/emptyTextEditorHint/emptyTextEditorHint.js +11 -8
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellCommands/cellCommands.js +26 -26
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/cellDiagnosticEditorContrib.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/cellDiagnosticEditorContrib.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/cellDiagnosticsActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/diagnosticCellStatusBarContrib.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/diagnosticCellStatusBarContrib.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/contributedStatusBarItemController.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/contributedStatusBarItemController.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/statusBarProviders.js +4 -4
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/clipboard/notebookClipboard.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/clipboard/notebookClipboard.js +9 -9
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/debug/notebookBreakpoints.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/debug/notebookDebugDecorations.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/debug/notebookDebugDecorations.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/editorHint/emptyCellEditorHint.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/editorStatusBar/editorStatusBar.js +12 -12
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/execute/executionEditorProgress.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFind.js +6 -6
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/format/formatting.js +7 -7
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/gettingStarted/notebookGettingStarted.js +4 -4
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/layout/layoutActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/marker/markerProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/multicursor/notebookMulticursor.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/multicursor/notebookMulticursor.js +9 -9
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/navigation/arrow.js +17 -17
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookInlineVariables.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookInlineVariables.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariables.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariablesDataSource.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariablesTree.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariablesTree.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariablesView.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariablesView.js +5 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/outline/notebookOutline.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/outline/notebookOutline.js +19 -19
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/profile/notebookProfile.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/saveParticipants/saveParticipants.js +13 -13
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/troubleshoot/layout.d.ts +8 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/troubleshoot/layout.js +173 -4
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/undoRedo/notebookUndoRedo.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/viewportWarmup/viewportWarmup.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +31 -31
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +67 -12
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/editActions.js +29 -29
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/executeActions.js +89 -38
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +26 -26
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/layoutActions.js +20 -20
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/notebookIndentationActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/sectionActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/sectionActions.js +16 -16
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/variablesActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffActions.js +22 -22
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebook.contribution.js +76 -75
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityHelp.js +11 -11
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibleView.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookExtensionPoint.js +33 -33
- package/vscode/src/vs/workbench/contrib/notebook/browser/outputEditor/notebookOutputEditor.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/outputEditor/notebookOutputEditor.js +6 -6
- package/vscode/src/vs/workbench/contrib/notebook/browser/outputEditor/notebookOutputEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookEditorServiceImpl.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookEditorServiceImpl.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookExecutionServiceImpl.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookExecutionStateServiceImpl.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookExecutionStateServiceImpl.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookKernelHistoryServiceImpl.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookKeymapServiceImpl.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookKeymapServiceImpl.js +5 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookLoggingServiceImpl.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookServiceImpl.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookServiceImpl.js +5 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineEntryFactory.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineEntryFactory.js +2 -1
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModelResolverServiceImpl.js +6 -1
- package/vscode/src/vs/workbench/services/workingCopy/common/fileWorkingCopyManager.js +12 -12
- package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopyManager.js +1 -1
- package/vscode/src/vs/workbench/services/workingCopy/common/untitledFileWorkingCopy.d.ts +1 -1
- package/vscode/src/vs/workbench/services/workingCopy/common/untitledFileWorkingCopy.js +1 -1
|
@@ -21,15 +21,15 @@ import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/pl
|
|
|
21
21
|
import { KeybindingWeight } from '@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybindingsRegistry';
|
|
22
22
|
import { INotificationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/notification/common/notification.service';
|
|
23
23
|
import { IQuickInputService } from '@codingame/monaco-vscode-api/vscode/vs/platform/quickinput/common/quickInput.service';
|
|
24
|
-
import { InlineChatController } from '@codingame/monaco-vscode-
|
|
24
|
+
import { InlineChatController } from '@codingame/monaco-vscode-6c0f93b9-169c-58c3-a9cb-7d60698eb52c-common/vscode/vs/workbench/contrib/inlineChat/browser/inlineChatController';
|
|
25
25
|
import { CTX_INLINE_CHAT_FOCUSED } from '@codingame/monaco-vscode-c465110a-57c0-59d7-a6b2-be0a4db7e517-common/vscode/vs/workbench/contrib/inlineChat/common/inlineChat';
|
|
26
26
|
import { runDeleteAction, changeCellToKind } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/notebook/browser/controller/cellOperations';
|
|
27
|
-
import { NotebookCellAction, CELL_TITLE_CELL_GROUP_ID, CellToolbarOrder, findTargetCellEditor, NOTEBOOK_EDITOR_WIDGET_ACTION_WEIGHT, CELL_TITLE_OUTPUT_GROUP_ID, executeNotebookCondition, NotebookAction, NotebookMultiCellAction } from '@codingame/monaco-vscode-
|
|
27
|
+
import { NotebookCellAction, CELL_TITLE_CELL_GROUP_ID, CellToolbarOrder, findTargetCellEditor, NOTEBOOK_EDITOR_WIDGET_ACTION_WEIGHT, CELL_TITLE_OUTPUT_GROUP_ID, executeNotebookCondition, NotebookAction, NotebookMultiCellAction } from '@codingame/monaco-vscode-1cb11a73-359e-5a2f-9e95-6989cc9858ee-common/vscode/vs/workbench/contrib/notebook/browser/controller/coreActions';
|
|
28
28
|
import { NotebookIndentUsingTabs, NotebookIndentUsingSpaces, NotebookChangeTabDisplaySize, NotebookIndentationToTabsAction, NotebookIndentationToSpacesAction } from './notebookIndentationActions.js';
|
|
29
|
-
import { QUIT_EDIT_CELL_COMMAND_ID, CellEditState, CHANGE_CELL_LANGUAGE, DETECT_CELL_LANGUAGE, getNotebookEditorFromEditorPane } from '@codingame/monaco-vscode-
|
|
30
|
-
import { editIcon, stopEditIcon, deleteCellIcon, clearIcon } from '@codingame/monaco-vscode-
|
|
29
|
+
import { QUIT_EDIT_CELL_COMMAND_ID, CellEditState, CHANGE_CELL_LANGUAGE, DETECT_CELL_LANGUAGE, getNotebookEditorFromEditorPane } from '@codingame/monaco-vscode-4372ad43-a220-5e78-83e6-95a9cfd64384-common/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser';
|
|
30
|
+
import { editIcon, stopEditIcon, deleteCellIcon, clearIcon } from '@codingame/monaco-vscode-1cb11a73-359e-5a2f-9e95-6989cc9858ee-common/vscode/vs/workbench/contrib/notebook/browser/notebookIcons';
|
|
31
31
|
import { CellKind, NotebookCellExecutionState, NotebookSetting, CellEditType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon';
|
|
32
|
-
import { NOTEBOOK_EDITOR_EDITABLE, NOTEBOOK_CELL_TYPE, NOTEBOOK_CELL_MARKDOWN_EDIT_MODE, NOTEBOOK_CELL_EDITABLE, NOTEBOOK_CELL_LIST_FOCUSED, NOTEBOOK_OUTPUT_INPUT_FOCUSED, NOTEBOOK_EDITOR_FOCUSED, NOTEBOOK_OUTPUT_FOCUSED, NOTEBOOK_CELL_HAS_OUTPUTS, NOTEBOOK_USE_CONSOLIDATED_OUTPUT_BUTTON, NOTEBOOK_CELL_IS_FIRST_OUTPUT, NOTEBOOK_IS_ACTIVE_EDITOR, NOTEBOOK_HAS_OUTPUTS } from '@codingame/monaco-vscode-
|
|
32
|
+
import { NOTEBOOK_EDITOR_EDITABLE, NOTEBOOK_CELL_TYPE, NOTEBOOK_CELL_MARKDOWN_EDIT_MODE, NOTEBOOK_CELL_EDITABLE, NOTEBOOK_CELL_LIST_FOCUSED, NOTEBOOK_OUTPUT_INPUT_FOCUSED, NOTEBOOK_EDITOR_FOCUSED, NOTEBOOK_OUTPUT_FOCUSED, NOTEBOOK_CELL_HAS_OUTPUTS, NOTEBOOK_USE_CONSOLIDATED_OUTPUT_BUTTON, NOTEBOOK_CELL_IS_FIRST_OUTPUT, NOTEBOOK_IS_ACTIVE_EDITOR, NOTEBOOK_HAS_OUTPUTS } from '@codingame/monaco-vscode-c87fff3a-2aa9-52ab-ba4d-17e8d1e5e185-common/vscode/vs/workbench/contrib/notebook/common/notebookContextKeys';
|
|
33
33
|
import { INotebookExecutionStateService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookExecutionStateService.service';
|
|
34
34
|
import { INotebookKernelService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookKernelService.service';
|
|
35
35
|
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
@@ -46,7 +46,7 @@ registerAction2(class EditCellAction extends NotebookCellAction {
|
|
|
46
46
|
constructor() {
|
|
47
47
|
super({
|
|
48
48
|
id: EDIT_CELL_COMMAND_ID,
|
|
49
|
-
title: ( localize(
|
|
49
|
+
title: ( localize(8314, "Edit Cell")),
|
|
50
50
|
keybinding: {
|
|
51
51
|
when: ( ContextKeyExpr.and(
|
|
52
52
|
NOTEBOOK_CELL_LIST_FOCUSED,
|
|
@@ -82,7 +82,7 @@ registerAction2(class QuitEditCellAction extends NotebookCellAction {
|
|
|
82
82
|
constructor() {
|
|
83
83
|
super({
|
|
84
84
|
id: QUIT_EDIT_CELL_COMMAND_ID,
|
|
85
|
-
title: ( localize(
|
|
85
|
+
title: ( localize(8315, "Stop Editing Cell")),
|
|
86
86
|
menu: {
|
|
87
87
|
id: MenuId.NotebookCellTitle,
|
|
88
88
|
when: ( ContextKeyExpr.and(( NOTEBOOK_CELL_TYPE.isEqualTo('markup')), NOTEBOOK_CELL_MARKDOWN_EDIT_MODE, NOTEBOOK_CELL_EDITABLE)),
|
|
@@ -123,7 +123,7 @@ registerAction2(class DeleteCellAction extends NotebookCellAction {
|
|
|
123
123
|
constructor() {
|
|
124
124
|
super({
|
|
125
125
|
id: DELETE_CELL_COMMAND_ID,
|
|
126
|
-
title: ( localize(
|
|
126
|
+
title: ( localize(8316, "Delete Cell")),
|
|
127
127
|
keybinding: {
|
|
128
128
|
primary: KeyCode.Delete,
|
|
129
129
|
mac: {
|
|
@@ -160,13 +160,13 @@ registerAction2(class DeleteCellAction extends NotebookCellAction {
|
|
|
160
160
|
const configService = accessor.get(IConfigurationService);
|
|
161
161
|
if (runState === NotebookCellExecutionState.Executing && configService.getValue(NotebookSetting.confirmDeleteRunningCell)) {
|
|
162
162
|
const dialogService = accessor.get(IDialogService);
|
|
163
|
-
const primaryButton = ( localize(
|
|
163
|
+
const primaryButton = ( localize(8317, "Delete"));
|
|
164
164
|
confirmation = await dialogService.confirm({
|
|
165
165
|
type: 'question',
|
|
166
|
-
message: ( localize(
|
|
166
|
+
message: ( localize(8318, "This cell is running, are you sure you want to delete it?")),
|
|
167
167
|
primaryButton: primaryButton,
|
|
168
168
|
checkbox: {
|
|
169
|
-
label: ( localize(
|
|
169
|
+
label: ( localize(8319, "Do not ask me again"))
|
|
170
170
|
}
|
|
171
171
|
});
|
|
172
172
|
}
|
|
@@ -186,7 +186,7 @@ registerAction2(class ClearCellOutputsAction extends NotebookCellAction {
|
|
|
186
186
|
constructor() {
|
|
187
187
|
super({
|
|
188
188
|
id: CLEAR_CELL_OUTPUTS_COMMAND_ID,
|
|
189
|
-
title: ( localize(
|
|
189
|
+
title: ( localize(8320, 'Clear Cell Outputs')),
|
|
190
190
|
menu: [
|
|
191
191
|
{
|
|
192
192
|
id: MenuId.NotebookCellTitle,
|
|
@@ -250,7 +250,7 @@ registerAction2(class ClearAllCellOutputsAction extends NotebookAction {
|
|
|
250
250
|
constructor() {
|
|
251
251
|
super({
|
|
252
252
|
id: CLEAR_ALL_CELLS_OUTPUTS_COMMAND_ID,
|
|
253
|
-
title: ( localize(
|
|
253
|
+
title: ( localize(8321, 'Clear All Outputs')),
|
|
254
254
|
precondition: NOTEBOOK_HAS_OUTPUTS,
|
|
255
255
|
menu: [
|
|
256
256
|
{
|
|
@@ -307,14 +307,14 @@ registerAction2(class ChangeCellLanguageAction extends NotebookCellAction {
|
|
|
307
307
|
constructor() {
|
|
308
308
|
super({
|
|
309
309
|
id: CHANGE_CELL_LANGUAGE,
|
|
310
|
-
title: ( localize(
|
|
310
|
+
title: ( localize(8322, 'Change Cell Language')),
|
|
311
311
|
keybinding: {
|
|
312
312
|
weight: KeybindingWeight.WorkbenchContrib,
|
|
313
313
|
primary: KeyChord(KeyMod.CtrlCmd | KeyCode.KeyK, KeyCode.KeyM),
|
|
314
314
|
when: ( ContextKeyExpr.and(NOTEBOOK_EDITOR_FOCUSED, NOTEBOOK_EDITOR_EDITABLE, NOTEBOOK_CELL_EDITABLE))
|
|
315
315
|
},
|
|
316
316
|
metadata: {
|
|
317
|
-
description: ( localize(
|
|
317
|
+
description: ( localize(8322, 'Change Cell Language')),
|
|
318
318
|
args: [
|
|
319
319
|
{
|
|
320
320
|
name: 'range',
|
|
@@ -387,10 +387,10 @@ registerAction2(class ChangeCellLanguageAction extends NotebookCellAction {
|
|
|
387
387
|
providerLanguages.forEach(languageId => {
|
|
388
388
|
let description;
|
|
389
389
|
if (context.cell.cellKind === CellKind.Markup ? (languageId === 'markdown') : (languageId === context.cell.language)) {
|
|
390
|
-
description = ( localize(
|
|
390
|
+
description = ( localize(8323, "({0}) - Current Language", languageId));
|
|
391
391
|
}
|
|
392
392
|
else {
|
|
393
|
-
description = ( localize(
|
|
393
|
+
description = ( localize(8324, "({0})", languageId));
|
|
394
394
|
}
|
|
395
395
|
const languageName = languageService.getLanguageName(languageId);
|
|
396
396
|
if (!languageName) {
|
|
@@ -413,16 +413,16 @@ registerAction2(class ChangeCellLanguageAction extends NotebookCellAction {
|
|
|
413
413
|
return a.description.localeCompare(b.description);
|
|
414
414
|
});
|
|
415
415
|
const autoDetectMode = {
|
|
416
|
-
label: ( localize(
|
|
416
|
+
label: ( localize(8325, "Auto Detect"))
|
|
417
417
|
};
|
|
418
418
|
const picks = [
|
|
419
419
|
autoDetectMode,
|
|
420
|
-
{ type: 'separator', label: ( localize(
|
|
420
|
+
{ type: 'separator', label: ( localize(8326, "languages (identifier)")) },
|
|
421
421
|
...topItems,
|
|
422
422
|
{ type: 'separator' },
|
|
423
423
|
...mainItems
|
|
424
424
|
];
|
|
425
|
-
const selection = await quickInputService.pick(picks, { placeHolder: ( localize(
|
|
425
|
+
const selection = await quickInputService.pick(picks, { placeHolder: ( localize(8327, "Select Language Mode")) });
|
|
426
426
|
const languageId = selection === autoDetectMode
|
|
427
427
|
? await languageDetectionService.detectLanguage(context.cell.uri)
|
|
428
428
|
: selection?.languageId;
|
|
@@ -455,7 +455,7 @@ registerAction2(class DetectCellLanguageAction extends NotebookCellAction {
|
|
|
455
455
|
constructor() {
|
|
456
456
|
super({
|
|
457
457
|
id: DETECT_CELL_LANGUAGE,
|
|
458
|
-
title: ( localize2(
|
|
458
|
+
title: ( localize2(8328, "Accept Detected Language for Cell")),
|
|
459
459
|
f1: true,
|
|
460
460
|
precondition: ( ContextKeyExpr.and(NOTEBOOK_EDITOR_EDITABLE, NOTEBOOK_CELL_EDITABLE)),
|
|
461
461
|
keybinding: { primary: KeyCode.KeyD | KeyMod.Alt | KeyMod.Shift, weight: KeybindingWeight.WorkbenchContrib }
|
|
@@ -473,7 +473,7 @@ registerAction2(class DetectCellLanguageAction extends NotebookCellAction {
|
|
|
473
473
|
setCellToLanguage(detection, context);
|
|
474
474
|
}
|
|
475
475
|
else {
|
|
476
|
-
notificationService.warn(( localize(
|
|
476
|
+
notificationService.warn(( localize(8329, "Unable to detect cell language")));
|
|
477
477
|
}
|
|
478
478
|
}
|
|
479
479
|
});
|
|
@@ -498,7 +498,7 @@ registerAction2(class SelectNotebookIndentation extends NotebookAction {
|
|
|
498
498
|
constructor() {
|
|
499
499
|
super({
|
|
500
500
|
id: SELECT_NOTEBOOK_INDENTATION_ID,
|
|
501
|
-
title: ( localize2(
|
|
501
|
+
title: ( localize2(8330, 'Select Indentation')),
|
|
502
502
|
f1: true,
|
|
503
503
|
precondition: ( ContextKeyExpr.and(
|
|
504
504
|
NOTEBOOK_IS_ACTIVE_EDITOR,
|
|
@@ -516,10 +516,10 @@ registerAction2(class SelectNotebookIndentation extends NotebookAction {
|
|
|
516
516
|
const instantiationService = accessor.get(IInstantiationService);
|
|
517
517
|
const activeNotebook = getNotebookEditorFromEditorPane(editorService.activeEditorPane);
|
|
518
518
|
if (!activeNotebook || activeNotebook.isDisposed) {
|
|
519
|
-
return quickInputService.pick([{ label: ( localize(
|
|
519
|
+
return quickInputService.pick([{ label: ( localize(8331, "No notebook editor active at this time")) }]);
|
|
520
520
|
}
|
|
521
521
|
if (activeNotebook.isReadOnly) {
|
|
522
|
-
return quickInputService.pick([{ label: ( localize(
|
|
522
|
+
return quickInputService.pick([{ label: ( localize(8332, "The active notebook editor is read-only.")) }]);
|
|
523
523
|
}
|
|
524
524
|
const picks = ( [
|
|
525
525
|
(
|
|
@@ -541,9 +541,9 @@ registerAction2(class SelectNotebookIndentation extends NotebookAction {
|
|
|
541
541
|
}
|
|
542
542
|
};
|
|
543
543
|
}));
|
|
544
|
-
picks.splice(3, 0, { type: 'separator', label: ( localize(
|
|
545
|
-
picks.unshift({ type: 'separator', label: ( localize(
|
|
546
|
-
const action = await quickInputService.pick(picks, { placeHolder: ( localize(
|
|
544
|
+
picks.splice(3, 0, { type: 'separator', label: ( localize(8333, "convert file")) });
|
|
545
|
+
picks.unshift({ type: 'separator', label: ( localize(8334, "change view")) });
|
|
546
|
+
const action = await quickInputService.pick(picks, { placeHolder: ( localize(8335, "Select Action")), matchOnDetail: true });
|
|
547
547
|
if (!action) {
|
|
548
548
|
return;
|
|
549
549
|
}
|
|
@@ -556,7 +556,7 @@ registerAction2(class CommentSelectedCellsAction extends NotebookMultiCellAction
|
|
|
556
556
|
constructor() {
|
|
557
557
|
super({
|
|
558
558
|
id: COMMENT_SELECTED_CELLS_ID,
|
|
559
|
-
title: ( localize(
|
|
559
|
+
title: ( localize(8336, "Comment Selected Cells")),
|
|
560
560
|
keybinding: {
|
|
561
561
|
when: ( ContextKeyExpr.and(
|
|
562
562
|
NOTEBOOK_EDITOR_FOCUSED,
|
|
@@ -13,15 +13,16 @@ import { IDebugService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/
|
|
|
13
13
|
import { CTX_INLINE_CHAT_FOCUSED } from '@codingame/monaco-vscode-c465110a-57c0-59d7-a6b2-be0a4db7e517-common/vscode/vs/workbench/contrib/inlineChat/common/inlineChat';
|
|
14
14
|
import { insertCell } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/notebook/browser/controller/cellOperations';
|
|
15
15
|
import { NotebookChatController } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatController';
|
|
16
|
-
import { NotebookAction, getContextFromUri, getContextFromActiveEditor, NotebookMultiCellAction, cellExecutionArgs, NOTEBOOK_EDITOR_WIDGET_ACTION_WEIGHT, parseMultiCellExecutionArgs, CELL_TITLE_CELL_GROUP_ID, CellToolbarOrder, NotebookCellAction } from '@codingame/monaco-vscode-
|
|
17
|
-
import { CellEditState, EXECUTE_CELL_COMMAND_ID, ScrollToRevealBehavior, CellFocusMode } from '@codingame/monaco-vscode-
|
|
18
|
-
import { executeAllIcon, executeIcon, executeAboveIcon, executeBelowIcon, stopIcon, executingStateIcon, errorStateIcon } from '@codingame/monaco-vscode-
|
|
16
|
+
import { NotebookAction, getContextFromUri, getContextFromActiveEditor, NotebookMultiCellAction, cellExecutionArgs, NOTEBOOK_EDITOR_WIDGET_ACTION_WEIGHT, parseMultiCellExecutionArgs, CELL_TITLE_CELL_GROUP_ID, CellToolbarOrder, NotebookCellAction } from '@codingame/monaco-vscode-1cb11a73-359e-5a2f-9e95-6989cc9858ee-common/vscode/vs/workbench/contrib/notebook/browser/controller/coreActions';
|
|
17
|
+
import { CellEditState, EXECUTE_CELL_COMMAND_ID, ScrollToRevealBehavior, CellFocusMode } from '@codingame/monaco-vscode-4372ad43-a220-5e78-83e6-95a9cfd64384-common/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser';
|
|
18
|
+
import { executeAllIcon, executeIcon, executeAboveIcon, executeBelowIcon, stopIcon, executingStateIcon, errorStateIcon } from '@codingame/monaco-vscode-1cb11a73-359e-5a2f-9e95-6989cc9858ee-common/vscode/vs/workbench/contrib/notebook/browser/notebookIcons';
|
|
19
19
|
import { CellKind, NotebookSetting, CellUri } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon';
|
|
20
|
-
import { NOTEBOOK_CELL_TYPE, NOTEBOOK_KERNEL_COUNT, NOTEBOOK_KERNEL_SOURCE_COUNT, NOTEBOOK_MISSING_KERNEL_EXTENSION, NOTEBOOK_CELL_EXECUTING, NOTEBOOK_IS_ACTIVE_EDITOR, NOTEBOOK_INTERRUPTIBLE_KERNEL, NOTEBOOK_HAS_SOMETHING_RUNNING, NOTEBOOK_CELL_LIST_FOCUSED, NOTEBOOK_CELL_EXECUTION_STATE, NOTEBOOK_HAS_RUNNING_CELL, NOTEBOOK_LAST_CELL_FAILED } from '@codingame/monaco-vscode-
|
|
21
|
-
import { NotebookEditorInput } from '@codingame/monaco-vscode-
|
|
20
|
+
import { NOTEBOOK_CELL_TYPE, NOTEBOOK_KERNEL_COUNT, NOTEBOOK_KERNEL_SOURCE_COUNT, NOTEBOOK_MISSING_KERNEL_EXTENSION, NOTEBOOK_CELL_EXECUTING, NOTEBOOK_IS_ACTIVE_EDITOR, NOTEBOOK_INTERRUPTIBLE_KERNEL, NOTEBOOK_HAS_SOMETHING_RUNNING, NOTEBOOK_CELL_LIST_FOCUSED, NOTEBOOK_CELL_EXECUTION_STATE, NOTEBOOK_HAS_RUNNING_CELL, NOTEBOOK_LAST_CELL_FAILED } from '@codingame/monaco-vscode-c87fff3a-2aa9-52ab-ba4d-17e8d1e5e185-common/vscode/vs/workbench/contrib/notebook/common/notebookContextKeys';
|
|
21
|
+
import { NotebookEditorInput } from '@codingame/monaco-vscode-4372ad43-a220-5e78-83e6-95a9cfd64384-common/vscode/vs/workbench/contrib/notebook/common/notebookEditorInput';
|
|
22
22
|
import { INotebookExecutionStateService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookExecutionStateService.service';
|
|
23
23
|
import { IEditorGroupsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService.service';
|
|
24
24
|
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
25
|
+
import { CodeCellViewModel } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel';
|
|
25
26
|
|
|
26
27
|
const EXECUTE_NOTEBOOK_COMMAND_ID = 'notebook.execute';
|
|
27
28
|
const CANCEL_NOTEBOOK_COMMAND_ID = 'notebook.cancelExecution';
|
|
@@ -50,28 +51,29 @@ function renderAllMarkdownCells(context) {
|
|
|
50
51
|
}
|
|
51
52
|
}
|
|
52
53
|
}
|
|
53
|
-
async function runCell(editorGroupsService, context) {
|
|
54
|
+
async function runCell(editorGroupsService, context, editorService) {
|
|
54
55
|
const group = editorGroupsService.activeGroup;
|
|
55
56
|
if (group) {
|
|
56
57
|
if (group.activeEditor) {
|
|
57
58
|
group.pinEditor(group.activeEditor);
|
|
58
59
|
}
|
|
59
60
|
}
|
|
61
|
+
if (context.autoReveal && (context.cell || context.selectedCells?.length) && editorService) {
|
|
62
|
+
editorService.openEditor({ resource: context.notebookEditor.textModel.uri, options: { revealIfOpened: true } });
|
|
63
|
+
}
|
|
60
64
|
if (context.ui && context.cell) {
|
|
61
|
-
await context.notebookEditor.executeNotebookCells(Iterable.single(context.cell));
|
|
62
65
|
if (context.autoReveal) {
|
|
63
|
-
|
|
64
|
-
context.notebookEditor.revealCellRangeInView({ start: cellIndex, end: cellIndex + 1 });
|
|
66
|
+
handleAutoReveal(context.cell, context.notebookEditor);
|
|
65
67
|
}
|
|
68
|
+
await context.notebookEditor.executeNotebookCells(Iterable.single(context.cell));
|
|
66
69
|
}
|
|
67
70
|
else if (context.selectedCells?.length || context.cell) {
|
|
68
71
|
const selectedCells = context.selectedCells?.length ? context.selectedCells : [context.cell];
|
|
69
|
-
await context.notebookEditor.executeNotebookCells(selectedCells);
|
|
70
72
|
const firstCell = selectedCells[0];
|
|
71
73
|
if (firstCell && context.autoReveal) {
|
|
72
|
-
|
|
73
|
-
context.notebookEditor.revealCellRangeInView({ start: cellIndex, end: cellIndex + 1 });
|
|
74
|
+
handleAutoReveal(firstCell, context.notebookEditor);
|
|
74
75
|
}
|
|
76
|
+
await context.notebookEditor.executeNotebookCells(selectedCells);
|
|
75
77
|
}
|
|
76
78
|
let foundEditor = undefined;
|
|
77
79
|
for (const [, codeEditor] of context.notebookEditor.codeEditors) {
|
|
@@ -84,11 +86,56 @@ async function runCell(editorGroupsService, context) {
|
|
|
84
86
|
return;
|
|
85
87
|
}
|
|
86
88
|
}
|
|
89
|
+
const SMART_VIEWPORT_TOP_REVEAL_PADDING = 20;
|
|
90
|
+
const SMART_VIEWPORT_BOTTOM_REVEAL_PADDING = 60;
|
|
91
|
+
function handleAutoReveal(cell, notebookEditor) {
|
|
92
|
+
notebookEditor.focusNotebookCell(cell, 'container', { skipReveal: true });
|
|
93
|
+
if (cell.cellKind === CellKind.Markup) {
|
|
94
|
+
const cellIndex = notebookEditor.getCellIndex(cell);
|
|
95
|
+
notebookEditor.revealCellRangeInView({ start: cellIndex, end: cellIndex + 1 });
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
if (!(cell instanceof CodeCellViewModel)) {
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
const cellEditorScrollTop = notebookEditor.getAbsoluteTopOfElement(cell);
|
|
102
|
+
const cellEditorScrollBottom = cellEditorScrollTop + cell.layoutInfo.outputContainerOffset;
|
|
103
|
+
const cellOutputHeight = cell.layoutInfo.outputTotalHeight;
|
|
104
|
+
const cellOutputScrollBottom = notebookEditor.getAbsoluteBottomOfElement(cell);
|
|
105
|
+
const viewportHeight = notebookEditor.getLayoutInfo().height;
|
|
106
|
+
const viewportHeight34 = viewportHeight * 0.34;
|
|
107
|
+
const viewportHeight66 = viewportHeight * 0.66;
|
|
108
|
+
const totalHeight = cell.layoutInfo.totalHeight;
|
|
109
|
+
const isFullyVisible = cellEditorScrollTop >= notebookEditor.scrollTop && cellOutputScrollBottom <= notebookEditor.scrollBottom;
|
|
110
|
+
const isEditorBottomVisible = (((cellEditorScrollBottom - 25) ) >= notebookEditor.scrollTop) &&
|
|
111
|
+
(((cellEditorScrollBottom + 25) ) <= notebookEditor.scrollBottom);
|
|
112
|
+
const revealWithTopPadding = (position) => { notebookEditor.setScrollTop(position - SMART_VIEWPORT_TOP_REVEAL_PADDING); };
|
|
113
|
+
const revealWithNoPadding = (position) => { notebookEditor.setScrollTop(position); };
|
|
114
|
+
const revealWithBottomPadding = (position) => { notebookEditor.setScrollTop(position + SMART_VIEWPORT_BOTTOM_REVEAL_PADDING); };
|
|
115
|
+
if (isFullyVisible) {
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
if (totalHeight <= viewportHeight && !isEditorBottomVisible) {
|
|
119
|
+
revealWithTopPadding(cellEditorScrollTop);
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
if (totalHeight > viewportHeight && !isEditorBottomVisible) {
|
|
123
|
+
if (cellOutputHeight > 0 && cellOutputHeight >= viewportHeight66) {
|
|
124
|
+
revealWithNoPadding(cellEditorScrollBottom - viewportHeight34);
|
|
125
|
+
}
|
|
126
|
+
else if (cellOutputHeight > 0) {
|
|
127
|
+
revealWithBottomPadding(cellOutputScrollBottom - viewportHeight);
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
revealWithNoPadding(cellEditorScrollBottom - viewportHeight66);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
87
134
|
registerAction2(class RenderAllMarkdownCellsAction extends NotebookAction {
|
|
88
135
|
constructor() {
|
|
89
136
|
super({
|
|
90
137
|
id: RENDER_ALL_MARKDOWN_CELLS,
|
|
91
|
-
title: ( localize(
|
|
138
|
+
title: ( localize(8337, "Render All Markdown Cells")),
|
|
92
139
|
});
|
|
93
140
|
}
|
|
94
141
|
async runWithContext(accessor, context) {
|
|
@@ -99,10 +146,10 @@ registerAction2(class ExecuteNotebookAction extends NotebookAction {
|
|
|
99
146
|
constructor() {
|
|
100
147
|
super({
|
|
101
148
|
id: EXECUTE_NOTEBOOK_COMMAND_ID,
|
|
102
|
-
title: ( localize(
|
|
149
|
+
title: ( localize(8338, "Run All")),
|
|
103
150
|
icon: executeAllIcon,
|
|
104
151
|
metadata: {
|
|
105
|
-
description: ( localize(
|
|
152
|
+
description: ( localize(8338, "Run All")),
|
|
106
153
|
args: [
|
|
107
154
|
{
|
|
108
155
|
name: 'uri',
|
|
@@ -146,7 +193,7 @@ registerAction2(class ExecuteCell extends NotebookMultiCellAction {
|
|
|
146
193
|
super({
|
|
147
194
|
id: EXECUTE_CELL_COMMAND_ID,
|
|
148
195
|
precondition: executeThisCellCondition,
|
|
149
|
-
title: ( localize(
|
|
196
|
+
title: ( localize(8339, "Execute Cell")),
|
|
150
197
|
keybinding: {
|
|
151
198
|
when: NOTEBOOK_CELL_LIST_FOCUSED,
|
|
152
199
|
primary: KeyMod.WinCtrl | KeyCode.Enter,
|
|
@@ -161,7 +208,7 @@ registerAction2(class ExecuteCell extends NotebookMultiCellAction {
|
|
|
161
208
|
group: 'inline'
|
|
162
209
|
},
|
|
163
210
|
metadata: {
|
|
164
|
-
description: ( localize(
|
|
211
|
+
description: ( localize(8339, "Execute Cell")),
|
|
165
212
|
args: cellExecutionArgs
|
|
166
213
|
},
|
|
167
214
|
icon: executeIcon
|
|
@@ -172,6 +219,7 @@ registerAction2(class ExecuteCell extends NotebookMultiCellAction {
|
|
|
172
219
|
}
|
|
173
220
|
async runWithContext(accessor, context) {
|
|
174
221
|
const editorGroupsService = accessor.get(IEditorGroupsService);
|
|
222
|
+
const editorService = accessor.get(IEditorService);
|
|
175
223
|
if (context.ui) {
|
|
176
224
|
await context.notebookEditor.focusNotebookCell(context.cell, 'container', { skipReveal: true });
|
|
177
225
|
}
|
|
@@ -187,7 +235,7 @@ registerAction2(class ExecuteCell extends NotebookMultiCellAction {
|
|
|
187
235
|
await context.notebookEditor.executeNotebookCells([editingCell]);
|
|
188
236
|
return;
|
|
189
237
|
}
|
|
190
|
-
await runCell(editorGroupsService, context);
|
|
238
|
+
await runCell(editorGroupsService, context, editorService);
|
|
191
239
|
}
|
|
192
240
|
});
|
|
193
241
|
registerAction2(class ExecuteAboveCells extends NotebookMultiCellAction {
|
|
@@ -195,7 +243,7 @@ registerAction2(class ExecuteAboveCells extends NotebookMultiCellAction {
|
|
|
195
243
|
super({
|
|
196
244
|
id: EXECUTE_CELLS_ABOVE,
|
|
197
245
|
precondition: executeCondition,
|
|
198
|
-
title: ( localize(
|
|
246
|
+
title: ( localize(8340, "Execute Above Cells")),
|
|
199
247
|
menu: [
|
|
200
248
|
{
|
|
201
249
|
id: MenuId.NotebookCellExecute,
|
|
@@ -235,7 +283,7 @@ registerAction2(class ExecuteCellAndBelow extends NotebookMultiCellAction {
|
|
|
235
283
|
super({
|
|
236
284
|
id: EXECUTE_CELL_AND_BELOW,
|
|
237
285
|
precondition: executeCondition,
|
|
238
|
-
title: ( localize(
|
|
286
|
+
title: ( localize(8341, "Execute Cell and Below")),
|
|
239
287
|
menu: [
|
|
240
288
|
{
|
|
241
289
|
id: MenuId.NotebookCellExecute,
|
|
@@ -275,9 +323,9 @@ registerAction2(class ExecuteCellFocusContainer extends NotebookMultiCellAction
|
|
|
275
323
|
super({
|
|
276
324
|
id: EXECUTE_CELL_FOCUS_CONTAINER_COMMAND_ID,
|
|
277
325
|
precondition: executeThisCellCondition,
|
|
278
|
-
title: ( localize(
|
|
326
|
+
title: ( localize(8342, "Execute Cell and Focus Container")),
|
|
279
327
|
metadata: {
|
|
280
|
-
description: ( localize(
|
|
328
|
+
description: ( localize(8342, "Execute Cell and Focus Container")),
|
|
281
329
|
args: cellExecutionArgs
|
|
282
330
|
},
|
|
283
331
|
icon: executeIcon
|
|
@@ -288,6 +336,7 @@ registerAction2(class ExecuteCellFocusContainer extends NotebookMultiCellAction
|
|
|
288
336
|
}
|
|
289
337
|
async runWithContext(accessor, context) {
|
|
290
338
|
const editorGroupsService = accessor.get(IEditorGroupsService);
|
|
339
|
+
const editorService = accessor.get(IEditorService);
|
|
291
340
|
if (context.ui) {
|
|
292
341
|
await context.notebookEditor.focusNotebookCell(context.cell, 'container', { skipReveal: true });
|
|
293
342
|
}
|
|
@@ -297,7 +346,7 @@ registerAction2(class ExecuteCellFocusContainer extends NotebookMultiCellAction
|
|
|
297
346
|
await context.notebookEditor.focusNotebookCell(firstCell, 'container', { skipReveal: true });
|
|
298
347
|
}
|
|
299
348
|
}
|
|
300
|
-
await runCell(editorGroupsService, context);
|
|
349
|
+
await runCell(editorGroupsService, context, editorService);
|
|
301
350
|
}
|
|
302
351
|
});
|
|
303
352
|
const cellCancelCondition = ( ContextKeyExpr.or(( ContextKeyExpr.equals(NOTEBOOK_CELL_EXECUTION_STATE.key, 'executing')), ( ContextKeyExpr.equals(NOTEBOOK_CELL_EXECUTION_STATE.key, 'pending'))));
|
|
@@ -306,7 +355,7 @@ registerAction2(class CancelExecuteCell extends NotebookMultiCellAction {
|
|
|
306
355
|
super({
|
|
307
356
|
id: CANCEL_CELL_COMMAND_ID,
|
|
308
357
|
precondition: cellCancelCondition,
|
|
309
|
-
title: ( localize(
|
|
358
|
+
title: ( localize(8343, "Stop Cell Execution")),
|
|
310
359
|
icon: stopIcon,
|
|
311
360
|
menu: {
|
|
312
361
|
id: MenuId.NotebookCellExecutePrimary,
|
|
@@ -314,7 +363,7 @@ registerAction2(class CancelExecuteCell extends NotebookMultiCellAction {
|
|
|
314
363
|
group: 'inline'
|
|
315
364
|
},
|
|
316
365
|
metadata: {
|
|
317
|
-
description: ( localize(
|
|
366
|
+
description: ( localize(8343, "Stop Cell Execution")),
|
|
318
367
|
args: [
|
|
319
368
|
{
|
|
320
369
|
name: 'options',
|
|
@@ -369,7 +418,7 @@ registerAction2(class ExecuteCellSelectBelow extends NotebookCellAction {
|
|
|
369
418
|
super({
|
|
370
419
|
id: EXECUTE_CELL_SELECT_BELOW,
|
|
371
420
|
precondition: ( ContextKeyExpr.or(executeThisCellCondition, ( NOTEBOOK_CELL_TYPE.isEqualTo('markup')))),
|
|
372
|
-
title: ( localize(
|
|
421
|
+
title: ( localize(8344, "Execute Notebook Cell and Select Below")),
|
|
373
422
|
keybinding: {
|
|
374
423
|
when: ( ContextKeyExpr.and(NOTEBOOK_CELL_LIST_FOCUSED, ( CTX_INLINE_CHAT_FOCUSED.negate()))),
|
|
375
424
|
primary: KeyMod.Shift | KeyCode.Enter,
|
|
@@ -379,6 +428,7 @@ registerAction2(class ExecuteCellSelectBelow extends NotebookCellAction {
|
|
|
379
428
|
}
|
|
380
429
|
async runWithContext(accessor, context) {
|
|
381
430
|
const editorGroupsService = accessor.get(IEditorGroupsService);
|
|
431
|
+
const editorService = accessor.get(IEditorService);
|
|
382
432
|
const idx = context.notebookEditor.getCellIndex(context.cell);
|
|
383
433
|
if (typeof idx !== 'number') {
|
|
384
434
|
return;
|
|
@@ -420,7 +470,7 @@ registerAction2(class ExecuteCellSelectBelow extends NotebookCellAction {
|
|
|
420
470
|
await context.notebookEditor.focusNotebookCell(newCell, 'editor', focusOptions);
|
|
421
471
|
}
|
|
422
472
|
}
|
|
423
|
-
return runCell(editorGroupsService, context);
|
|
473
|
+
return runCell(editorGroupsService, context, editorService);
|
|
424
474
|
}
|
|
425
475
|
}
|
|
426
476
|
});
|
|
@@ -429,7 +479,7 @@ registerAction2(class ExecuteCellInsertBelow extends NotebookCellAction {
|
|
|
429
479
|
super({
|
|
430
480
|
id: EXECUTE_CELL_INSERT_BELOW,
|
|
431
481
|
precondition: ( ContextKeyExpr.or(executeThisCellCondition, ( NOTEBOOK_CELL_TYPE.isEqualTo('markup')))),
|
|
432
|
-
title: ( localize(
|
|
482
|
+
title: ( localize(8345, "Execute Notebook Cell and Insert Below")),
|
|
433
483
|
keybinding: {
|
|
434
484
|
when: NOTEBOOK_CELL_LIST_FOCUSED,
|
|
435
485
|
primary: KeyMod.Alt | KeyCode.Enter,
|
|
@@ -439,6 +489,7 @@ registerAction2(class ExecuteCellInsertBelow extends NotebookCellAction {
|
|
|
439
489
|
}
|
|
440
490
|
async runWithContext(accessor, context) {
|
|
441
491
|
const editorGroupsService = accessor.get(IEditorGroupsService);
|
|
492
|
+
const editorService = accessor.get(IEditorService);
|
|
442
493
|
const idx = context.notebookEditor.getCellIndex(context.cell);
|
|
443
494
|
const languageService = accessor.get(ILanguageService);
|
|
444
495
|
const newFocusMode = context.cell.focusMode === CellFocusMode.Editor ? 'editor' : 'container';
|
|
@@ -450,7 +501,7 @@ registerAction2(class ExecuteCellInsertBelow extends NotebookCellAction {
|
|
|
450
501
|
context.cell.updateEditState(CellEditState.Preview, EXECUTE_CELL_INSERT_BELOW);
|
|
451
502
|
}
|
|
452
503
|
else {
|
|
453
|
-
runCell(editorGroupsService, context);
|
|
504
|
+
runCell(editorGroupsService, context, editorService);
|
|
454
505
|
}
|
|
455
506
|
}
|
|
456
507
|
});
|
|
@@ -466,7 +517,7 @@ registerAction2(class CancelAllNotebook extends CancelNotebook {
|
|
|
466
517
|
constructor() {
|
|
467
518
|
super({
|
|
468
519
|
id: CANCEL_NOTEBOOK_COMMAND_ID,
|
|
469
|
-
title: ( localize2(
|
|
520
|
+
title: ( localize2(8346, "Stop Execution")),
|
|
470
521
|
icon: stopIcon,
|
|
471
522
|
menu: [
|
|
472
523
|
{
|
|
@@ -489,7 +540,7 @@ registerAction2(class InterruptNotebook extends CancelNotebook {
|
|
|
489
540
|
constructor() {
|
|
490
541
|
super({
|
|
491
542
|
id: INTERRUPT_NOTEBOOK_COMMAND_ID,
|
|
492
|
-
title: ( localize2(
|
|
543
|
+
title: ( localize2(8347, "Interrupt")),
|
|
493
544
|
precondition: ( ContextKeyExpr.and(NOTEBOOK_HAS_SOMETHING_RUNNING, NOTEBOOK_INTERRUPTIBLE_KERNEL)),
|
|
494
545
|
icon: stopIcon,
|
|
495
546
|
menu: [
|
|
@@ -523,7 +574,7 @@ registerAction2(class InterruptNotebook extends CancelNotebook {
|
|
|
523
574
|
}
|
|
524
575
|
});
|
|
525
576
|
MenuRegistry.appendMenuItem(MenuId.NotebookToolbar, {
|
|
526
|
-
title: ( localize(
|
|
577
|
+
title: ( localize(8348, "Go To")),
|
|
527
578
|
submenu: MenuId.NotebookCellExecuteGoTo,
|
|
528
579
|
group: 'navigation/execute',
|
|
529
580
|
order: 20,
|
|
@@ -533,9 +584,9 @@ registerAction2(class RevealRunningCellAction extends NotebookAction {
|
|
|
533
584
|
constructor() {
|
|
534
585
|
super({
|
|
535
586
|
id: REVEAL_RUNNING_CELL,
|
|
536
|
-
title: ( localize(
|
|
537
|
-
tooltip: ( localize(
|
|
538
|
-
shortTitle: ( localize(
|
|
587
|
+
title: ( localize(8349, "Go to Running Cell")),
|
|
588
|
+
tooltip: ( localize(8349, "Go to Running Cell")),
|
|
589
|
+
shortTitle: ( localize(8349, "Go to Running Cell")),
|
|
539
590
|
precondition: NOTEBOOK_HAS_RUNNING_CELL,
|
|
540
591
|
menu: [
|
|
541
592
|
{
|
|
@@ -593,9 +644,9 @@ registerAction2(class RevealLastFailedCellAction extends NotebookAction {
|
|
|
593
644
|
constructor() {
|
|
594
645
|
super({
|
|
595
646
|
id: REVEAL_LAST_FAILED_CELL,
|
|
596
|
-
title: ( localize(
|
|
597
|
-
tooltip: ( localize(
|
|
598
|
-
shortTitle: ( localize(
|
|
647
|
+
title: ( localize(8350, "Go to Most Recently Failed Cell")),
|
|
648
|
+
tooltip: ( localize(8350, "Go to Most Recently Failed Cell")),
|
|
649
|
+
shortTitle: ( localize(8351, "Go to Most Recently Failed Cell")),
|
|
599
650
|
precondition: NOTEBOOK_LAST_CELL_FAILED,
|
|
600
651
|
menu: [
|
|
601
652
|
{
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { IAction2Options } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions";
|
|
2
2
|
import { ServicesAccessor } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
3
|
-
import { INotebookActionContext, NotebookAction } from "@codingame/monaco-vscode-
|
|
3
|
+
import { INotebookActionContext, NotebookAction } from "@codingame/monaco-vscode-1cb11a73-359e-5a2f-9e95-6989cc9858ee-common/vscode/vs/workbench/contrib/notebook/browser/controller/coreActions";
|
|
4
4
|
import { CellViewModel } from "@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl";
|
|
5
5
|
import { CellKind } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon";
|
|
6
6
|
export declare function insertNewCell(accessor: ServicesAccessor, context: INotebookActionContext, kind: CellKind, direction: "above" | "below", focusEditor: boolean): CellViewModel | null;
|