@codingame/monaco-vscode-api 8.0.2 → 8.0.3
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 +8 -8
- package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +2 -2
- package/vscode/src/vs/base/browser/ui/tree/treeDefaults.js +1 -1
- package/vscode/src/vs/editor/browser/coreCommands.js +3 -3
- package/vscode/src/vs/editor/browser/editorExtensions.js +6 -6
- package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +2 -2
- package/vscode/src/vs/editor/browser/widget/diffEditor/commands.js +12 -12
- package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +5 -5
- package/vscode/src/vs/editor/browser/widget/diffEditor/registrations.contribution.js +5 -5
- package/vscode/src/vs/editor/common/config/editorConfigurationSchema.js +49 -49
- package/vscode/src/vs/editor/common/core/editorColorRegistry.js +71 -71
- package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +6 -6
- package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +6 -6
- package/vscode/src/vs/editor/contrib/caretOperations/browser/caretOperations.js +2 -2
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionContributions.js +3 -3
- package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +2 -2
- package/vscode/src/vs/editor/contrib/find/browser/findController.js +16 -16
- package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +3 -3
- package/vscode/src/vs/editor/contrib/inlineEdits/browser/commands.js +6 -6
- package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +22 -22
- package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.js +1 -1
- package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +4 -4
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +2 -2
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +2 -2
- package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +9 -9
- package/vscode/src/vs/editor/editor.api.d.ts +91 -69
- package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +49 -49
- package/vscode/src/vs/platform/contextkey/common/contextkey.js +11 -11
- package/vscode/src/vs/platform/dialogs/common/dialogs.js +9 -9
- package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +2 -2
- package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +4 -4
- package/vscode/src/vs/platform/markers/common/markers.js +3 -3
- package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +11 -11
- package/vscode/src/vs/platform/theme/common/colors/miscColors.js +8 -8
- package/vscode/src/vs/platform/theme/common/iconRegistry.js +5 -5
- package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +5 -5
- package/vscode/src/vs/workbench/api/common/extHostLogService.js +1 -1
- package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +12 -12
- package/vscode/src/vs/workbench/browser/actions/developerActions.js +31 -31
- package/vscode/src/vs/workbench/browser/actions/layoutActions.js +129 -129
- package/vscode/src/vs/workbench/browser/actions/textInputActions.js +6 -6
- package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +21 -21
- package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +2 -2
- package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +15 -15
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsAlerts.js +3 -3
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +6 -6
- package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +18 -18
- package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +4 -4
- package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +6 -6
- package/vscode/src/vs/workbench/common/contextkeys.js +70 -70
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +127 -127
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityProvider.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +14 -14
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +4 -4
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +3 -3
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +3 -3
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +4 -4
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +2 -2
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +4 -4
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -2
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +2 -2
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +5 -5
- package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +4 -4
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +10 -10
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +5 -5
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +1 -1
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +9 -9
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +13 -13
- package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +9 -9
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +29 -29
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +65 -65
- package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +2 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +12 -12
- package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +57 -57
- package/vscode/src/vs/workbench/contrib/extensions/common/extensionsFileTemplate.js +5 -5
- package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +7 -7
- package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +3 -3
- package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +4 -4
- package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +6 -6
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +8 -8
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +24 -24
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +4 -4
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +1 -1
- package/vscode/src/vs/workbench/contrib/scm/browser/dirtyDiffSwitcher.js +2 -2
- package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +23 -23
- package/vscode/src/vs/workbench/contrib/snippets/browser/commands/abstractSnippetsActions.js +1 -1
- package/vscode/src/vs/workbench/contrib/snippets/browser/commands/fileTemplateSnippets.js +2 -2
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +3 -3
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +3 -3
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +9 -9
- package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +5 -5
- package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +5 -5
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +4 -4
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +32 -32
- package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +16 -16
- package/vscode/src/vs/workbench/contrib/workspace/common/workspace.js +2 -2
- package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +3 -3
- package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +16 -16
- package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +1 -1
- package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +82 -82
- package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +3 -3
- package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +22 -22
- package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +13 -13
- package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +11 -11
- package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +17 -17
|
@@ -15,7 +15,7 @@ let ChatAccessibilityProvider = class ChatAccessibilityProvider {
|
|
|
15
15
|
return 'listitem';
|
|
16
16
|
}
|
|
17
17
|
getWidgetAriaLabel() {
|
|
18
|
-
return ( localize(
|
|
18
|
+
return ( localize(7005, "Chat"));
|
|
19
19
|
}
|
|
20
20
|
getAriaLabel(element) {
|
|
21
21
|
if (isRequestVM(element)) {
|
|
@@ -40,23 +40,23 @@ let ChatAccessibilityProvider = class ChatAccessibilityProvider {
|
|
|
40
40
|
case 0:
|
|
41
41
|
break;
|
|
42
42
|
case 1:
|
|
43
|
-
fileTreeCountHint = ( localize(
|
|
43
|
+
fileTreeCountHint = ( localize(7006, "1 file tree"));
|
|
44
44
|
break;
|
|
45
45
|
default:
|
|
46
|
-
fileTreeCountHint = ( localize(
|
|
46
|
+
fileTreeCountHint = ( localize(7007, "{0} file trees", fileTreeCount));
|
|
47
47
|
break;
|
|
48
48
|
}
|
|
49
49
|
const codeBlockCount = marked_1.lexer(( (element.response.toString()))).filter(token => token.type === 'code')?.length ?? 0;
|
|
50
50
|
switch (codeBlockCount) {
|
|
51
51
|
case 0:
|
|
52
52
|
label = accessibleViewHint ? ( localize(
|
|
53
|
-
|
|
53
|
+
7008,
|
|
54
54
|
"{0} {1} {2}",
|
|
55
55
|
fileTreeCountHint,
|
|
56
56
|
(element.response.toString()),
|
|
57
57
|
accessibleViewHint
|
|
58
58
|
)) : ( localize(
|
|
59
|
-
|
|
59
|
+
7009,
|
|
60
60
|
"{0} {1}",
|
|
61
61
|
fileTreeCountHint,
|
|
62
62
|
(element.response.toString())
|
|
@@ -64,13 +64,13 @@ let ChatAccessibilityProvider = class ChatAccessibilityProvider {
|
|
|
64
64
|
break;
|
|
65
65
|
case 1:
|
|
66
66
|
label = accessibleViewHint ? ( localize(
|
|
67
|
-
|
|
67
|
+
7010,
|
|
68
68
|
"{0} 1 code block: {1} {2}",
|
|
69
69
|
fileTreeCountHint,
|
|
70
70
|
(element.response.toString()),
|
|
71
71
|
accessibleViewHint
|
|
72
72
|
)) : ( localize(
|
|
73
|
-
|
|
73
|
+
7011,
|
|
74
74
|
"{0} 1 code block: {1}",
|
|
75
75
|
fileTreeCountHint,
|
|
76
76
|
(element.response.toString())
|
|
@@ -78,14 +78,14 @@ let ChatAccessibilityProvider = class ChatAccessibilityProvider {
|
|
|
78
78
|
break;
|
|
79
79
|
default:
|
|
80
80
|
label = accessibleViewHint ? ( localize(
|
|
81
|
-
|
|
81
|
+
7012,
|
|
82
82
|
"{0} {1} code blocks: {2}",
|
|
83
83
|
fileTreeCountHint,
|
|
84
84
|
codeBlockCount,
|
|
85
85
|
(element.response.toString()),
|
|
86
86
|
accessibleViewHint
|
|
87
87
|
)) : ( localize(
|
|
88
|
-
|
|
88
|
+
7013,
|
|
89
89
|
"{0} {1} code blocks",
|
|
90
90
|
fileTreeCountHint,
|
|
91
91
|
codeBlockCount,
|
|
@@ -122,15 +122,15 @@ let ChatInputPart = class ChatInputPart extends Disposable {
|
|
|
122
122
|
if (verbose) {
|
|
123
123
|
const kbLabel = this.keybindingService.lookupKeybinding(AccessibilityCommandId.OpenAccessibilityHelp)?.getLabel();
|
|
124
124
|
return kbLabel ? ( localize(
|
|
125
|
-
|
|
125
|
+
7014,
|
|
126
126
|
"Chat Input, Type to ask questions or type / for topics, press enter to send out the request. Use {0} for Chat Accessibility Help.",
|
|
127
127
|
kbLabel
|
|
128
128
|
)) : ( localize(
|
|
129
|
-
|
|
129
|
+
7015,
|
|
130
130
|
"Chat Input, Type code here and press Enter to run. Use the Chat Accessibility Help command for more information."
|
|
131
131
|
));
|
|
132
132
|
}
|
|
133
|
-
return ( localize(
|
|
133
|
+
return ( localize(7016, "Chat Input"));
|
|
134
134
|
}
|
|
135
135
|
updateState(inputState) {
|
|
136
136
|
if (this.inHistoryNavigation) {
|
|
@@ -354,7 +354,7 @@ let ChatInputPart = class ChatInputPart extends Disposable {
|
|
|
354
354
|
actionViewItemProvider: (action, options) => {
|
|
355
355
|
if (this.location === ChatAgentLocation.Panel) {
|
|
356
356
|
if ((action.id === SubmitAction.ID || action.id === CancelAction.ID) && action instanceof MenuItemAction) {
|
|
357
|
-
const dropdownAction = this.instantiationService.createInstance(MenuItemAction, { id: 'chat.moreExecuteActions', title: ( localize(
|
|
357
|
+
const dropdownAction = this.instantiationService.createInstance(MenuItemAction, { id: 'chat.moreExecuteActions', title: ( localize(7017, "More...")), icon: Codicon.chevronDown }, undefined, undefined, undefined, undefined);
|
|
358
358
|
return this.instantiationService.createInstance(ChatSubmitDropdownActionItem, action, dropdownAction);
|
|
359
359
|
}
|
|
360
360
|
}
|
|
@@ -411,12 +411,12 @@ let ChatInputPart = class ChatInputPart extends Disposable {
|
|
|
411
411
|
const fileDirname = dirname(file.path);
|
|
412
412
|
const friendlyName = `${fileBasename} ${fileDirname}`;
|
|
413
413
|
const ariaLabel = range ? ( localize(
|
|
414
|
-
|
|
414
|
+
7018,
|
|
415
415
|
"Attached file, {0}, line {1} to line {2}",
|
|
416
416
|
friendlyName,
|
|
417
417
|
range.startLineNumber,
|
|
418
418
|
range.endLineNumber
|
|
419
|
-
)) : ( localize(
|
|
419
|
+
)) : ( localize(7019, "Attached file, {0}", friendlyName));
|
|
420
420
|
label.setFile(file, {
|
|
421
421
|
fileKind: FileKind.FILE,
|
|
422
422
|
hidePath: true,
|
|
@@ -429,7 +429,7 @@ let ChatInputPart = class ChatInputPart extends Disposable {
|
|
|
429
429
|
const attachmentLabel = attachment.fullName ?? attachment.name;
|
|
430
430
|
const withIcon = attachment.icon?.id ? `$(${attachment.icon.id}) ${attachmentLabel}` : attachmentLabel;
|
|
431
431
|
label.setLabel(withIcon, undefined);
|
|
432
|
-
widget.ariaLabel = ( localize(
|
|
432
|
+
widget.ariaLabel = ( localize(7020, "Attached context, {0}", attachment.name));
|
|
433
433
|
widget.tabIndex = 0;
|
|
434
434
|
}
|
|
435
435
|
const clearButton = ( (new Button(widget, { supportIcons: true })));
|
|
@@ -540,7 +540,7 @@ let ChatSubmitDropdownActionItem = class ChatSubmitDropdownActionItem extends Dr
|
|
|
540
540
|
if (secondaryAgent) {
|
|
541
541
|
secondary.forEach(a => {
|
|
542
542
|
if (a.id === ChatSubmitSecondaryAgentAction.ID) {
|
|
543
|
-
a.label = ( localize(
|
|
543
|
+
a.label = ( localize(7021, "Send to @{0}", secondaryAgent.name));
|
|
544
544
|
}
|
|
545
545
|
return a;
|
|
546
546
|
});
|
|
@@ -301,10 +301,10 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
|
|
|
301
301
|
clearNode(templateData.detail);
|
|
302
302
|
if (element.agentOrSlashCommandDetected) {
|
|
303
303
|
const msg = element.slashCommand ? ( localize(
|
|
304
|
-
|
|
304
|
+
7022,
|
|
305
305
|
"used {0} [[(rerun without)]]",
|
|
306
306
|
`${chatSubcommandLeader}${element.slashCommand.name}`
|
|
307
|
-
)) : ( localize(
|
|
307
|
+
)) : ( localize(7023, "[[(rerun without)]]"));
|
|
308
308
|
reset(templateData.detail, renderFormattedText(msg, {
|
|
309
309
|
className: 'agentOrSlashCommandDetected',
|
|
310
310
|
inline: true,
|
|
@@ -4,43 +4,43 @@ const CONTEXT_RESPONSE_VOTE = ( (new RawContextKey(
|
|
|
4
4
|
'chatSessionResponseVote',
|
|
5
5
|
'',
|
|
6
6
|
{ type: 'string', description: ( localize(
|
|
7
|
-
|
|
7
|
+
7024,
|
|
8
8
|
"When the response has been voted up, is set to 'up'. When voted down, is set to 'down'. Otherwise an empty string."
|
|
9
9
|
)) }
|
|
10
10
|
)));
|
|
11
11
|
const CONTEXT_RESPONSE_DETECTED_AGENT_COMMAND = ( (new RawContextKey(
|
|
12
12
|
'chatSessionResponseDetectedAgentOrCommand',
|
|
13
13
|
false,
|
|
14
|
-
{ type: 'boolean', description: ( localize(
|
|
14
|
+
{ type: 'boolean', description: ( localize(7025, "When the agent or command was automatically detected")) }
|
|
15
15
|
)));
|
|
16
16
|
const CONTEXT_CHAT_RESPONSE_SUPPORT_ISSUE_REPORTING = ( (new RawContextKey(
|
|
17
17
|
'chatResponseSupportsIssueReporting',
|
|
18
18
|
false,
|
|
19
|
-
{ type: 'boolean', description: ( localize(
|
|
19
|
+
{ type: 'boolean', description: ( localize(7026, "True when the current chat response supports issue reporting.")) }
|
|
20
20
|
)));
|
|
21
21
|
const CONTEXT_RESPONSE_FILTERED = ( (new RawContextKey(
|
|
22
22
|
'chatSessionResponseFiltered',
|
|
23
23
|
false,
|
|
24
|
-
{ type: 'boolean', description: ( localize(
|
|
24
|
+
{ type: 'boolean', description: ( localize(7027, "True when the chat response was filtered out by the server.")) }
|
|
25
25
|
)));
|
|
26
26
|
const CONTEXT_CHAT_REQUEST_IN_PROGRESS = ( (new RawContextKey(
|
|
27
27
|
'chatSessionRequestInProgress',
|
|
28
28
|
false,
|
|
29
|
-
{ type: 'boolean', description: ( localize(
|
|
29
|
+
{ type: 'boolean', description: ( localize(7028, "True when the current request is still in progress.")) }
|
|
30
30
|
)));
|
|
31
|
-
const CONTEXT_RESPONSE = ( (new RawContextKey('chatResponse', false, { type: 'boolean', description: ( localize(
|
|
32
|
-
const CONTEXT_REQUEST = ( (new RawContextKey('chatRequest', false, { type: 'boolean', description: ( localize(
|
|
33
|
-
const CONTEXT_CHAT_EDIT_APPLIED = ( (new RawContextKey('chatEditApplied', false, { type: 'boolean', description: ( localize(
|
|
34
|
-
const CONTEXT_CHAT_INPUT_HAS_TEXT = ( (new RawContextKey('chatInputHasText', false, { type: 'boolean', description: ( localize(
|
|
35
|
-
const CONTEXT_CHAT_INPUT_HAS_FOCUS = ( (new RawContextKey('chatInputHasFocus', false, { type: 'boolean', description: ( localize(
|
|
36
|
-
const CONTEXT_IN_CHAT_INPUT = ( (new RawContextKey('inChatInput', false, { type: 'boolean', description: ( localize(
|
|
37
|
-
const CONTEXT_IN_CHAT_SESSION = ( (new RawContextKey('inChat', false, { type: 'boolean', description: ( localize(
|
|
31
|
+
const CONTEXT_RESPONSE = ( (new RawContextKey('chatResponse', false, { type: 'boolean', description: ( localize(7029, "The chat item is a response.")) })));
|
|
32
|
+
const CONTEXT_REQUEST = ( (new RawContextKey('chatRequest', false, { type: 'boolean', description: ( localize(7030, "The chat item is a request")) })));
|
|
33
|
+
const CONTEXT_CHAT_EDIT_APPLIED = ( (new RawContextKey('chatEditApplied', false, { type: 'boolean', description: ( localize(7031, "True when the chat text edits have been applied.")) })));
|
|
34
|
+
const CONTEXT_CHAT_INPUT_HAS_TEXT = ( (new RawContextKey('chatInputHasText', false, { type: 'boolean', description: ( localize(7032, "True when the chat input has text.")) })));
|
|
35
|
+
const CONTEXT_CHAT_INPUT_HAS_FOCUS = ( (new RawContextKey('chatInputHasFocus', false, { type: 'boolean', description: ( localize(7033, "True when the chat input has focus.")) })));
|
|
36
|
+
const CONTEXT_IN_CHAT_INPUT = ( (new RawContextKey('inChatInput', false, { type: 'boolean', description: ( localize(7034, "True when focus is in the chat input, false otherwise.")) })));
|
|
37
|
+
const CONTEXT_IN_CHAT_SESSION = ( (new RawContextKey('inChat', false, { type: 'boolean', description: ( localize(7035, "True when focus is in the chat widget, false otherwise.")) })));
|
|
38
38
|
const CONTEXT_CHAT_ENABLED = ( (new RawContextKey('chatIsEnabled', false, { type: 'boolean', description: ( localize(
|
|
39
|
-
|
|
39
|
+
7036,
|
|
40
40
|
"True when chat is enabled because a default chat participant is registered."
|
|
41
41
|
)) })));
|
|
42
42
|
const CONTEXT_CHAT_INPUT_CURSOR_AT_TOP = ( (new RawContextKey('chatCursorAtTop', false)));
|
|
43
43
|
const CONTEXT_CHAT_INPUT_HAS_AGENT = ( (new RawContextKey('chatInputHasAgent', false)));
|
|
44
44
|
const CONTEXT_CHAT_LOCATION = ( (new RawContextKey('chatLocation', undefined)));
|
|
45
|
-
const CONTEXT_IN_QUICK_CHAT = ( (new RawContextKey('quickChatHasFocus', false, { type: 'boolean', description: ( localize(
|
|
45
|
+
const CONTEXT_IN_QUICK_CHAT = ( (new RawContextKey('quickChatHasFocus', false, { type: 'boolean', description: ( localize(7037, "True when the quick chat UI has focus, false otherwise.")) })));
|
|
46
46
|
export { CONTEXT_CHAT_EDIT_APPLIED, CONTEXT_CHAT_ENABLED, CONTEXT_CHAT_INPUT_CURSOR_AT_TOP, CONTEXT_CHAT_INPUT_HAS_AGENT, CONTEXT_CHAT_INPUT_HAS_FOCUS, CONTEXT_CHAT_INPUT_HAS_TEXT, CONTEXT_CHAT_LOCATION, CONTEXT_CHAT_REQUEST_IN_PROGRESS, CONTEXT_CHAT_RESPONSE_SUPPORT_ISSUE_REPORTING, CONTEXT_IN_CHAT_INPUT, CONTEXT_IN_CHAT_SESSION, CONTEXT_IN_QUICK_CHAT, CONTEXT_REQUEST, CONTEXT_RESPONSE, CONTEXT_RESPONSE_DETECTED_AGENT_COMMAND, CONTEXT_RESPONSE_FILTERED, CONTEXT_RESPONSE_VOTE };
|
|
@@ -27,12 +27,12 @@ import { ThemeIcon } from '../../../../../base/common/themables.js';
|
|
|
27
27
|
import { isWindows } from '../../../../../base/common/platform.js';
|
|
28
28
|
var EditorDictation_1;
|
|
29
29
|
const EDITOR_DICTATION_IN_PROGRESS = ( (new RawContextKey('editorDictation.inProgress', false)));
|
|
30
|
-
const VOICE_CATEGORY = ( localize2(
|
|
30
|
+
const VOICE_CATEGORY = ( localize2(10519, "Voice"));
|
|
31
31
|
class EditorDictationStartAction extends EditorAction2 {
|
|
32
32
|
constructor() {
|
|
33
33
|
super({
|
|
34
34
|
id: 'workbench.action.editorDictation.start',
|
|
35
|
-
title: ( localize2(
|
|
35
|
+
title: ( localize2(10520, "Start Dictation in Editor")),
|
|
36
36
|
category: VOICE_CATEGORY,
|
|
37
37
|
precondition: ( (ContextKeyExpr.and(
|
|
38
38
|
HasSpeechProvider,
|
|
@@ -72,7 +72,7 @@ class EditorDictationStopAction extends EditorAction2 {
|
|
|
72
72
|
constructor() {
|
|
73
73
|
super({
|
|
74
74
|
id: EditorDictationStopAction.ID,
|
|
75
|
-
title: ( localize2(
|
|
75
|
+
title: ( localize2(10521, "Stop Dictation in Editor")),
|
|
76
76
|
category: VOICE_CATEGORY,
|
|
77
77
|
precondition: EDITOR_DICTATION_IN_PROGRESS,
|
|
78
78
|
f1: true,
|
|
@@ -97,7 +97,7 @@ class DictationWidget extends Disposable {
|
|
|
97
97
|
const stopActionKeybinding = keybindingService.lookupKeybinding(EditorDictationStopAction.ID)?.getLabel();
|
|
98
98
|
actionBar.push(toAction({
|
|
99
99
|
id: EditorDictationStopAction.ID,
|
|
100
|
-
label: stopActionKeybinding ? ( localize(
|
|
100
|
+
label: stopActionKeybinding ? ( localize(10522, "Stop Dictation ({0})", stopActionKeybinding)) : ( localize(10523, "Stop Dictation")),
|
|
101
101
|
class: ThemeIcon.asClassName(Codicon.micFilled),
|
|
102
102
|
run: () => EditorDictation.get(editor)?.stop()
|
|
103
103
|
}), { icon: true, label: false, keybinding: stopActionKeybinding });
|
|
@@ -32,7 +32,7 @@ let DiffEditorHelperContribution = class DiffEditorHelperContribution extends Di
|
|
|
32
32
|
const onlyWhiteSpaceChange = ( (computationResult.map(r => r && !r.identical && r.changes2.length === 0)));
|
|
33
33
|
this._register(autorunWithStore((reader, store) => {
|
|
34
34
|
if (onlyWhiteSpaceChange.read(reader)) {
|
|
35
|
-
const helperWidget = store.add(this._instantiationService.createInstance(FloatingEditorClickWidget, this._diffEditor.getModifiedEditor(), ( localize(
|
|
35
|
+
const helperWidget = store.add(this._instantiationService.createInstance(FloatingEditorClickWidget, this._diffEditor.getModifiedEditor(), ( localize(625, "Show Whitespace Differences")), null));
|
|
36
36
|
store.add(helperWidget.onClick(() => {
|
|
37
37
|
this._textResourceConfigurationService.updateValue(this._diffEditor.getModel().modified.uri, 'diffEditor.ignoreTrimWhitespace', false);
|
|
38
38
|
}));
|
|
@@ -43,11 +43,11 @@ let DiffEditorHelperContribution = class DiffEditorHelperContribution extends Di
|
|
|
43
43
|
const diffComputationResult = this._diffEditor.getDiffComputationResult();
|
|
44
44
|
if (diffComputationResult && diffComputationResult.quitEarly) {
|
|
45
45
|
this._notificationService.prompt(Severity$1.Warning, ( localize(
|
|
46
|
-
|
|
46
|
+
626,
|
|
47
47
|
"The diff algorithm was stopped early (after {0} ms.)",
|
|
48
48
|
this._diffEditor.maxComputationTime
|
|
49
49
|
)), [{
|
|
50
|
-
label: ( localize(
|
|
50
|
+
label: ( localize(627, "Remove Limit")),
|
|
51
51
|
run: () => {
|
|
52
52
|
this._textResourceConfigurationService.updateValue(this._diffEditor.getModel().modified.uri, 'diffEditor.maxComputationTime', 0);
|
|
53
53
|
}
|
|
@@ -24,16 +24,16 @@ let LargeFileOptimizationsWarner = class LargeFileOptimizationsWarner extends Di
|
|
|
24
24
|
}
|
|
25
25
|
if (model.isTooLargeForTokenization()) {
|
|
26
26
|
const message = ( localize(
|
|
27
|
-
|
|
27
|
+
628,
|
|
28
28
|
"{0}: tokenization, wrapping, folding, codelens, word highlighting and sticky scroll have been turned off for this large file in order to reduce memory usage and avoid freezing or crashing.",
|
|
29
29
|
basename(model.uri.path)
|
|
30
30
|
));
|
|
31
31
|
this._notificationService.prompt(Severity$1.Info, message, [
|
|
32
32
|
{
|
|
33
|
-
label: ( localize(
|
|
33
|
+
label: ( localize(629, "Forcefully Enable Features")),
|
|
34
34
|
run: () => {
|
|
35
35
|
this._configurationService.updateValue(`editor.largeFileOptimizations`, false).then(() => {
|
|
36
|
-
this._notificationService.info(( localize(
|
|
36
|
+
this._notificationService.info(( localize(630, "Please reopen file in order for this setting to take effect.")));
|
|
37
37
|
}, (err) => {
|
|
38
38
|
this._notificationService.error(err);
|
|
39
39
|
});
|
|
@@ -190,7 +190,7 @@ let FormatOnSaveParticipant = class FormatOnSaveParticipant {
|
|
|
190
190
|
const nestedProgress = ( (new Progress(provider => {
|
|
191
191
|
progress.report({
|
|
192
192
|
message: ( localize(
|
|
193
|
-
|
|
193
|
+
631,
|
|
194
194
|
"Running '{0}' Formatter ([configure]({1})).",
|
|
195
195
|
provider.displayName || provider.extensionId && provider.extensionId.value || '???',
|
|
196
196
|
'command:workbench.action.openSettings?%5B%22editor.formatOnSave%22%5D'
|
|
@@ -299,7 +299,7 @@ let CodeActionOnSaveParticipant = class CodeActionOnSaveParticipant extends Disp
|
|
|
299
299
|
: ( (( (Object.keys(setting)))
|
|
300
300
|
.filter(x => setting[x] === 'never' || false)
|
|
301
301
|
.map(x => ( (new HierarchicalKind(x))))));
|
|
302
|
-
progress.report({ message: ( localize(
|
|
302
|
+
progress.report({ message: ( localize(632, "Quick Fixes")) });
|
|
303
303
|
const filteredSaveList = Array.isArray(setting) ? codeActionsOnSave : codeActionsOnSave.filter(x => setting[x.value] === 'always' || ((setting[x.value] === 'explicit' || setting[x.value] === true) && context.reason === SaveReason.EXPLICIT));
|
|
304
304
|
await this.applyOnSaveActions(textEditorModel, filteredSaveList, excludedActions, progress, token);
|
|
305
305
|
}
|
|
@@ -317,7 +317,7 @@ let CodeActionOnSaveParticipant = class CodeActionOnSaveParticipant extends Disp
|
|
|
317
317
|
_report() {
|
|
318
318
|
progress.report({
|
|
319
319
|
message: ( localize(
|
|
320
|
-
|
|
320
|
+
633,
|
|
321
321
|
"Getting code actions from '{0}' ([configure]({1})).",
|
|
322
322
|
( ([...this._names].map(name => `'${name}'`))).join(', '),
|
|
323
323
|
'command:workbench.action.openSettings?%5B%22editor.codeActionsOnSave%22%5D'
|
|
@@ -339,7 +339,7 @@ let CodeActionOnSaveParticipant = class CodeActionOnSaveParticipant extends Disp
|
|
|
339
339
|
}
|
|
340
340
|
try {
|
|
341
341
|
for (const action of actionsToRun.validActions) {
|
|
342
|
-
progress.report({ message: ( localize(
|
|
342
|
+
progress.report({ message: ( localize(634, "Applying code action '{0}'.", action.action.title)) });
|
|
343
343
|
await this.instantiationService.invokeFunction(applyCodeAction, action, ApplyCodeActionReason.OnSave, {}, token);
|
|
344
344
|
if (token.isCancellationRequested) {
|
|
345
345
|
return;
|
|
@@ -9,8 +9,8 @@ class ToggleMinimapAction extends Action2 {
|
|
|
9
9
|
super({
|
|
10
10
|
id: ToggleMinimapAction.ID,
|
|
11
11
|
title: {
|
|
12
|
-
...( localize2(
|
|
13
|
-
mnemonicTitle: ( localize(
|
|
12
|
+
...( localize2(635, "Toggle Minimap")),
|
|
13
|
+
mnemonicTitle: ( localize(636, "&&Minimap")),
|
|
14
14
|
},
|
|
15
15
|
category: Categories.View,
|
|
16
16
|
f1: true,
|
|
@@ -15,7 +15,7 @@ class ToggleMultiCursorModifierAction extends Action2 {
|
|
|
15
15
|
constructor() {
|
|
16
16
|
super({
|
|
17
17
|
id: ToggleMultiCursorModifierAction.ID,
|
|
18
|
-
title: ( localize2(
|
|
18
|
+
title: ( localize2(637, 'Toggle Multi-Cursor Modifier')),
|
|
19
19
|
f1: true
|
|
20
20
|
});
|
|
21
21
|
}
|
|
@@ -55,7 +55,7 @@ MenuRegistry.appendMenuItem(MenuId.MenubarSelectionMenu, {
|
|
|
55
55
|
group: '4_config',
|
|
56
56
|
command: {
|
|
57
57
|
id: ToggleMultiCursorModifierAction.ID,
|
|
58
|
-
title: ( localize(
|
|
58
|
+
title: ( localize(638, "Switch to Alt+Click for Multi-Cursor"))
|
|
59
59
|
},
|
|
60
60
|
when: ( (multiCursorModifier.isEqualTo('ctrlCmd'))),
|
|
61
61
|
order: 1
|
|
@@ -65,8 +65,8 @@ MenuRegistry.appendMenuItem(MenuId.MenubarSelectionMenu, {
|
|
|
65
65
|
command: {
|
|
66
66
|
id: ToggleMultiCursorModifierAction.ID,
|
|
67
67
|
title: (isMacintosh
|
|
68
|
-
? ( localize(
|
|
69
|
-
: ( localize(
|
|
68
|
+
? ( localize(639, "Switch to Cmd+Click for Multi-Cursor"))
|
|
69
|
+
: ( localize(640, "Switch to Ctrl+Click for Multi-Cursor")))
|
|
70
70
|
},
|
|
71
71
|
when: ( (multiCursorModifier.isEqualTo('altKey'))),
|
|
72
72
|
order: 1
|
|
@@ -9,8 +9,8 @@ class ToggleRenderControlCharacterAction extends Action2 {
|
|
|
9
9
|
super({
|
|
10
10
|
id: ToggleRenderControlCharacterAction.ID,
|
|
11
11
|
title: {
|
|
12
|
-
...( localize2(
|
|
13
|
-
mnemonicTitle: ( localize(
|
|
12
|
+
...( localize2(641, "Toggle Control Characters")),
|
|
13
|
+
mnemonicTitle: ( localize(642, "Render &&Control Characters")),
|
|
14
14
|
},
|
|
15
15
|
category: Categories.View,
|
|
16
16
|
f1: true,
|
|
@@ -9,8 +9,8 @@ class ToggleRenderWhitespaceAction extends Action2 {
|
|
|
9
9
|
super({
|
|
10
10
|
id: ToggleRenderWhitespaceAction.ID,
|
|
11
11
|
title: {
|
|
12
|
-
...( localize2(
|
|
13
|
-
mnemonicTitle: ( localize(
|
|
12
|
+
...( localize2(648, "Toggle Render Whitespace")),
|
|
13
|
+
mnemonicTitle: ( localize(649, "&&Render Whitespace")),
|
|
14
14
|
},
|
|
15
15
|
category: Categories.View,
|
|
16
16
|
f1: true,
|
|
@@ -20,7 +20,7 @@ const transientWordWrapState = 'transientWordWrapState';
|
|
|
20
20
|
const isWordWrapMinifiedKey = 'isWordWrapMinified';
|
|
21
21
|
const isDominatedByLongLinesKey = 'isDominatedByLongLines';
|
|
22
22
|
const CAN_TOGGLE_WORD_WRAP = ( (new RawContextKey('canToggleWordWrap', false, true)));
|
|
23
|
-
const EDITOR_WORD_WRAP = ( (new RawContextKey('editorWordWrap', false, ( localize(
|
|
23
|
+
const EDITOR_WORD_WRAP = ( (new RawContextKey('editorWordWrap', false, ( localize(643, 'Whether the editor is currently using word wrapping.')))));
|
|
24
24
|
function writeTransientState(model, state, codeEditorService) {
|
|
25
25
|
codeEditorService.setTransientModelProperty(model, transientWordWrapState, state);
|
|
26
26
|
}
|
|
@@ -32,7 +32,7 @@ class ToggleWordWrapAction extends EditorAction {
|
|
|
32
32
|
constructor() {
|
|
33
33
|
super({
|
|
34
34
|
id: TOGGLE_WORD_WRAP_ID,
|
|
35
|
-
label: ( localize(
|
|
35
|
+
label: ( localize(644, "View: Toggle Word Wrap")),
|
|
36
36
|
alias: 'View: Toggle Word Wrap',
|
|
37
37
|
precondition: undefined,
|
|
38
38
|
kbOpts: {
|
|
@@ -251,7 +251,7 @@ registerEditorAction(ToggleWordWrapAction);
|
|
|
251
251
|
MenuRegistry.appendMenuItem(MenuId.EditorTitle, {
|
|
252
252
|
command: {
|
|
253
253
|
id: TOGGLE_WORD_WRAP_ID,
|
|
254
|
-
title: ( localize(
|
|
254
|
+
title: ( localize(645, "Disable wrapping for this file")),
|
|
255
255
|
icon: Codicon.wordWrap
|
|
256
256
|
},
|
|
257
257
|
group: 'navigation',
|
|
@@ -264,7 +264,7 @@ MenuRegistry.appendMenuItem(MenuId.EditorTitle, {
|
|
|
264
264
|
MenuRegistry.appendMenuItem(MenuId.EditorTitle, {
|
|
265
265
|
command: {
|
|
266
266
|
id: TOGGLE_WORD_WRAP_ID,
|
|
267
|
-
title: ( localize(
|
|
267
|
+
title: ( localize(646, "Enable wrapping for this file")),
|
|
268
268
|
icon: Codicon.wordWrap
|
|
269
269
|
},
|
|
270
270
|
group: 'navigation',
|
|
@@ -278,7 +278,7 @@ MenuRegistry.appendMenuItem(MenuId.EditorTitle, {
|
|
|
278
278
|
MenuRegistry.appendMenuItem(MenuId.MenubarViewMenu, {
|
|
279
279
|
command: {
|
|
280
280
|
id: TOGGLE_WORD_WRAP_ID,
|
|
281
|
-
title: ( localize(
|
|
281
|
+
title: ( localize(647, "&&Word Wrap")),
|
|
282
282
|
toggled: EDITOR_WORD_WRAP,
|
|
283
283
|
precondition: CAN_TOGGLE_WORD_WRAP
|
|
284
284
|
},
|
|
@@ -158,8 +158,8 @@ let CommentReply = class CommentReply extends Disposable {
|
|
|
158
158
|
setCommentEditorDecorations() {
|
|
159
159
|
const hasExistingComments = this._commentThread.comments && this._commentThread.comments.length > 0;
|
|
160
160
|
const placeholder = hasExistingComments
|
|
161
|
-
? (this._commentOptions?.placeHolder || ( localize(
|
|
162
|
-
: (this._commentOptions?.placeHolder || ( localize(
|
|
161
|
+
? (this._commentOptions?.placeHolder || ( localize(8025, "Reply...")))
|
|
162
|
+
: (this._commentOptions?.placeHolder || ( localize(8026, "Type a new comment")));
|
|
163
163
|
this.commentEditor.updateOptions({ placeholder });
|
|
164
164
|
}
|
|
165
165
|
createTextModelListener(commentEditor, commentForm) {
|
|
@@ -276,8 +276,8 @@ let CommentReply = class CommentReply extends Disposable {
|
|
|
276
276
|
}
|
|
277
277
|
createReplyButton(commentEditor, commentForm) {
|
|
278
278
|
this._reviewThreadReplyButton = append(commentForm, $(`button.review-thread-reply-button.${MOUSE_CURSOR_TEXT_CSS_CLASS_NAME}`));
|
|
279
|
-
this._register(this.hoverService.setupManagedHover(getDefaultHoverDelegate('mouse'), this._reviewThreadReplyButton, this._commentOptions?.prompt || ( localize(
|
|
280
|
-
this._reviewThreadReplyButton.textContent = this._commentOptions?.prompt || ( localize(
|
|
279
|
+
this._register(this.hoverService.setupManagedHover(getDefaultHoverDelegate('mouse'), this._reviewThreadReplyButton, this._commentOptions?.prompt || ( localize(8025, "Reply..."))));
|
|
280
|
+
this._reviewThreadReplyButton.textContent = this._commentOptions?.prompt || ( localize(8025, "Reply..."));
|
|
281
281
|
this._register(addDisposableListener(this._reviewThreadReplyButton, 'click', _ => this.clearAndExpandReplyArea()));
|
|
282
282
|
this._register(addDisposableListener(this._reviewThreadReplyButton, 'focus', _ => this.clearAndExpandReplyArea()));
|
|
283
283
|
commentEditor.onDidBlurEditorWidget(() => {
|
|
@@ -11,42 +11,42 @@ import { Disposable } from '../../../../base/common/lifecycle.js';
|
|
|
11
11
|
var CommentAccessibilityHelpNLS;
|
|
12
12
|
( ((function(CommentAccessibilityHelpNLS) {
|
|
13
13
|
CommentAccessibilityHelpNLS.intro = ( localize(
|
|
14
|
-
|
|
14
|
+
5354,
|
|
15
15
|
"The editor contains commentable range(s). Some useful commands include:"
|
|
16
16
|
));
|
|
17
17
|
CommentAccessibilityHelpNLS.tabFocus = ( localize(
|
|
18
|
-
|
|
18
|
+
5355,
|
|
19
19
|
"This widget contains a text area, for composition of new comments, and actions, that can be tabbed to once tab moves focus mode has been enabled with the command Toggle Tab Key Moves Focus{0}.",
|
|
20
20
|
`<keybinding:${ToggleTabFocusModeAction.ID}>`
|
|
21
21
|
));
|
|
22
|
-
CommentAccessibilityHelpNLS.commentCommands = ( localize(
|
|
23
|
-
CommentAccessibilityHelpNLS.escape = ( localize(
|
|
22
|
+
CommentAccessibilityHelpNLS.commentCommands = ( localize(5356, "Some useful comment commands include:"));
|
|
23
|
+
CommentAccessibilityHelpNLS.escape = ( localize(5357, "- Dismiss Comment (Escape)"));
|
|
24
24
|
CommentAccessibilityHelpNLS.nextRange = ( localize(
|
|
25
|
-
|
|
25
|
+
5358,
|
|
26
26
|
"- Go to Next Commenting Range{0}.",
|
|
27
27
|
`<keybinding:${CommentCommandId.NextRange}>`
|
|
28
28
|
));
|
|
29
29
|
CommentAccessibilityHelpNLS.previousRange = ( localize(
|
|
30
|
-
|
|
30
|
+
5359,
|
|
31
31
|
"- Go to Previous Commenting Range{0}.",
|
|
32
32
|
`<keybinding:${CommentCommandId.PreviousRange}>`
|
|
33
33
|
));
|
|
34
34
|
CommentAccessibilityHelpNLS.nextCommentThread = ( localize(
|
|
35
|
-
|
|
35
|
+
5360,
|
|
36
36
|
"- Go to Next Comment Thread{0}.",
|
|
37
37
|
`<keybinding:${CommentCommandId.NextThread}>`
|
|
38
38
|
));
|
|
39
39
|
CommentAccessibilityHelpNLS.previousCommentThread = ( localize(
|
|
40
|
-
|
|
40
|
+
5361,
|
|
41
41
|
"- Go to Previous Comment Thread{0}.",
|
|
42
42
|
`<keybinding:${CommentCommandId.PreviousThread}>`
|
|
43
43
|
));
|
|
44
44
|
CommentAccessibilityHelpNLS.addComment = ( localize(
|
|
45
|
-
|
|
45
|
+
5362,
|
|
46
46
|
"- Add Comment on Current Selection{0}.",
|
|
47
47
|
`<keybinding:${CommentCommandId.Add}>`
|
|
48
48
|
));
|
|
49
|
-
CommentAccessibilityHelpNLS.submitComment = ( localize(
|
|
49
|
+
CommentAccessibilityHelpNLS.submitComment = ( localize(5363, "- Submit Comment{0}.", `<keybinding:${CommentCommandId.Submit}>`));
|
|
50
50
|
})(CommentAccessibilityHelpNLS || (CommentAccessibilityHelpNLS = {}))));
|
|
51
51
|
class CommentsAccessibilityHelpProvider extends Disposable {
|
|
52
52
|
constructor() {
|
|
@@ -771,7 +771,7 @@ let CommentController = class CommentController {
|
|
|
771
771
|
const commentRangeEnd = range?.getEndPosition().lineNumber;
|
|
772
772
|
if (commentRangeStart && commentRangeEnd) {
|
|
773
773
|
const oneLine = commentRangeStart === commentRangeEnd;
|
|
774
|
-
oneLine ? status(( localize(
|
|
774
|
+
oneLine ? status(( localize(5348, "Line {0}", commentRangeStart))) : status(( localize(5349, "Lines {0} to {1}", commentRangeStart, commentRangeEnd)));
|
|
775
775
|
}
|
|
776
776
|
}
|
|
777
777
|
}
|
|
@@ -943,20 +943,20 @@ let CommentController = class CommentController {
|
|
|
943
943
|
const keybinding = this.keybindingService.lookupKeybinding(AccessibilityCommandId.OpenAccessibilityHelp)?.getAriaLabel();
|
|
944
944
|
if (keybinding) {
|
|
945
945
|
status(( localize(
|
|
946
|
-
|
|
946
|
+
5350,
|
|
947
947
|
"Editor has commenting ranges, run the command Open Accessibility Help ({0}), for more information.",
|
|
948
948
|
keybinding
|
|
949
949
|
)));
|
|
950
950
|
}
|
|
951
951
|
else {
|
|
952
952
|
status(( localize(
|
|
953
|
-
|
|
953
|
+
5351,
|
|
954
954
|
"Editor has commenting ranges, run the command Open Accessibility Help, which is currently not triggerable via keybinding, for more information."
|
|
955
955
|
)));
|
|
956
956
|
}
|
|
957
957
|
}
|
|
958
958
|
else {
|
|
959
|
-
status(( localize(
|
|
959
|
+
status(( localize(5352, "Editor has commenting ranges.")));
|
|
960
960
|
}
|
|
961
961
|
}
|
|
962
962
|
}
|
|
@@ -1106,7 +1106,7 @@ let CommentController = class CommentController {
|
|
|
1106
1106
|
}
|
|
1107
1107
|
else {
|
|
1108
1108
|
const picks = this.getCommentProvidersQuickPicks(newCommentInfos);
|
|
1109
|
-
return this.quickInputService.pick(picks, { placeHolder: ( localize(
|
|
1109
|
+
return this.quickInputService.pick(picks, { placeHolder: ( localize(5353, "Select Comment Provider")), matchOnDescription: true }).then(pick => {
|
|
1110
1110
|
if (!pick) {
|
|
1111
1111
|
return;
|
|
1112
1112
|
}
|
|
@@ -85,7 +85,7 @@ class CommentsModel extends Disposable {
|
|
|
85
85
|
}
|
|
86
86
|
getMessage() {
|
|
87
87
|
if (!this._resourceCommentThreads.length) {
|
|
88
|
-
return ( localize(
|
|
88
|
+
return ( localize(5312, "There are no comments in this workspace yet."));
|
|
89
89
|
}
|
|
90
90
|
else {
|
|
91
91
|
return '';
|
|
@@ -33,7 +33,7 @@ import { IKeybindingService } from '../../../../platform/keybinding/common/keybi
|
|
|
33
33
|
import { IHoverService } from '../../../../platform/hover/browser/hover.service.js';
|
|
34
34
|
const COMMENTS_VIEW_ID = 'workbench.panel.comments';
|
|
35
35
|
const COMMENTS_VIEW_STORAGE_ID = 'Comments';
|
|
36
|
-
const COMMENTS_VIEW_TITLE = ( localize2(
|
|
36
|
+
const COMMENTS_VIEW_TITLE = ( localize2(5321, "Comments"));
|
|
37
37
|
class CommentsModelVirualDelegate {
|
|
38
38
|
static { this.RESOURCE_ID = 'resource-with-comments'; }
|
|
39
39
|
static { this.COMMENT_ID = 'comment-node'; }
|
|
@@ -172,13 +172,13 @@ let CommentNodeRenderer = class CommentNodeRenderer {
|
|
|
172
172
|
}
|
|
173
173
|
getCountString(commentCount) {
|
|
174
174
|
if (commentCount > 2) {
|
|
175
|
-
return ( localize(
|
|
175
|
+
return ( localize(5322, "{0} replies", commentCount - 1));
|
|
176
176
|
}
|
|
177
177
|
else if (commentCount === 2) {
|
|
178
|
-
return ( localize(
|
|
178
|
+
return ( localize(5323, "1 reply"));
|
|
179
179
|
}
|
|
180
180
|
else {
|
|
181
|
-
return ( localize(
|
|
181
|
+
return ( localize(5324, "1 comment"));
|
|
182
182
|
}
|
|
183
183
|
}
|
|
184
184
|
getRenderedComment(commentBody, disposables) {
|
|
@@ -193,7 +193,7 @@ let CommentNodeRenderer = class CommentNodeRenderer {
|
|
|
193
193
|
for (let i = 0; i < images.length; i++) {
|
|
194
194
|
const image = images[i];
|
|
195
195
|
const textDescription = $('');
|
|
196
|
-
textDescription.textContent = image.alt ? ( localize(
|
|
196
|
+
textDescription.textContent = image.alt ? ( localize(5325, "Image: {0}", image.alt)) : ( localize(5326, "Image"));
|
|
197
197
|
image.parentNode.replaceChild(textDescription, image);
|
|
198
198
|
}
|
|
199
199
|
return renderedComment;
|
|
@@ -211,7 +211,7 @@ let CommentNodeRenderer = class CommentNodeRenderer {
|
|
|
211
211
|
const commentCount = node.element.replies.length + 1;
|
|
212
212
|
if (node.element.threadRelevance === CommentThreadApplicability.Outdated) {
|
|
213
213
|
templateData.threadMetadata.relevance.style.display = '';
|
|
214
|
-
templateData.threadMetadata.relevance.innerText = ( localize(
|
|
214
|
+
templateData.threadMetadata.relevance.innerText = ( localize(5327, "Outdated"));
|
|
215
215
|
templateData.threadMetadata.separator.style.display = 'none';
|
|
216
216
|
}
|
|
217
217
|
else {
|
|
@@ -245,11 +245,11 @@ let CommentNodeRenderer = class CommentNodeRenderer {
|
|
|
245
245
|
}
|
|
246
246
|
if (node.element.range) {
|
|
247
247
|
if (node.element.range.startLineNumber === node.element.range.endLineNumber) {
|
|
248
|
-
templateData.threadMetadata.range.textContent = ( localize(
|
|
248
|
+
templateData.threadMetadata.range.textContent = ( localize(5328, "[Ln {0}]", node.element.range.startLineNumber));
|
|
249
249
|
}
|
|
250
250
|
else {
|
|
251
251
|
templateData.threadMetadata.range.textContent = ( localize(
|
|
252
|
-
|
|
252
|
+
5329,
|
|
253
253
|
"[Ln {0}-{1}]",
|
|
254
254
|
node.element.range.startLineNumber,
|
|
255
255
|
node.element.range.endLineNumber
|
|
@@ -270,7 +270,7 @@ let CommentNodeRenderer = class CommentNodeRenderer {
|
|
|
270
270
|
templateData.repliesMetadata.container.style.display = '';
|
|
271
271
|
templateData.repliesMetadata.count.textContent = this.getCountString(commentCount);
|
|
272
272
|
const lastComment = node.element.replies[node.element.replies.length - 1].comment;
|
|
273
|
-
templateData.repliesMetadata.lastReplyDetail.textContent = ( localize(
|
|
273
|
+
templateData.repliesMetadata.lastReplyDetail.textContent = ( localize(5330, "Last reply from {0}", lastComment.userName));
|
|
274
274
|
templateData.repliesMetadata.timestamp.setTimestamp(lastComment.timestamp ? ( (new Date(lastComment.timestamp))) : undefined);
|
|
275
275
|
}
|
|
276
276
|
getCommentThreadWidgetStateColor(state, theme) {
|