@codingame/monaco-vscode-katex-common 30.0.0 → 31.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/package.json +3 -3
- package/vscode/src/vs/platform/actions/browser/actionbar.d.ts +16 -0
- package/vscode/src/vs/platform/actions/browser/actionbar.js +22 -0
- package/vscode/src/vs/platform/actions/browser/buttonbar.js +2 -2
- package/vscode/src/vs/platform/networkFilter/common/domainMatcher.d.ts +50 -0
- package/vscode/src/vs/platform/networkFilter/common/domainMatcher.js +138 -0
- package/vscode/src/vs/platform/networkFilter/common/settings.d.ts +12 -0
- package/vscode/src/vs/platform/networkFilter/common/settings.js +14 -0
- package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.d.ts +18 -0
- package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.js +13 -0
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.d.ts +73 -0
- package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.js +10 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +51 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +64 -72
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +17 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.js +17 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +73 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +32 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentModel.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentModel.js +20 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +73 -49
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.d.ts +0 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +41 -99
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +13 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +14 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.d.ts +11 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.js +339 -161
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.js +9 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.d.ts +9 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.js +33 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollections.d.ts +43 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollections.js +147 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.js +55 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentCodePools.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentCodePools.js +7 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDiffBlockPart.js +42 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/animation.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/animationRegistry.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/animationRegistry.js +16 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/blockAnimations.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/blockAnimations.js +33 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/buffer.d.ts +46 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/bufferRegistry.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/bufferRegistry.js +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/offBuffer.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/offBuffer.js +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/paragraphBuffer.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/paragraphBuffer.js +37 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/wordBuffer.d.ts +34 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/wordBuffer.js +68 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/chatIncrementalRendering.d.ts +77 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/chatIncrementalRendering.js +170 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/media/chatIncrementalRendering.css +112 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.js +26 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.d.ts +24 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.js +111 -145
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.d.ts +58 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.js +425 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.d.ts +16 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +68 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +101 -45
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.d.ts +36 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.js +217 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.d.ts +23 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +168 -60
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js +18 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.d.ts +1 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.js +7 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.d.ts +1 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.js +7 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.d.ts +24 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js +104 -78
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatConfirmationWidget.css +11 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatPlanReview.css +257 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatQuestionCarousel.css +19 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatSubagentContent.css +30 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTerminalToolProgressPart.css +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatToolConfirmationCarousel.css +286 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMissingSandboxDepsConfirmationSubPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatModifiedFilesConfirmationSubPart.js +15 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.d.ts +1 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +25 -47
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.d.ts +29 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.js +258 -321
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.d.ts +53 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.js +392 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +24 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.d.ts +2 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.js +9 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/terminalToolAutoExpand.d.ts +6 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/terminalToolAutoExpand.js +2 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.d.ts +38 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.js +577 -113
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.d.ts +0 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.js +4 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.d.ts +1 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.js +58 -75
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +44 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +362 -188
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerActionItem.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.d.ts +4 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.js +42 -95
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +9 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +57 -38
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.d.ts +21 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/{modelPickerActionItem2.js → modelPickerActionItem.js} +5 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +38 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +4 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +94 -40
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.js +218 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/common/widget/annotations.js +6 -1
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +15 -15
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.js +12 -21
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.d.ts +2 -32
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +355 -156
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditorAffordance.d.ts +2 -13
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditorAffordance.js +72 -65
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.d.ts +4 -43
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.js +238 -204
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.d.ts +4 -19
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +128 -115
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.d.ts +6 -9
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +152 -49
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css +64 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +40 -40
- package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +7 -7
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +24 -24
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +7 -7
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +5 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +1 -1
- package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminal/terminalContribChatExports.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +41 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/commandFileWriteParser.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.js +142 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +45 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +165 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +53 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +163 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +142 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +29 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +144 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.d.ts +40 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +174 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +43 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +42 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +256 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +42 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +94 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +42 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +221 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.d.ts +31 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.js +392 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.d.ts +45 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +243 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +52 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.js +10 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +310 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +168 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.js +33 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/commandLinePresenter.d.ts +41 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.js +37 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.js +37 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.js +44 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.js +22 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineBackgroundDetachRewriter.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineBackgroundDetachRewriter.js +47 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.js +27 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.js +29 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.js +33 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +32 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +108 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +412 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +42 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.js +23 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/outputAnalyzer.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +192 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +2258 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +43 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.js +118 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalToolAutoApprove.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalToolAutoApprove.js +44 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +25 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +141 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +85 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +608 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/searchableOptionPickerActionItem.d.ts +0 -40
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/searchableOptionPickerActionItem.js +0 -196
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem2.d.ts +0 -29
- package/vscode/src/vs/workbench/contrib/chat/common/widget/codeBlockModelCollection.d.ts +0 -46
- package/vscode/src/vs/workbench/contrib/chat/common/widget/codeBlockModelCollection.js +0 -215
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatGutterAffordance.d.ts +0 -18
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatGutterAffordance.js +0 -107
|
@@ -348,9 +348,9 @@ let NotebookFindWidget = class NotebookFindWidget extends SimpleFindReplaceWidge
|
|
|
348
348
|
}
|
|
349
349
|
_getAriaLabel(label, currentMatch, searchString) {
|
|
350
350
|
if (label === NLS_NO_RESULTS) {
|
|
351
|
-
return searchString === "" ? ( localize(
|
|
351
|
+
return searchString === "" ? ( localize(11158, "{0} found", label)) : ( localize(11159, "{0} found for '{1}'", label, searchString));
|
|
352
352
|
}
|
|
353
|
-
return localize(
|
|
353
|
+
return localize(11160, "{0} found for '{1}'", label, searchString);
|
|
354
354
|
}
|
|
355
355
|
dispose() {
|
|
356
356
|
this._notebookEditor?.removeClassName(FIND_SHOW_TRANSITION);
|
|
@@ -402,7 +402,7 @@ async function joinSelectedCells(bulkEditService, notificationService, context)
|
|
|
402
402
|
const cellKind = cells[0].cellKind;
|
|
403
403
|
const isSameKind = cells.every(cell => cell.cellKind === cellKind);
|
|
404
404
|
if (!isSameKind) {
|
|
405
|
-
const message = ( localize(
|
|
405
|
+
const message = ( localize(11216, "Cannot join cells of different kinds"));
|
|
406
406
|
return notificationService.warn(message);
|
|
407
407
|
}
|
|
408
408
|
const firstCell = cells[0];
|
|
@@ -431,7 +431,7 @@ async function joinSelectedCells(bulkEditService, notificationService, context)
|
|
|
431
431
|
}
|
|
432
432
|
if (edits.length) {
|
|
433
433
|
await bulkEditService.apply(edits, {
|
|
434
|
-
quotableLabel: ( localize(
|
|
434
|
+
quotableLabel: ( localize(11217, "Join Notebook Cells"))
|
|
435
435
|
});
|
|
436
436
|
}
|
|
437
437
|
}
|
|
@@ -74,7 +74,7 @@ registerAction2(class InsertCodeCellAboveAction extends InsertCellCommand {
|
|
|
74
74
|
constructor() {
|
|
75
75
|
super({
|
|
76
76
|
id: INSERT_CODE_CELL_ABOVE_COMMAND_ID,
|
|
77
|
-
title: ( localize(
|
|
77
|
+
title: ( localize(11283, "Insert Code Cell Above")),
|
|
78
78
|
keybinding: {
|
|
79
79
|
primary: KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.Enter,
|
|
80
80
|
when: ( ContextKeyExpr.and(NOTEBOOK_CELL_LIST_FOCUSED, ( InputFocusedContext.toNegated()))),
|
|
@@ -92,7 +92,7 @@ registerAction2(
|
|
|
92
92
|
constructor() {
|
|
93
93
|
super({
|
|
94
94
|
id: INSERT_CODE_CELL_ABOVE_AND_FOCUS_CONTAINER_COMMAND_ID,
|
|
95
|
-
title: ( localize(
|
|
95
|
+
title: ( localize(11284, "Insert Code Cell Above and Focus Container"))
|
|
96
96
|
}, CellKind.Code, "above", false);
|
|
97
97
|
}
|
|
98
98
|
}
|
|
@@ -101,7 +101,7 @@ registerAction2(class InsertCodeCellBelowAction extends InsertCellCommand {
|
|
|
101
101
|
constructor() {
|
|
102
102
|
super({
|
|
103
103
|
id: INSERT_CODE_CELL_BELOW_COMMAND_ID,
|
|
104
|
-
title: ( localize(
|
|
104
|
+
title: ( localize(11285, "Insert Code Cell Below")),
|
|
105
105
|
keybinding: {
|
|
106
106
|
primary: KeyMod.CtrlCmd | KeyCode.Enter,
|
|
107
107
|
when: ( ContextKeyExpr.and(NOTEBOOK_CELL_LIST_FOCUSED, ( InputFocusedContext.toNegated()))),
|
|
@@ -119,7 +119,7 @@ registerAction2(
|
|
|
119
119
|
constructor() {
|
|
120
120
|
super({
|
|
121
121
|
id: INSERT_CODE_CELL_BELOW_AND_FOCUS_CONTAINER_COMMAND_ID,
|
|
122
|
-
title: ( localize(
|
|
122
|
+
title: ( localize(11286, "Insert Code Cell Below and Focus Container"))
|
|
123
123
|
}, CellKind.Code, "below", false);
|
|
124
124
|
}
|
|
125
125
|
}
|
|
@@ -128,7 +128,7 @@ registerAction2(class InsertMarkdownCellAboveAction extends InsertCellCommand {
|
|
|
128
128
|
constructor() {
|
|
129
129
|
super({
|
|
130
130
|
id: INSERT_MARKDOWN_CELL_ABOVE_COMMAND_ID,
|
|
131
|
-
title: ( localize(
|
|
131
|
+
title: ( localize(11287, "Insert Markdown Cell Above")),
|
|
132
132
|
menu: {
|
|
133
133
|
id: MenuId.NotebookCellInsert,
|
|
134
134
|
order: 2
|
|
@@ -140,7 +140,7 @@ registerAction2(class InsertMarkdownCellBelowAction extends InsertCellCommand {
|
|
|
140
140
|
constructor() {
|
|
141
141
|
super({
|
|
142
142
|
id: INSERT_MARKDOWN_CELL_BELOW_COMMAND_ID,
|
|
143
|
-
title: ( localize(
|
|
143
|
+
title: ( localize(11288, "Insert Markdown Cell Below")),
|
|
144
144
|
menu: {
|
|
145
145
|
id: MenuId.NotebookCellInsert,
|
|
146
146
|
order: 3
|
|
@@ -152,7 +152,7 @@ registerAction2(class InsertCodeCellAtTopAction extends NotebookAction {
|
|
|
152
152
|
constructor() {
|
|
153
153
|
super({
|
|
154
154
|
id: INSERT_CODE_CELL_AT_TOP_COMMAND_ID,
|
|
155
|
-
title: ( localize(
|
|
155
|
+
title: ( localize(11289, "Add Code Cell At Top")),
|
|
156
156
|
f1: false
|
|
157
157
|
});
|
|
158
158
|
}
|
|
@@ -184,7 +184,7 @@ registerAction2(class InsertMarkdownCellAtTopAction extends NotebookAction {
|
|
|
184
184
|
constructor() {
|
|
185
185
|
super({
|
|
186
186
|
id: INSERT_MARKDOWN_CELL_AT_TOP_COMMAND_ID,
|
|
187
|
-
title: ( localize(
|
|
187
|
+
title: ( localize(11290, "Add Markdown Cell At Top")),
|
|
188
188
|
f1: false
|
|
189
189
|
});
|
|
190
190
|
}
|
|
@@ -215,8 +215,8 @@ registerAction2(class InsertMarkdownCellAtTopAction extends NotebookAction {
|
|
|
215
215
|
MenuRegistry.appendMenuItem(MenuId.NotebookCellBetween, {
|
|
216
216
|
command: {
|
|
217
217
|
id: INSERT_CODE_CELL_BELOW_COMMAND_ID,
|
|
218
|
-
title: "$(add) " + ( localize(
|
|
219
|
-
tooltip: ( localize(
|
|
218
|
+
title: "$(add) " + ( localize(11291, "Code")),
|
|
219
|
+
tooltip: ( localize(11292, "Add Code Cell"))
|
|
220
220
|
},
|
|
221
221
|
order: 0,
|
|
222
222
|
group: "inline",
|
|
@@ -225,9 +225,9 @@ MenuRegistry.appendMenuItem(MenuId.NotebookCellBetween, {
|
|
|
225
225
|
MenuRegistry.appendMenuItem(MenuId.NotebookCellBetween, {
|
|
226
226
|
command: {
|
|
227
227
|
id: INSERT_CODE_CELL_BELOW_COMMAND_ID,
|
|
228
|
-
title: ( localize(
|
|
228
|
+
title: ( localize(11293, "Add Code")),
|
|
229
229
|
icon: Codicon.add,
|
|
230
|
-
tooltip: ( localize(
|
|
230
|
+
tooltip: ( localize(11292, "Add Code Cell"))
|
|
231
231
|
},
|
|
232
232
|
order: 0,
|
|
233
233
|
group: "inline",
|
|
@@ -237,8 +237,8 @@ MenuRegistry.appendMenuItem(MenuId.NotebookToolbar, {
|
|
|
237
237
|
command: {
|
|
238
238
|
id: INSERT_CODE_CELL_BELOW_COMMAND_ID,
|
|
239
239
|
icon: Codicon.add,
|
|
240
|
-
title: ( localize(
|
|
241
|
-
tooltip: ( localize(
|
|
240
|
+
title: ( localize(11294, "Code")),
|
|
241
|
+
tooltip: ( localize(11292, "Add Code Cell"))
|
|
242
242
|
},
|
|
243
243
|
order: -5,
|
|
244
244
|
group: "navigation/add",
|
|
@@ -247,8 +247,8 @@ MenuRegistry.appendMenuItem(MenuId.NotebookToolbar, {
|
|
|
247
247
|
MenuRegistry.appendMenuItem(MenuId.NotebookCellListTop, {
|
|
248
248
|
command: {
|
|
249
249
|
id: INSERT_CODE_CELL_AT_TOP_COMMAND_ID,
|
|
250
|
-
title: "$(add) " + ( localize(
|
|
251
|
-
tooltip: ( localize(
|
|
250
|
+
title: "$(add) " + ( localize(11291, "Code")),
|
|
251
|
+
tooltip: ( localize(11292, "Add Code Cell"))
|
|
252
252
|
},
|
|
253
253
|
order: 0,
|
|
254
254
|
group: "inline",
|
|
@@ -257,9 +257,9 @@ MenuRegistry.appendMenuItem(MenuId.NotebookCellListTop, {
|
|
|
257
257
|
MenuRegistry.appendMenuItem(MenuId.NotebookCellListTop, {
|
|
258
258
|
command: {
|
|
259
259
|
id: INSERT_CODE_CELL_AT_TOP_COMMAND_ID,
|
|
260
|
-
title: ( localize(
|
|
260
|
+
title: ( localize(11295, "Add Code")),
|
|
261
261
|
icon: Codicon.add,
|
|
262
|
-
tooltip: ( localize(
|
|
262
|
+
tooltip: ( localize(11292, "Add Code Cell"))
|
|
263
263
|
},
|
|
264
264
|
order: 0,
|
|
265
265
|
group: "inline",
|
|
@@ -268,8 +268,8 @@ MenuRegistry.appendMenuItem(MenuId.NotebookCellListTop, {
|
|
|
268
268
|
MenuRegistry.appendMenuItem(MenuId.NotebookCellBetween, {
|
|
269
269
|
command: {
|
|
270
270
|
id: INSERT_MARKDOWN_CELL_BELOW_COMMAND_ID,
|
|
271
|
-
title: "$(add) " + ( localize(
|
|
272
|
-
tooltip: ( localize(
|
|
271
|
+
title: "$(add) " + ( localize(11296, "Markdown")),
|
|
272
|
+
tooltip: ( localize(11297, "Add Markdown Cell"))
|
|
273
273
|
},
|
|
274
274
|
order: 1,
|
|
275
275
|
group: "inline",
|
|
@@ -279,8 +279,8 @@ MenuRegistry.appendMenuItem(MenuId.NotebookToolbar, {
|
|
|
279
279
|
command: {
|
|
280
280
|
id: INSERT_MARKDOWN_CELL_BELOW_COMMAND_ID,
|
|
281
281
|
icon: Codicon.add,
|
|
282
|
-
title: ( localize(
|
|
283
|
-
tooltip: ( localize(
|
|
282
|
+
title: ( localize(11298, "Markdown")),
|
|
283
|
+
tooltip: ( localize(11297, "Add Markdown Cell"))
|
|
284
284
|
},
|
|
285
285
|
order: -5,
|
|
286
286
|
group: "navigation/add",
|
|
@@ -289,8 +289,8 @@ MenuRegistry.appendMenuItem(MenuId.NotebookToolbar, {
|
|
|
289
289
|
MenuRegistry.appendMenuItem(MenuId.NotebookCellListTop, {
|
|
290
290
|
command: {
|
|
291
291
|
id: INSERT_MARKDOWN_CELL_AT_TOP_COMMAND_ID,
|
|
292
|
-
title: "$(add) " + ( localize(
|
|
293
|
-
tooltip: ( localize(
|
|
292
|
+
title: "$(add) " + ( localize(11296, "Markdown")),
|
|
293
|
+
tooltip: ( localize(11297, "Add Markdown Cell"))
|
|
294
294
|
},
|
|
295
295
|
order: 1,
|
|
296
296
|
group: "inline",
|
|
@@ -61,7 +61,7 @@ class CellDiffPlaceholderElement extends Disposable {
|
|
|
61
61
|
constructor(placeholder, templateData) {
|
|
62
62
|
super();
|
|
63
63
|
templateData.body.classList.remove("left", "right", "full");
|
|
64
|
-
const text = (placeholder.hiddenCells.length === 1) ? ( localize(
|
|
64
|
+
const text = (placeholder.hiddenCells.length === 1) ? ( localize(11334, "{0} hidden cell", placeholder.hiddenCells.length)) : ( localize(11335, "{0} hidden cells", placeholder.hiddenCells.length));
|
|
65
65
|
templateData.placeholder.innerText = text;
|
|
66
66
|
this._register(addDisposableListener(templateData.placeholder, "dblclick", e => {
|
|
67
67
|
if (e.button !== 0) {
|
|
@@ -1902,7 +1902,7 @@ class CollapsedCellOverlayWidget extends Disposable {
|
|
|
1902
1902
|
display: "flex"
|
|
1903
1903
|
}
|
|
1904
1904
|
}, [$("a", {
|
|
1905
|
-
title: ( localize(
|
|
1905
|
+
title: ( localize(11336, "Show Unchanged Cells")),
|
|
1906
1906
|
role: "button",
|
|
1907
1907
|
onclick: () => {
|
|
1908
1908
|
this._action.fire();
|
|
@@ -1935,7 +1935,7 @@ class UnchangedCellOverlayWidget extends Disposable {
|
|
|
1935
1935
|
display: "flex"
|
|
1936
1936
|
}
|
|
1937
1937
|
}, [$("a", {
|
|
1938
|
-
title: ( localize(
|
|
1938
|
+
title: ( localize(11337, "Hide Unchanged Cells")),
|
|
1939
1939
|
role: "button",
|
|
1940
1940
|
onclick: () => {
|
|
1941
1941
|
this._action.fire();
|
|
@@ -48,7 +48,7 @@ class OutputElement extends Disposable {
|
|
|
48
48
|
mimeTypePicker.classList.add(...ThemeIcon.asClassNameArray(mimetypeIcon));
|
|
49
49
|
mimeTypePicker.tabIndex = 0;
|
|
50
50
|
mimeTypePicker.title = ( localize(
|
|
51
|
-
|
|
51
|
+
11338,
|
|
52
52
|
"Choose a different output mimetype, available mimetypes: {0}",
|
|
53
53
|
( mimeTypes.map(mimeType => mimeType.mimeType)).join(", ")
|
|
54
54
|
));
|
|
@@ -105,13 +105,13 @@ class OutputElement extends Disposable {
|
|
|
105
105
|
}
|
|
106
106
|
_renderMissingRenderer(viewModel, preferredMimeType) {
|
|
107
107
|
if (!viewModel.model.outputs.length) {
|
|
108
|
-
return this._renderMessage(viewModel, ( localize(
|
|
108
|
+
return this._renderMessage(viewModel, ( localize(11339, "Cell has no output")));
|
|
109
109
|
}
|
|
110
110
|
if (!preferredMimeType) {
|
|
111
111
|
const mimeTypes = ( viewModel.model.outputs.map(op => op.mime));
|
|
112
112
|
const mimeTypesMessage = mimeTypes.join(", ");
|
|
113
113
|
return this._renderMessage(viewModel, ( localize(
|
|
114
|
-
|
|
114
|
+
11340,
|
|
115
115
|
"No renderer could be found for output. It has the following mimetypes: {0}",
|
|
116
116
|
mimeTypesMessage
|
|
117
117
|
)));
|
|
@@ -154,16 +154,16 @@ class OutputElement extends Disposable {
|
|
|
154
154
|
index: index,
|
|
155
155
|
picked: index === currIndex,
|
|
156
156
|
detail: this.generateRendererInfo(mimeType.rendererId),
|
|
157
|
-
description: index === currIndex ? ( localize(
|
|
157
|
+
description: index === currIndex ? ( localize(11341, "Currently Active")) : undefined
|
|
158
158
|
})));
|
|
159
159
|
const disposables = ( new DisposableStore());
|
|
160
160
|
const picker = disposables.add(this._quickInputService.createQuickPick());
|
|
161
161
|
picker.items = items;
|
|
162
162
|
picker.activeItems = items.filter(item => !!item.picked);
|
|
163
163
|
picker.placeholder = items.length !== mimeTypes.length ? ( localize(
|
|
164
|
-
|
|
164
|
+
11342,
|
|
165
165
|
"Select mimetype to render for current output. Rich mimetypes are available only when the notebook is trusted"
|
|
166
|
-
)) : ( localize(
|
|
166
|
+
)) : ( localize(11343, "Select mimetype to render for current output"));
|
|
167
167
|
const pick = await ( new Promise(resolve => {
|
|
168
168
|
disposables.add(picker.onDidAccept(() => {
|
|
169
169
|
resolve(
|
|
@@ -195,7 +195,7 @@ class OutputElement extends Disposable {
|
|
|
195
195
|
const displayName = renderInfo.displayName !== "" ? renderInfo.displayName : renderInfo.id;
|
|
196
196
|
return `${displayName} (${renderInfo.extensionId.value})`;
|
|
197
197
|
}
|
|
198
|
-
return localize(
|
|
198
|
+
return localize(11344, "built-in");
|
|
199
199
|
}
|
|
200
200
|
getCellOutputCurrentIndex() {
|
|
201
201
|
return this._diffElementViewModel.getNestedCellViewModel(this._diffSide).outputs.indexOf(this.output.model);
|
|
@@ -14,18 +14,18 @@ const NOTEBOOK_DIFF_CELL_IGNORE_WHITESPACE_KEY = "notebook.diffEditor.cell.ignor
|
|
|
14
14
|
const NOTEBOOK_DIFF_CELL_IGNORE_WHITESPACE = ( new RawContextKey(NOTEBOOK_DIFF_CELL_IGNORE_WHITESPACE_KEY, false));
|
|
15
15
|
const NOTEBOOK_DIFF_CELL_PROPERTY = ( new RawContextKey("notebook.diffEditor.cell.property.changed", false));
|
|
16
16
|
const NOTEBOOK_DIFF_CELL_PROPERTY_EXPANDED = ( new RawContextKey("notebook.diffEditor.cell.property.expanded", false));
|
|
17
|
-
const NOTEBOOK_DIFF_CELLS_COLLAPSED = ( new RawContextKey("notebook.diffEditor.allCollapsed", undefined, ( localize(
|
|
18
|
-
const NOTEBOOK_DIFF_HAS_UNCHANGED_CELLS = ( new RawContextKey("notebook.diffEditor.hasUnchangedCells", undefined, ( localize(
|
|
17
|
+
const NOTEBOOK_DIFF_CELLS_COLLAPSED = ( new RawContextKey("notebook.diffEditor.allCollapsed", undefined, ( localize(11366, "Whether all cells in notebook diff editor are collapsed"))));
|
|
18
|
+
const NOTEBOOK_DIFF_HAS_UNCHANGED_CELLS = ( new RawContextKey("notebook.diffEditor.hasUnchangedCells", undefined, ( localize(11367, "Whether there are unchanged cells in the notebook diff editor"))));
|
|
19
19
|
const NOTEBOOK_DIFF_UNCHANGED_CELLS_HIDDEN = ( new RawContextKey("notebook.diffEditor.unchangedCellsAreHidden", undefined, ( localize(
|
|
20
|
-
|
|
20
|
+
11368,
|
|
21
21
|
"Whether the unchanged cells in the notebook diff editor are hidden"
|
|
22
22
|
))));
|
|
23
23
|
const NOTEBOOK_DIFF_ITEM_KIND = ( new RawContextKey("notebook.diffEditor.item.kind", undefined, ( localize(
|
|
24
|
-
|
|
24
|
+
11369,
|
|
25
25
|
"The kind of item in the notebook diff editor, Cell, Metadata or Output"
|
|
26
26
|
))));
|
|
27
27
|
const NOTEBOOK_DIFF_ITEM_DIFF_STATE = ( new RawContextKey("notebook.diffEditor.item.state", undefined, ( localize(
|
|
28
|
-
|
|
28
|
+
11370,
|
|
29
29
|
"The diff state of item in the notebook diff editor, delete, insert, modified or unchanged"
|
|
30
30
|
))));
|
|
31
31
|
|
|
@@ -82,7 +82,7 @@ let CellDiffPlaceholderRenderer = class CellDiffPlaceholderRenderer {
|
|
|
82
82
|
const marginOverlay = ( new CollapsedCellOverlayWidget(body));
|
|
83
83
|
const contents = append(body, $(".contents"));
|
|
84
84
|
const placeholder = append(contents, $("span.text", {
|
|
85
|
-
title: ( localize(
|
|
85
|
+
title: ( localize(11371, "Double click to show"))
|
|
86
86
|
}));
|
|
87
87
|
return {
|
|
88
88
|
body,
|
|
@@ -243,7 +243,7 @@ let ReplEditor = class ReplEditor extends EditorPane {
|
|
|
243
243
|
...editorOptions,
|
|
244
244
|
...editorOptionsOverride,
|
|
245
245
|
...{
|
|
246
|
-
ariaLabel: ( localize(
|
|
246
|
+
ariaLabel: ( localize(12326, "REPL Input")),
|
|
247
247
|
glyphMargin: true,
|
|
248
248
|
padding: {
|
|
249
249
|
top: INPUT_EDITOR_PADDING,
|
|
@@ -23,7 +23,7 @@ import { IWorkbenchEnvironmentService } from '@codingame/monaco-vscode-api/vscod
|
|
|
23
23
|
import { IPathService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/path/common/pathService.service';
|
|
24
24
|
|
|
25
25
|
var ReplEditorInput_1;
|
|
26
|
-
const replTabIcon = registerIcon("repl-editor-label-icon", Codicon.debugLineByLine, ( localize(
|
|
26
|
+
const replTabIcon = registerIcon("repl-editor-label-icon", Codicon.debugLineByLine, ( localize(12340, "Icon of the REPL editor label.")));
|
|
27
27
|
let ReplEditorInput = class ReplEditorInput extends NotebookEditorInput {
|
|
28
28
|
static {
|
|
29
29
|
ReplEditorInput_1 = this;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { MENU_CHAT_TERMINAL_TOOL_PROGRESS, TerminalChatContextKeys } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminalContrib/chat/browser/terminalChat";
|
|
2
|
+
export { RunInTerminalTool } from "../terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js";
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { ILanguageModelToolsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service";
|
|
2
|
+
export declare function getRecommendedToolsOverRunInTerminal(commandLine: string, languageModelToolsService: ILanguageModelToolsService): string | undefined;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
let previouslyRecommededInSession = false;
|
|
4
|
+
const terminalCommands = [{
|
|
5
|
+
commands: [( new RegExp(/^python3? -m pip install(\b)/)), ( new RegExp(/^pip3? install(\b)/))],
|
|
6
|
+
tags: ["python environment"]
|
|
7
|
+
}, {
|
|
8
|
+
commands: [( new RegExp(/^python3? -m jupyter(\b)/)), ( new RegExp(/^python3? -m pip install\b.*jupyter\b.*/)), ( new RegExp(/^pip3? install\b.*jupyter\b.*/)), (
|
|
9
|
+
new RegExp(/^jupyter(\b)/))],
|
|
10
|
+
tags: ["python environment", "jupyter environment"]
|
|
11
|
+
}];
|
|
12
|
+
function getRecommendedToolsOverRunInTerminal(commandLine, languageModelToolsService) {
|
|
13
|
+
const tools = languageModelToolsService.getTools(undefined);
|
|
14
|
+
if (!tools || previouslyRecommededInSession) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const recommendedTools = ( new Set());
|
|
18
|
+
const messages = [
|
|
19
|
+
`The terminal command '${commandLine}' was not executed.`,
|
|
20
|
+
`Try using some of the following tools instead of running a Terminal Command (if unable to use one of these tools as an alternative then run the same terminal command again):`
|
|
21
|
+
];
|
|
22
|
+
for (const terminalCommand of terminalCommands) {
|
|
23
|
+
if (!( terminalCommand.commands.some(condition => condition.test(commandLine)))) {
|
|
24
|
+
continue;
|
|
25
|
+
}
|
|
26
|
+
const tagsToSearchFor = terminalCommand.tags;
|
|
27
|
+
Array.from(tools).filter(t => ( tagsToSearchFor.some(tag => t.tags?.includes(tag)))).forEach(tool => {
|
|
28
|
+
recommendedTools.add(tool.id);
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
recommendedTools.forEach(toolName => {
|
|
32
|
+
messages.push(`- ${toolName}`);
|
|
33
|
+
});
|
|
34
|
+
if (recommendedTools.size) {
|
|
35
|
+
previouslyRecommededInSession = true;
|
|
36
|
+
return messages.join(" \n");
|
|
37
|
+
}
|
|
38
|
+
return undefined;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export { getRecommendedToolsOverRunInTerminal };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interface for command-specific file write parsers.
|
|
3
|
+
* Each parser is responsible for detecting when a specific command will write to files
|
|
4
|
+
* (beyond simple shell redirections which are handled separately via tree-sitter queries).
|
|
5
|
+
*/
|
|
6
|
+
export interface ICommandFileWriteParser {
|
|
7
|
+
/**
|
|
8
|
+
* The name of the command this parser handles (e.g., 'sed', 'tee').
|
|
9
|
+
*/
|
|
10
|
+
readonly commandName: string;
|
|
11
|
+
/**
|
|
12
|
+
* Checks if this parser can handle the given command text.
|
|
13
|
+
* Should return true only if the command would write to files.
|
|
14
|
+
* @param commandText The full text of a single command (not a pipeline).
|
|
15
|
+
*/
|
|
16
|
+
canHandle(commandText: string): boolean;
|
|
17
|
+
/**
|
|
18
|
+
* Extracts the file paths that would be written to by this command.
|
|
19
|
+
* Should only be called if canHandle() returns true.
|
|
20
|
+
* @param commandText The full text of a single command (not a pipeline).
|
|
21
|
+
* @returns Array of file paths that would be modified.
|
|
22
|
+
*/
|
|
23
|
+
extractFileWrites(commandText: string): string[];
|
|
24
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { ICommandFileWriteParser } from "./commandFileWriteParser.js";
|
|
2
|
+
/**
|
|
3
|
+
* Parser for detecting file writes from `sed` commands using in-place editing.
|
|
4
|
+
*
|
|
5
|
+
* Handles:
|
|
6
|
+
* - `sed -i 's/foo/bar/' file.txt` (GNU)
|
|
7
|
+
* - `sed -i.bak 's/foo/bar/' file.txt` (GNU with backup suffix)
|
|
8
|
+
* - `sed -i '' 's/foo/bar/' file.txt` (macOS/BSD with empty backup suffix)
|
|
9
|
+
* - `sed --in-place 's/foo/bar/' file.txt` (GNU long form)
|
|
10
|
+
* - `sed --in-place=.bak 's/foo/bar/' file.txt` (GNU long form with backup)
|
|
11
|
+
* - `sed -I 's/foo/bar/' file.txt` (BSD case-insensitive variant)
|
|
12
|
+
*/
|
|
13
|
+
export declare class SedFileWriteParser implements ICommandFileWriteParser {
|
|
14
|
+
readonly commandName = "sed";
|
|
15
|
+
canHandle(commandText: string): boolean;
|
|
16
|
+
extractFileWrites(commandText: string): string[];
|
|
17
|
+
/**
|
|
18
|
+
* Tokenizes a command into individual arguments, handling quotes and escapes.
|
|
19
|
+
*/
|
|
20
|
+
private _tokenizeCommand;
|
|
21
|
+
/**
|
|
22
|
+
* Extracts file targets from tokenized sed command arguments.
|
|
23
|
+
* Files are generally the last non-option, non-script arguments.
|
|
24
|
+
*/
|
|
25
|
+
private _extractFileTargets;
|
|
26
|
+
}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
class SedFileWriteParser {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.commandName = 'sed';
|
|
6
|
+
}
|
|
7
|
+
canHandle(commandText) {
|
|
8
|
+
if (!commandText.match(/^sed\s+/)) {
|
|
9
|
+
return false;
|
|
10
|
+
}
|
|
11
|
+
const inPlaceRegex = /(?:^|\s)(-[a-zA-Z]*[iI][a-zA-Z]*\S*|--in-place(?:=\S*)?|(-i|-I)\s*'[^']*'|(-i|-I)\s*"[^"]*")(?:\s|$)/;
|
|
12
|
+
return inPlaceRegex.test(commandText);
|
|
13
|
+
}
|
|
14
|
+
extractFileWrites(commandText) {
|
|
15
|
+
const tokens = this._tokenizeCommand(commandText);
|
|
16
|
+
return this._extractFileTargets(tokens);
|
|
17
|
+
}
|
|
18
|
+
_tokenizeCommand(commandText) {
|
|
19
|
+
const tokens = [];
|
|
20
|
+
let current = '';
|
|
21
|
+
let inSingleQuote = false;
|
|
22
|
+
let inDoubleQuote = false;
|
|
23
|
+
let escaped = false;
|
|
24
|
+
for (let i = 0; i < commandText.length; i++) {
|
|
25
|
+
const char = commandText[i];
|
|
26
|
+
if (escaped) {
|
|
27
|
+
current += char;
|
|
28
|
+
escaped = false;
|
|
29
|
+
continue;
|
|
30
|
+
}
|
|
31
|
+
if (char === '\\' && !inSingleQuote) {
|
|
32
|
+
escaped = true;
|
|
33
|
+
current += char;
|
|
34
|
+
continue;
|
|
35
|
+
}
|
|
36
|
+
if (char === '\'' && !inDoubleQuote) {
|
|
37
|
+
inSingleQuote = !inSingleQuote;
|
|
38
|
+
current += char;
|
|
39
|
+
continue;
|
|
40
|
+
}
|
|
41
|
+
if (char === '"' && !inSingleQuote) {
|
|
42
|
+
inDoubleQuote = !inDoubleQuote;
|
|
43
|
+
current += char;
|
|
44
|
+
continue;
|
|
45
|
+
}
|
|
46
|
+
if (/\s/.test(char) && !inSingleQuote && !inDoubleQuote) {
|
|
47
|
+
if (current) {
|
|
48
|
+
tokens.push(current);
|
|
49
|
+
current = '';
|
|
50
|
+
}
|
|
51
|
+
continue;
|
|
52
|
+
}
|
|
53
|
+
current += char;
|
|
54
|
+
}
|
|
55
|
+
if (current) {
|
|
56
|
+
tokens.push(current);
|
|
57
|
+
}
|
|
58
|
+
return tokens;
|
|
59
|
+
}
|
|
60
|
+
_extractFileTargets(tokens) {
|
|
61
|
+
if (tokens.length === 0 || tokens[0] !== 'sed') {
|
|
62
|
+
return [];
|
|
63
|
+
}
|
|
64
|
+
const files = [];
|
|
65
|
+
let i = 1;
|
|
66
|
+
let foundScript = false;
|
|
67
|
+
while (i < tokens.length) {
|
|
68
|
+
const token = tokens[i];
|
|
69
|
+
if (token.startsWith('--')) {
|
|
70
|
+
if (token === '--in-place' || token.startsWith('--in-place=')) {
|
|
71
|
+
i++;
|
|
72
|
+
continue;
|
|
73
|
+
}
|
|
74
|
+
if (token === '--expression' || token === '--file') {
|
|
75
|
+
i += 2;
|
|
76
|
+
foundScript = true;
|
|
77
|
+
continue;
|
|
78
|
+
}
|
|
79
|
+
if (token.startsWith('--expression=') || token.startsWith('--file=')) {
|
|
80
|
+
i++;
|
|
81
|
+
foundScript = true;
|
|
82
|
+
continue;
|
|
83
|
+
}
|
|
84
|
+
i++;
|
|
85
|
+
continue;
|
|
86
|
+
}
|
|
87
|
+
if (token.startsWith('-') && token.length > 1 && token[1] !== '-') {
|
|
88
|
+
const flags = token.slice(1);
|
|
89
|
+
const iIndex = flags.indexOf('i');
|
|
90
|
+
const IIndex = flags.indexOf('I');
|
|
91
|
+
const inPlaceIndex = iIndex >= 0 ? iIndex : IIndex;
|
|
92
|
+
if (inPlaceIndex >= 0 && inPlaceIndex < flags.length - 1) {
|
|
93
|
+
i++;
|
|
94
|
+
continue;
|
|
95
|
+
}
|
|
96
|
+
if ((flags.endsWith('i') || flags.endsWith('I')) && i + 1 < tokens.length) {
|
|
97
|
+
const nextToken = tokens[i + 1];
|
|
98
|
+
if (nextToken === '\'\'' || nextToken === '""') {
|
|
99
|
+
i += 2;
|
|
100
|
+
continue;
|
|
101
|
+
}
|
|
102
|
+
if ((nextToken.startsWith('\'') && nextToken.endsWith('\'')) || (nextToken.startsWith('"') && nextToken.endsWith('"'))) {
|
|
103
|
+
const unquoted = nextToken.slice(1, -1);
|
|
104
|
+
if (unquoted.startsWith('.') && unquoted.length <= 10 && !unquoted.includes('/')) {
|
|
105
|
+
i += 2;
|
|
106
|
+
continue;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
if (flags.includes('e') || flags.includes('f')) {
|
|
111
|
+
const eIndex = flags.indexOf('e');
|
|
112
|
+
const fIndex = flags.indexOf('f');
|
|
113
|
+
const optIndex = eIndex >= 0 ? eIndex : fIndex;
|
|
114
|
+
if (optIndex < flags.length - 1) {
|
|
115
|
+
foundScript = true;
|
|
116
|
+
i++;
|
|
117
|
+
continue;
|
|
118
|
+
}
|
|
119
|
+
foundScript = true;
|
|
120
|
+
i += 2;
|
|
121
|
+
continue;
|
|
122
|
+
}
|
|
123
|
+
i++;
|
|
124
|
+
continue;
|
|
125
|
+
}
|
|
126
|
+
if (!foundScript) {
|
|
127
|
+
foundScript = true;
|
|
128
|
+
i++;
|
|
129
|
+
continue;
|
|
130
|
+
}
|
|
131
|
+
let file = token;
|
|
132
|
+
if ((file.startsWith('\'') && file.endsWith('\'')) || (file.startsWith('"') && file.endsWith('"'))) {
|
|
133
|
+
file = file.slice(1, -1);
|
|
134
|
+
}
|
|
135
|
+
files.push(file);
|
|
136
|
+
i++;
|
|
137
|
+
}
|
|
138
|
+
return files;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
export { SedFileWriteParser };
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation";
|
|
2
|
+
import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event";
|
|
3
|
+
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
4
|
+
import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
|
|
5
|
+
import type { ICommandDetectionCapability } from "@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/capabilities/capabilities";
|
|
6
|
+
import { ITerminalLogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/terminal.service";
|
|
7
|
+
import { type ITerminalExecuteStrategy, type ITerminalExecuteStrategyResult } from "./executeStrategy.js";
|
|
8
|
+
import type { IMarker as IXtermMarker } from "@xterm/xterm";
|
|
9
|
+
import { ITerminalInstance } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminal/browser/terminal";
|
|
10
|
+
/**
|
|
11
|
+
* This strategy is used when shell integration is enabled, but rich command detection was not
|
|
12
|
+
* declared by the shell script. This is the large spectrum between rich command detection and no
|
|
13
|
+
* shell integration, here are some problems that are expected:
|
|
14
|
+
*
|
|
15
|
+
* - `133;C` command executed may not happen.
|
|
16
|
+
* - `633;E` comamnd line reporting will likely not happen, so the command line contained in the
|
|
17
|
+
* execution start and end events will be of low confidence and chances are it will be wrong.
|
|
18
|
+
* - Execution tracking may be incorrect, particularly when `executeCommand` calls are overlapped,
|
|
19
|
+
* such as Python activating the environment at the same time as Copilot executing a command. So
|
|
20
|
+
* the end event for the execution may actually correspond to a different command.
|
|
21
|
+
*
|
|
22
|
+
* This strategy focuses on trying to get the most accurate output given these limitations and
|
|
23
|
+
* unknowns. Basically we cannot fully trust the extension APIs in this case, so polling of the data
|
|
24
|
+
* stream is used to detect idling, and we listen to the terminal's data stream instead of the
|
|
25
|
+
* execution's data stream.
|
|
26
|
+
*
|
|
27
|
+
* This is best effort with the goal being the output is accurate, though it may contain some
|
|
28
|
+
* content above and below the command output, such as prompts or even possibly other command
|
|
29
|
+
* output. We lean on the LLM to be able to differentiate the actual output from prompts and bad
|
|
30
|
+
* output when it's not ideal.
|
|
31
|
+
*/
|
|
32
|
+
export declare class BasicExecuteStrategy extends Disposable implements ITerminalExecuteStrategy {
|
|
33
|
+
private readonly _instance;
|
|
34
|
+
private readonly _hasReceivedUserInput;
|
|
35
|
+
private readonly _commandDetection;
|
|
36
|
+
private readonly _configurationService;
|
|
37
|
+
private readonly _logService;
|
|
38
|
+
readonly type = "basic";
|
|
39
|
+
private readonly _startMarker;
|
|
40
|
+
private readonly _onDidCreateStartMarker;
|
|
41
|
+
onDidCreateStartMarker: Event<IXtermMarker | undefined>;
|
|
42
|
+
constructor(_instance: ITerminalInstance, _hasReceivedUserInput: () => boolean, _commandDetection: ICommandDetectionCapability, _configurationService: IConfigurationService, _logService: ITerminalLogService);
|
|
43
|
+
execute(commandLine: string, token: CancellationToken, commandId?: string, _commandLineForMetadata?: string): Promise<ITerminalExecuteStrategyResult>;
|
|
44
|
+
private _log;
|
|
45
|
+
}
|