@codingame/monaco-vscode-explorer-service-override 8.0.3 → 9.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 +2 -2
- package/vscode/src/vs/workbench/contrib/files/browser/explorerService.js +5 -0
- package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +43 -41
- package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +4 -4
- package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._explorer.js +61 -53
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-explorer-service-override",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "9.0.0",
|
|
4
4
|
"keywords": [],
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "CodinGame",
|
|
@@ -26,6 +26,6 @@
|
|
|
26
26
|
}
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"vscode": "npm:@codingame/monaco-vscode-api@
|
|
29
|
+
"vscode": "npm:@codingame/monaco-vscode-api@9.0.0"
|
|
30
30
|
}
|
|
31
31
|
}
|
|
@@ -125,6 +125,7 @@ let ExplorerService = class ExplorerService {
|
|
|
125
125
|
return {
|
|
126
126
|
sortOrder: this.config.sortOrder,
|
|
127
127
|
lexicographicOptions: this.config.sortOrderLexicographicOptions,
|
|
128
|
+
reverse: this.config.sortOrderReverse,
|
|
128
129
|
};
|
|
129
130
|
}
|
|
130
131
|
registerView(contextProvider) {
|
|
@@ -399,6 +400,10 @@ let ExplorerService = class ExplorerService {
|
|
|
399
400
|
if (this.config.sortOrderLexicographicOptions !== configLexicographicOptions) {
|
|
400
401
|
shouldRefresh = shouldRefresh || this.config.sortOrderLexicographicOptions !== undefined;
|
|
401
402
|
}
|
|
403
|
+
const sortOrderReverse = configuration?.explorer?.sortOrderReverse || false;
|
|
404
|
+
if (this.config.sortOrderReverse !== sortOrderReverse) {
|
|
405
|
+
shouldRefresh = shouldRefresh || this.config.sortOrderReverse !== undefined;
|
|
406
|
+
}
|
|
402
407
|
this.config = configuration.explorer;
|
|
403
408
|
if (shouldRefresh) {
|
|
404
409
|
await this.refresh();
|
|
@@ -4,7 +4,7 @@ import { acceptLocalChangesCommand, revertLocalChangesCommand, CONFLICT_RESOLUTI
|
|
|
4
4
|
import { registerAction2, MenuRegistry, MenuId } from 'vscode/vscode/vs/platform/actions/common/actions';
|
|
5
5
|
import { KeyCode, KeyMod } from 'vscode/vscode/vs/base/common/keyCodes';
|
|
6
6
|
import { openWindowCommand, newWindowCommand } from './fileCommands.js';
|
|
7
|
-
import { COPY_PATH_COMMAND_ID, COPY_RELATIVE_PATH_COMMAND_ID, REVEAL_IN_EXPLORER_COMMAND_ID, SAVE_FILE_COMMAND_ID, SAVE_FILE_LABEL, SAVE_FILE_WITHOUT_FORMATTING_COMMAND_ID, SAVE_FILE_WITHOUT_FORMATTING_LABEL, SAVE_ALL_IN_GROUP_COMMAND_ID, SAVE_FILES_COMMAND_ID, REVERT_FILE_COMMAND_ID, COMPARE_WITH_SAVED_COMMAND_ID, SAVE_FILE_AS_COMMAND_ID, SAVE_FILE_AS_LABEL, NEW_UNTITLED_FILE_COMMAND_ID, NEW_UNTITLED_FILE_LABEL, OPEN_TO_SIDE_COMMAND_ID,
|
|
7
|
+
import { COPY_PATH_COMMAND_ID, COPY_RELATIVE_PATH_COMMAND_ID, REVEAL_IN_EXPLORER_COMMAND_ID, SAVE_FILE_COMMAND_ID, SAVE_FILE_LABEL, SAVE_FILE_WITHOUT_FORMATTING_COMMAND_ID, SAVE_FILE_WITHOUT_FORMATTING_LABEL, SAVE_ALL_IN_GROUP_COMMAND_ID, SAVE_FILES_COMMAND_ID, REVERT_FILE_COMMAND_ID, COMPARE_WITH_SAVED_COMMAND_ID, SAVE_FILE_AS_COMMAND_ID, SAVE_FILE_AS_LABEL, NEW_UNTITLED_FILE_COMMAND_ID, NEW_UNTITLED_FILE_LABEL, OPEN_TO_SIDE_COMMAND_ID, OpenEditorsGroupContext, OpenEditorsDirtyEditorContext, OpenEditorsReadonlyEditorContext, COMPARE_RESOURCE_COMMAND_ID, ResourceSelectedForCompareContext, SELECT_FOR_COMPARE_COMMAND_ID, COMPARE_SELECTED_COMMAND_ID, OpenEditorsSelectedFileOrUntitledContext, OPEN_WITH_EXPLORER_COMMAND_ID, REMOVE_ROOT_FOLDER_COMMAND_ID, REMOVE_ROOT_FOLDER_LABEL, SAVE_ALL_COMMAND_ID } from 'vscode/vscode/vs/workbench/contrib/files/browser/fileConstants';
|
|
8
8
|
import { CommandsRegistry } from 'vscode/vscode/vs/platform/commands/common/commands';
|
|
9
9
|
import { ContextKeyExpr } from 'vscode/vscode/vs/platform/contextkey/common/contextkey';
|
|
10
10
|
import { KeybindingsRegistry, KeybindingWeight } from 'vscode/vscode/vs/platform/keybinding/common/keybindingsRegistry';
|
|
@@ -143,15 +143,15 @@ KeybindingsRegistry.registerCommandAndKeybindingRule({
|
|
|
143
143
|
});
|
|
144
144
|
const copyPathCommand = {
|
|
145
145
|
id: COPY_PATH_COMMAND_ID,
|
|
146
|
-
title: ( localize(
|
|
146
|
+
title: ( localize(1683, "Copy Path"))
|
|
147
147
|
};
|
|
148
148
|
const copyRelativePathCommand = {
|
|
149
149
|
id: COPY_RELATIVE_PATH_COMMAND_ID,
|
|
150
|
-
title: ( localize(
|
|
150
|
+
title: ( localize(1684, "Copy Relative Path"))
|
|
151
151
|
};
|
|
152
152
|
appendEditorTitleContextMenuItem(COPY_PATH_COMMAND_ID, copyPathCommand.title, ResourceContextKey.IsFileSystemResource, '1_cutcopypaste', true);
|
|
153
153
|
appendEditorTitleContextMenuItem(COPY_RELATIVE_PATH_COMMAND_ID, copyRelativePathCommand.title, ResourceContextKey.IsFileSystemResource, '1_cutcopypaste', true);
|
|
154
|
-
appendEditorTitleContextMenuItem(REVEAL_IN_EXPLORER_COMMAND_ID, ( localize(
|
|
154
|
+
appendEditorTitleContextMenuItem(REVEAL_IN_EXPLORER_COMMAND_ID, ( localize(1685, "Reveal in Explorer View")), ResourceContextKey.IsFileSystemResource, '2_files', false, 1);
|
|
155
155
|
function appendEditorTitleContextMenuItem(id, title, when, group, supportsMultiSelect, order) {
|
|
156
156
|
const precondition = supportsMultiSelect !== true ? ( (MultipleEditorsSelectedInGroupContext.negate())) : undefined;
|
|
157
157
|
MenuRegistry.appendMenuItem(MenuId.EditorTitleContext, {
|
|
@@ -161,8 +161,8 @@ function appendEditorTitleContextMenuItem(id, title, when, group, supportsMultiS
|
|
|
161
161
|
order,
|
|
162
162
|
});
|
|
163
163
|
}
|
|
164
|
-
appendSaveConflictEditorTitleAction('workbench.files.action.acceptLocalChanges', ( localize(
|
|
165
|
-
appendSaveConflictEditorTitleAction('workbench.files.action.revertLocalChanges', ( localize(
|
|
164
|
+
appendSaveConflictEditorTitleAction('workbench.files.action.acceptLocalChanges', ( localize(1686, "Use your changes and overwrite file contents")), Codicon.check, -10, acceptLocalChangesCommand);
|
|
165
|
+
appendSaveConflictEditorTitleAction('workbench.files.action.revertLocalChanges', ( localize(1687, "Discard your changes and revert to file contents")), Codicon.discard, -9, revertLocalChangesCommand);
|
|
166
166
|
function appendSaveConflictEditorTitleAction(id, title, icon, order, command) {
|
|
167
167
|
CommandsRegistry.registerCommand(id, command);
|
|
168
168
|
MenuRegistry.appendMenuItem(MenuId.EditorTitle, {
|
|
@@ -185,12 +185,12 @@ function appendToCommandPalette({ id, title, category, metadata }, when) {
|
|
|
185
185
|
}
|
|
186
186
|
appendToCommandPalette({
|
|
187
187
|
id: COPY_PATH_COMMAND_ID,
|
|
188
|
-
title: ( localize2(
|
|
188
|
+
title: ( localize2(1688, "Copy Path of Active File")),
|
|
189
189
|
category: Categories.File
|
|
190
190
|
});
|
|
191
191
|
appendToCommandPalette({
|
|
192
192
|
id: COPY_RELATIVE_PATH_COMMAND_ID,
|
|
193
|
-
title: ( localize2(
|
|
193
|
+
title: ( localize2(1689, "Copy Relative Path of Active File")),
|
|
194
194
|
category: Categories.File
|
|
195
195
|
});
|
|
196
196
|
appendToCommandPalette({
|
|
@@ -205,26 +205,26 @@ appendToCommandPalette({
|
|
|
205
205
|
});
|
|
206
206
|
appendToCommandPalette({
|
|
207
207
|
id: SAVE_ALL_IN_GROUP_COMMAND_ID,
|
|
208
|
-
title: ( localize2(
|
|
208
|
+
title: ( localize2(1690, "Save All in Group")),
|
|
209
209
|
category: Categories.File
|
|
210
210
|
});
|
|
211
211
|
appendToCommandPalette({
|
|
212
212
|
id: SAVE_FILES_COMMAND_ID,
|
|
213
|
-
title: ( localize2(
|
|
213
|
+
title: ( localize2(1691, "Save All Files")),
|
|
214
214
|
category: Categories.File
|
|
215
215
|
});
|
|
216
216
|
appendToCommandPalette({
|
|
217
217
|
id: REVERT_FILE_COMMAND_ID,
|
|
218
|
-
title: ( localize2(
|
|
218
|
+
title: ( localize2(1692, "Revert File")),
|
|
219
219
|
category: Categories.File
|
|
220
220
|
});
|
|
221
221
|
appendToCommandPalette({
|
|
222
222
|
id: COMPARE_WITH_SAVED_COMMAND_ID,
|
|
223
|
-
title: ( localize2(
|
|
223
|
+
title: ( localize2(1693, "Compare Active File with Saved")),
|
|
224
224
|
category: Categories.File,
|
|
225
225
|
metadata: {
|
|
226
226
|
description: ( localize2(
|
|
227
|
-
|
|
227
|
+
1694,
|
|
228
228
|
"Opens a new diff editor to compare the active file with the version on disk."
|
|
229
229
|
))
|
|
230
230
|
}
|
|
@@ -243,7 +243,7 @@ appendToCommandPalette({
|
|
|
243
243
|
id: NEW_FOLDER_COMMAND_ID,
|
|
244
244
|
title: NEW_FOLDER_LABEL,
|
|
245
245
|
category: Categories.File,
|
|
246
|
-
metadata: { description: ( localize2(
|
|
246
|
+
metadata: { description: ( localize2(1695, "Create a new folder or directory")) }
|
|
247
247
|
}, ( (WorkspaceFolderCountContext.notEqualsTo('0'))));
|
|
248
248
|
appendToCommandPalette({
|
|
249
249
|
id: NEW_UNTITLED_FILE_COMMAND_ID,
|
|
@@ -256,7 +256,7 @@ const isFileOrUntitledResourceContextKey = ( (ContextKeyExpr.or(
|
|
|
256
256
|
)));
|
|
257
257
|
const openToSideCommand = {
|
|
258
258
|
id: OPEN_TO_SIDE_COMMAND_ID,
|
|
259
|
-
title: ( localize(
|
|
259
|
+
title: ( localize(1696, "Open to the Side"))
|
|
260
260
|
};
|
|
261
261
|
MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
262
262
|
group: 'navigation',
|
|
@@ -269,9 +269,11 @@ MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
|
269
269
|
order: 10,
|
|
270
270
|
command: {
|
|
271
271
|
id: REOPEN_WITH_COMMAND_ID,
|
|
272
|
-
title: ( localize(
|
|
272
|
+
title: ( localize(1697, "Reopen Editor With..."))
|
|
273
273
|
},
|
|
274
|
-
when:
|
|
274
|
+
when: ( (ContextKeyExpr.and(
|
|
275
|
+
ActiveEditorAvailableEditorIdsContext,
|
|
276
|
+
(OpenEditorsGroupContext.toNegated()))))
|
|
275
277
|
});
|
|
276
278
|
MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
277
279
|
group: '1_cutcopypaste',
|
|
@@ -305,7 +307,7 @@ MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
|
305
307
|
order: 20,
|
|
306
308
|
command: {
|
|
307
309
|
id: REVERT_FILE_COMMAND_ID,
|
|
308
|
-
title: ( localize(
|
|
310
|
+
title: ( localize(1692, "Revert File")),
|
|
309
311
|
precondition: OpenEditorsDirtyEditorContext
|
|
310
312
|
},
|
|
311
313
|
when: ( (ContextKeyExpr.and(
|
|
@@ -319,7 +321,7 @@ MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
|
319
321
|
order: 30,
|
|
320
322
|
command: {
|
|
321
323
|
id: SAVE_ALL_IN_GROUP_COMMAND_ID,
|
|
322
|
-
title: ( localize(
|
|
324
|
+
title: ( localize(1698, "Save All")),
|
|
323
325
|
precondition: DirtyWorkingCopiesContext
|
|
324
326
|
},
|
|
325
327
|
when: OpenEditorsGroupContext
|
|
@@ -329,7 +331,7 @@ MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
|
329
331
|
order: 10,
|
|
330
332
|
command: {
|
|
331
333
|
id: COMPARE_WITH_SAVED_COMMAND_ID,
|
|
332
|
-
title: ( localize(
|
|
334
|
+
title: ( localize(1699, "Compare with Saved")),
|
|
333
335
|
precondition: OpenEditorsDirtyEditorContext
|
|
334
336
|
},
|
|
335
337
|
when: ( (ContextKeyExpr.and(
|
|
@@ -340,7 +342,7 @@ MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
|
340
342
|
});
|
|
341
343
|
const compareResourceCommand = {
|
|
342
344
|
id: COMPARE_RESOURCE_COMMAND_ID,
|
|
343
|
-
title: ( localize(
|
|
345
|
+
title: ( localize(1700, "Compare with Selected"))
|
|
344
346
|
};
|
|
345
347
|
MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
346
348
|
group: '3_compare',
|
|
@@ -355,7 +357,7 @@ MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
|
355
357
|
});
|
|
356
358
|
const selectForCompareCommand = {
|
|
357
359
|
id: SELECT_FOR_COMPARE_COMMAND_ID,
|
|
358
|
-
title: ( localize(
|
|
360
|
+
title: ( localize(1701, "Select for Compare"))
|
|
359
361
|
};
|
|
360
362
|
MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
361
363
|
group: '3_compare',
|
|
@@ -369,7 +371,7 @@ MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
|
369
371
|
});
|
|
370
372
|
const compareSelectedCommand = {
|
|
371
373
|
id: COMPARE_SELECTED_COMMAND_ID,
|
|
372
|
-
title: ( localize(
|
|
374
|
+
title: ( localize(1702, "Compare Selected"))
|
|
373
375
|
};
|
|
374
376
|
MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
375
377
|
group: '3_compare',
|
|
@@ -396,7 +398,7 @@ MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
|
396
398
|
order: 10,
|
|
397
399
|
command: {
|
|
398
400
|
id: CLOSE_EDITOR_COMMAND_ID,
|
|
399
|
-
title: ( localize(
|
|
401
|
+
title: ( localize(1703, "Close"))
|
|
400
402
|
},
|
|
401
403
|
when: ( (OpenEditorsGroupContext.toNegated()))
|
|
402
404
|
});
|
|
@@ -405,7 +407,7 @@ MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
|
405
407
|
order: 20,
|
|
406
408
|
command: {
|
|
407
409
|
id: CLOSE_OTHER_EDITORS_IN_GROUP_COMMAND_ID,
|
|
408
|
-
title: ( localize(
|
|
410
|
+
title: ( localize(1704, "Close Others"))
|
|
409
411
|
},
|
|
410
412
|
when: ( (OpenEditorsGroupContext.toNegated()))
|
|
411
413
|
});
|
|
@@ -414,7 +416,7 @@ MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
|
414
416
|
order: 30,
|
|
415
417
|
command: {
|
|
416
418
|
id: CLOSE_SAVED_EDITORS_COMMAND_ID,
|
|
417
|
-
title: ( localize(
|
|
419
|
+
title: ( localize(1705, "Close Saved"))
|
|
418
420
|
}
|
|
419
421
|
});
|
|
420
422
|
MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
@@ -422,7 +424,7 @@ MenuRegistry.appendMenuItem(MenuId.OpenEditorsContext, {
|
|
|
422
424
|
order: 40,
|
|
423
425
|
command: {
|
|
424
426
|
id: CLOSE_EDITORS_IN_GROUP_COMMAND_ID,
|
|
425
|
-
title: ( localize(
|
|
427
|
+
title: ( localize(1706, "Close All"))
|
|
426
428
|
}
|
|
427
429
|
});
|
|
428
430
|
MenuRegistry.appendMenuItem(MenuId.ExplorerContext, {
|
|
@@ -459,7 +461,7 @@ MenuRegistry.appendMenuItem(MenuId.ExplorerContext, {
|
|
|
459
461
|
order: 20,
|
|
460
462
|
command: {
|
|
461
463
|
id: OPEN_WITH_EXPLORER_COMMAND_ID,
|
|
462
|
-
title: ( localize(
|
|
464
|
+
title: ( localize(1707, "Open With...")),
|
|
463
465
|
},
|
|
464
466
|
when: ( (ContextKeyExpr.and(
|
|
465
467
|
(ExplorerFolderContext.toNegated()),
|
|
@@ -502,7 +504,7 @@ MenuRegistry.appendMenuItem(MenuId.ExplorerContext, {
|
|
|
502
504
|
order: 8,
|
|
503
505
|
command: {
|
|
504
506
|
id: CUT_FILE_ID,
|
|
505
|
-
title: ( localize(
|
|
507
|
+
title: ( localize(1708, "Cut"))
|
|
506
508
|
},
|
|
507
509
|
when: ( (ContextKeyExpr.and(
|
|
508
510
|
(ExplorerRootContext.toNegated()),
|
|
@@ -622,7 +624,7 @@ MenuRegistry.appendMenuItem(MenuId.ExplorerContext, {
|
|
|
622
624
|
},
|
|
623
625
|
alt: {
|
|
624
626
|
id: DELETE_FILE_ID,
|
|
625
|
-
title: ( localize(
|
|
627
|
+
title: ( localize(1709, "Delete Permanently")),
|
|
626
628
|
precondition: ExplorerResourceNotReadonlyContext
|
|
627
629
|
},
|
|
628
630
|
when: ( (ContextKeyExpr.and(
|
|
@@ -635,7 +637,7 @@ MenuRegistry.appendMenuItem(MenuId.ExplorerContext, {
|
|
|
635
637
|
order: 20,
|
|
636
638
|
command: {
|
|
637
639
|
id: DELETE_FILE_ID,
|
|
638
|
-
title: ( localize(
|
|
640
|
+
title: ( localize(1709, "Delete Permanently")),
|
|
639
641
|
precondition: ExplorerResourceNotReadonlyContext
|
|
640
642
|
},
|
|
641
643
|
when: ( (ContextKeyExpr.and(
|
|
@@ -644,14 +646,14 @@ MenuRegistry.appendMenuItem(MenuId.ExplorerContext, {
|
|
|
644
646
|
)))
|
|
645
647
|
});
|
|
646
648
|
for (const menuId of [MenuId.EmptyEditorGroupContext, MenuId.EditorTabsBarContext]) {
|
|
647
|
-
MenuRegistry.appendMenuItem(menuId, { command: { id: NEW_UNTITLED_FILE_COMMAND_ID, title: ( localize(
|
|
648
|
-
MenuRegistry.appendMenuItem(menuId, { command: { id: 'workbench.action.quickOpen', title: ( localize(
|
|
649
|
+
MenuRegistry.appendMenuItem(menuId, { command: { id: NEW_UNTITLED_FILE_COMMAND_ID, title: ( localize(1710, "New Text File")) }, group: '1_file', order: 10 });
|
|
650
|
+
MenuRegistry.appendMenuItem(menuId, { command: { id: 'workbench.action.quickOpen', title: ( localize(1711, "Open File...")) }, group: '1_file', order: 20 });
|
|
649
651
|
}
|
|
650
652
|
MenuRegistry.appendMenuItem(MenuId.MenubarFileMenu, {
|
|
651
653
|
group: '1_new',
|
|
652
654
|
command: {
|
|
653
655
|
id: NEW_UNTITLED_FILE_COMMAND_ID,
|
|
654
|
-
title: ( localize(
|
|
656
|
+
title: ( localize(1712, "&&New Text File"))
|
|
655
657
|
},
|
|
656
658
|
order: 1
|
|
657
659
|
});
|
|
@@ -659,7 +661,7 @@ MenuRegistry.appendMenuItem(MenuId.MenubarFileMenu, {
|
|
|
659
661
|
group: '4_save',
|
|
660
662
|
command: {
|
|
661
663
|
id: SAVE_FILE_COMMAND_ID,
|
|
662
|
-
title: ( localize(
|
|
664
|
+
title: ( localize(1713, "&&Save")),
|
|
663
665
|
precondition: ( (ContextKeyExpr.or(
|
|
664
666
|
ActiveEditorContext,
|
|
665
667
|
(ContextKeyExpr.and(FoldersViewVisibleContext, SidebarFocusContext))
|
|
@@ -671,7 +673,7 @@ MenuRegistry.appendMenuItem(MenuId.MenubarFileMenu, {
|
|
|
671
673
|
group: '4_save',
|
|
672
674
|
command: {
|
|
673
675
|
id: SAVE_FILE_AS_COMMAND_ID,
|
|
674
|
-
title: ( localize(
|
|
676
|
+
title: ( localize(1714, "Save &&As...")),
|
|
675
677
|
precondition: ( (ContextKeyExpr.or(
|
|
676
678
|
ActiveEditorContext,
|
|
677
679
|
(ContextKeyExpr.and(FoldersViewVisibleContext, SidebarFocusContext))
|
|
@@ -683,7 +685,7 @@ MenuRegistry.appendMenuItem(MenuId.MenubarFileMenu, {
|
|
|
683
685
|
group: '4_save',
|
|
684
686
|
command: {
|
|
685
687
|
id: SAVE_ALL_COMMAND_ID,
|
|
686
|
-
title: ( localize(
|
|
688
|
+
title: ( localize(1715, "Save A&&ll")),
|
|
687
689
|
precondition: DirtyWorkingCopiesContext
|
|
688
690
|
},
|
|
689
691
|
order: 3
|
|
@@ -692,7 +694,7 @@ MenuRegistry.appendMenuItem(MenuId.MenubarFileMenu, {
|
|
|
692
694
|
group: '5_autosave',
|
|
693
695
|
command: {
|
|
694
696
|
id: ToggleAutoSaveAction.ID,
|
|
695
|
-
title: ( localize(
|
|
697
|
+
title: ( localize(1716, "A&&uto Save")),
|
|
696
698
|
toggled: ( (ContextKeyExpr.notEquals('config.files.autoSave', 'off')))
|
|
697
699
|
},
|
|
698
700
|
order: 1
|
|
@@ -701,7 +703,7 @@ MenuRegistry.appendMenuItem(MenuId.MenubarFileMenu, {
|
|
|
701
703
|
group: '6_close',
|
|
702
704
|
command: {
|
|
703
705
|
id: REVERT_FILE_COMMAND_ID,
|
|
704
|
-
title: ( localize(
|
|
706
|
+
title: ( localize(1717, "Re&&vert File")),
|
|
705
707
|
precondition: ( (ContextKeyExpr.or(
|
|
706
708
|
(ContextKeyExpr.and(ActiveEditorCanRevertContext)),
|
|
707
709
|
(ContextKeyExpr.and(
|
|
@@ -716,7 +718,7 @@ MenuRegistry.appendMenuItem(MenuId.MenubarFileMenu, {
|
|
|
716
718
|
group: '6_close',
|
|
717
719
|
command: {
|
|
718
720
|
id: CLOSE_EDITOR_COMMAND_ID,
|
|
719
|
-
title: ( localize(
|
|
721
|
+
title: ( localize(1718, "&&Close Editor")),
|
|
720
722
|
precondition: ( (ContextKeyExpr.or(
|
|
721
723
|
ActiveEditorContext,
|
|
722
724
|
(ContextKeyExpr.and(FoldersViewVisibleContext, SidebarFocusContext))
|
|
@@ -728,7 +730,7 @@ MenuRegistry.appendMenuItem(MenuId.MenubarGoMenu, {
|
|
|
728
730
|
group: '3_global_nav',
|
|
729
731
|
command: {
|
|
730
732
|
id: 'workbench.action.quickOpen',
|
|
731
|
-
title: ( localize(
|
|
733
|
+
title: ( localize(1719, "Go to &&File..."))
|
|
732
734
|
},
|
|
733
735
|
order: 1
|
|
734
736
|
});
|
|
@@ -137,7 +137,7 @@ KeybindingsRegistry.registerCommandAndKeybindingRule({
|
|
|
137
137
|
const uri = getResourceForCommand(resource, editorService, listService);
|
|
138
138
|
if (uri && fileService.hasProvider(uri)) {
|
|
139
139
|
const name = basename(uri);
|
|
140
|
-
const editorLabel = ( localize(
|
|
140
|
+
const editorLabel = ( localize(1681, "{0} (in file) ↔ {1}", name, name));
|
|
141
141
|
try {
|
|
142
142
|
await TextFileContentProvider.open(uri, COMPARE_WITH_SAVED_SCHEMA, editorLabel, editorService, { pinned: true });
|
|
143
143
|
if (registerEditorListener) {
|
|
@@ -175,8 +175,8 @@ CommandsRegistry.registerCommand({
|
|
|
175
175
|
const resources = getMultiSelectedResources(resource, accessor.get(IListService), editorService, accessor.get(IEditorGroupsService), accessor.get(IExplorerService));
|
|
176
176
|
if (resources.length === 2) {
|
|
177
177
|
return editorService.openEditor({
|
|
178
|
-
original: { resource: resources[
|
|
179
|
-
modified: { resource: resources[
|
|
178
|
+
original: { resource: resources[0] },
|
|
179
|
+
modified: { resource: resources[1] },
|
|
180
180
|
options: { pinned: true }
|
|
181
181
|
});
|
|
182
182
|
}
|
|
@@ -456,7 +456,7 @@ CommandsRegistry.registerCommand({
|
|
|
456
456
|
const editorService = accessor.get(IEditorService);
|
|
457
457
|
const dialogService = accessor.get(IFileDialogService);
|
|
458
458
|
const fileService = accessor.get(IFileService);
|
|
459
|
-
const createFileLocalized = ( localize(
|
|
459
|
+
const createFileLocalized = ( localize(1682, "Create File"));
|
|
460
460
|
const defaultFileUri = joinPath(await dialogService.defaultFilePath(), args?.fileName ?? 'Untitled.txt');
|
|
461
461
|
const saveUri = await dialogService.showSaveDialog({ saveLabel: createFileLocalized, title: createFileLocalized, defaultUri: defaultFileUri });
|
|
462
462
|
if (!saveUri) {
|
|
@@ -19,13 +19,13 @@ const configurationRegistry = ( (Registry.as(Extensions.Configuration)));
|
|
|
19
19
|
configurationRegistry.registerConfiguration({
|
|
20
20
|
'id': 'explorer',
|
|
21
21
|
'order': 10,
|
|
22
|
-
'title': ( localize(
|
|
22
|
+
'title': ( localize(1720, "File Explorer")),
|
|
23
23
|
'type': 'object',
|
|
24
24
|
'properties': {
|
|
25
25
|
'explorer.openEditors.visible': {
|
|
26
26
|
'type': 'number',
|
|
27
27
|
'description': ( localize(
|
|
28
|
-
|
|
28
|
+
1721,
|
|
29
29
|
"The initial maximum number of editors shown in the Open Editors pane. Exceeding this limit will show a scroll bar and allow resizing the pane to display more items."
|
|
30
30
|
)),
|
|
31
31
|
'default': 9,
|
|
@@ -34,7 +34,7 @@ configurationRegistry.registerConfiguration({
|
|
|
34
34
|
'explorer.openEditors.minVisible': {
|
|
35
35
|
'type': 'number',
|
|
36
36
|
'description': ( localize(
|
|
37
|
-
|
|
37
|
+
1722,
|
|
38
38
|
"The minimum number of editor slots pre-allocated in the Open Editors pane. If set to 0 the Open Editors pane will dynamically resize based on the number of editors."
|
|
39
39
|
)),
|
|
40
40
|
'default': 0,
|
|
@@ -43,15 +43,15 @@ configurationRegistry.registerConfiguration({
|
|
|
43
43
|
'explorer.openEditors.sortOrder': {
|
|
44
44
|
'type': 'string',
|
|
45
45
|
'enum': ['editorOrder', 'alphabetical', 'fullPath'],
|
|
46
|
-
'description': ( localize(
|
|
46
|
+
'description': ( localize(1723, "Controls the sorting order of editors in the Open Editors pane.")),
|
|
47
47
|
'enumDescriptions': [
|
|
48
|
-
( localize(
|
|
48
|
+
( localize(1724, 'Editors are ordered in the same order editor tabs are shown.')),
|
|
49
49
|
( localize(
|
|
50
|
-
|
|
50
|
+
1725,
|
|
51
51
|
'Editors are ordered alphabetically by tab name inside each editor group.'
|
|
52
52
|
)),
|
|
53
53
|
( localize(
|
|
54
|
-
|
|
54
|
+
1726,
|
|
55
55
|
'Editors are ordered alphabetically by full path inside each editor group.'
|
|
56
56
|
))
|
|
57
57
|
],
|
|
@@ -62,19 +62,19 @@ configurationRegistry.registerConfiguration({
|
|
|
62
62
|
'enum': [true, false, 'focusNoScroll'],
|
|
63
63
|
'default': true,
|
|
64
64
|
'enumDescriptions': [
|
|
65
|
-
( localize(
|
|
66
|
-
( localize(
|
|
67
|
-
( localize(
|
|
65
|
+
( localize(1727, 'Files will be revealed and selected.')),
|
|
66
|
+
( localize(1728, 'Files will not be revealed and selected.')),
|
|
67
|
+
( localize(1729, 'Files will not be scrolled into view, but will still be focused.')),
|
|
68
68
|
],
|
|
69
69
|
'description': ( localize(
|
|
70
|
-
|
|
70
|
+
1730,
|
|
71
71
|
"Controls whether the Explorer should automatically reveal and select files when opening them."
|
|
72
72
|
))
|
|
73
73
|
},
|
|
74
74
|
'explorer.autoRevealExclude': {
|
|
75
75
|
'type': 'object',
|
|
76
76
|
'markdownDescription': ( localize(
|
|
77
|
-
|
|
77
|
+
1731,
|
|
78
78
|
"Configure paths or [glob patterns](https://aka.ms/vscode-glob-patterns) for excluding files and folders from being revealed and selected in the Explorer when they are opened. Glob patterns are always evaluated relative to the path of the workspace folder unless they are absolute paths."
|
|
79
79
|
)),
|
|
80
80
|
'default': { '**/node_modules': true, '**/bower_components': true },
|
|
@@ -83,7 +83,7 @@ configurationRegistry.registerConfiguration({
|
|
|
83
83
|
{
|
|
84
84
|
'type': 'boolean',
|
|
85
85
|
'description': ( localize(
|
|
86
|
-
|
|
86
|
+
1732,
|
|
87
87
|
"The glob pattern to match file paths against. Set to true or false to enable or disable the pattern."
|
|
88
88
|
)),
|
|
89
89
|
},
|
|
@@ -95,7 +95,7 @@ configurationRegistry.registerConfiguration({
|
|
|
95
95
|
pattern: '\\w*\\$\\(basename\\)\\w*',
|
|
96
96
|
default: '$(basename).ext',
|
|
97
97
|
description: ( localize(
|
|
98
|
-
|
|
98
|
+
1733,
|
|
99
99
|
'Additional check on the siblings of a matching file. Use $(basename) as variable for the matching file name.'
|
|
100
100
|
))
|
|
101
101
|
}
|
|
@@ -107,7 +107,7 @@ configurationRegistry.registerConfiguration({
|
|
|
107
107
|
'explorer.enableDragAndDrop': {
|
|
108
108
|
'type': 'boolean',
|
|
109
109
|
'description': ( localize(
|
|
110
|
-
|
|
110
|
+
1734,
|
|
111
111
|
"Controls whether the Explorer should allow to move files and folders via drag and drop. This setting only effects drag and drop from inside the Explorer."
|
|
112
112
|
)),
|
|
113
113
|
'default': true
|
|
@@ -115,7 +115,7 @@ configurationRegistry.registerConfiguration({
|
|
|
115
115
|
'explorer.confirmDragAndDrop': {
|
|
116
116
|
'type': 'boolean',
|
|
117
117
|
'description': ( localize(
|
|
118
|
-
|
|
118
|
+
1735,
|
|
119
119
|
"Controls whether the Explorer should ask for confirmation to move files and folders via drag and drop."
|
|
120
120
|
)),
|
|
121
121
|
'default': true
|
|
@@ -123,7 +123,7 @@ configurationRegistry.registerConfiguration({
|
|
|
123
123
|
'explorer.confirmPasteNative': {
|
|
124
124
|
'type': 'boolean',
|
|
125
125
|
'description': ( localize(
|
|
126
|
-
|
|
126
|
+
1736,
|
|
127
127
|
"Controls whether the Explorer should ask for confirmation when pasting native files and folders."
|
|
128
128
|
)),
|
|
129
129
|
'default': true
|
|
@@ -131,7 +131,7 @@ configurationRegistry.registerConfiguration({
|
|
|
131
131
|
'explorer.confirmDelete': {
|
|
132
132
|
'type': 'boolean',
|
|
133
133
|
'description': ( localize(
|
|
134
|
-
|
|
134
|
+
1737,
|
|
135
135
|
"Controls whether the Explorer should ask for confirmation when deleting a file via the trash."
|
|
136
136
|
)),
|
|
137
137
|
'default': true
|
|
@@ -139,7 +139,7 @@ configurationRegistry.registerConfiguration({
|
|
|
139
139
|
'explorer.enableUndo': {
|
|
140
140
|
'type': 'boolean',
|
|
141
141
|
'description': ( localize(
|
|
142
|
-
|
|
142
|
+
1738,
|
|
143
143
|
"Controls whether the Explorer should support undoing file and folder operations."
|
|
144
144
|
)),
|
|
145
145
|
'default': true
|
|
@@ -148,20 +148,20 @@ configurationRegistry.registerConfiguration({
|
|
|
148
148
|
'type': 'string',
|
|
149
149
|
'enum': [UndoConfirmLevel.Verbose, UndoConfirmLevel.Default, UndoConfirmLevel.Light],
|
|
150
150
|
'description': ( localize(
|
|
151
|
-
|
|
151
|
+
1739,
|
|
152
152
|
"Controls whether the Explorer should ask for confirmation when undoing."
|
|
153
153
|
)),
|
|
154
154
|
'default': UndoConfirmLevel.Default,
|
|
155
155
|
'enumDescriptions': [
|
|
156
|
-
( localize(
|
|
157
|
-
( localize(
|
|
158
|
-
( localize(
|
|
156
|
+
( localize(1740, 'Explorer will prompt before all undo operations.')),
|
|
157
|
+
( localize(1741, 'Explorer will prompt before destructive undo operations.')),
|
|
158
|
+
( localize(1742, 'Explorer will not prompt before undo operations when focused.')),
|
|
159
159
|
],
|
|
160
160
|
},
|
|
161
161
|
'explorer.expandSingleFolderWorkspaces': {
|
|
162
162
|
'type': 'boolean',
|
|
163
163
|
'description': ( localize(
|
|
164
|
-
|
|
164
|
+
1743,
|
|
165
165
|
"Controls whether the Explorer should expand multi-root workspaces containing only one folder during initialization"
|
|
166
166
|
)),
|
|
167
167
|
'default': true
|
|
@@ -172,32 +172,32 @@ configurationRegistry.registerConfiguration({
|
|
|
172
172
|
'default': SortOrder.Default,
|
|
173
173
|
'enumDescriptions': [
|
|
174
174
|
( localize(
|
|
175
|
-
|
|
175
|
+
1744,
|
|
176
176
|
'Files and folders are sorted by their names. Folders are displayed before files.'
|
|
177
177
|
)),
|
|
178
178
|
( localize(
|
|
179
|
-
|
|
179
|
+
1745,
|
|
180
180
|
'Files and folders are sorted by their names. Files are interwoven with folders.'
|
|
181
181
|
)),
|
|
182
182
|
( localize(
|
|
183
|
-
|
|
183
|
+
1746,
|
|
184
184
|
'Files and folders are sorted by their names. Files are displayed before folders.'
|
|
185
185
|
)),
|
|
186
186
|
( localize(
|
|
187
|
-
|
|
187
|
+
1747,
|
|
188
188
|
'Files and folders are grouped by extension type then sorted by their names. Folders are displayed before files.'
|
|
189
189
|
)),
|
|
190
190
|
( localize(
|
|
191
|
-
|
|
191
|
+
1748,
|
|
192
192
|
'Files and folders are sorted by last modified date in descending order. Folders are displayed before files.'
|
|
193
193
|
)),
|
|
194
194
|
( localize(
|
|
195
|
-
|
|
195
|
+
1749,
|
|
196
196
|
'Files and folders are sorted by their names. Folders are displayed before files. Files with nested children are displayed before other files.'
|
|
197
197
|
))
|
|
198
198
|
],
|
|
199
199
|
'markdownDescription': ( localize(
|
|
200
|
-
|
|
200
|
+
1750,
|
|
201
201
|
"Controls the property-based sorting of files and folders in the Explorer. When `#explorer.fileNesting.enabled#` is enabled, also controls sorting of nested files."
|
|
202
202
|
))
|
|
203
203
|
},
|
|
@@ -206,24 +206,32 @@ configurationRegistry.registerConfiguration({
|
|
|
206
206
|
'enum': [LexicographicOptions.Default, LexicographicOptions.Upper, LexicographicOptions.Lower, LexicographicOptions.Unicode],
|
|
207
207
|
'default': LexicographicOptions.Default,
|
|
208
208
|
'enumDescriptions': [
|
|
209
|
-
( localize(
|
|
210
|
-
( localize(
|
|
211
|
-
( localize(
|
|
212
|
-
( localize(
|
|
209
|
+
( localize(1751, 'Uppercase and lowercase names are mixed together.')),
|
|
210
|
+
( localize(1752, 'Uppercase names are grouped together before lowercase names.')),
|
|
211
|
+
( localize(1753, 'Lowercase names are grouped together before uppercase names.')),
|
|
212
|
+
( localize(1754, 'Names are sorted in Unicode order.'))
|
|
213
213
|
],
|
|
214
214
|
'description': ( localize(
|
|
215
|
-
|
|
215
|
+
1755,
|
|
216
216
|
"Controls the lexicographic sorting of file and folder names in the Explorer."
|
|
217
217
|
))
|
|
218
218
|
},
|
|
219
|
+
'explorer.sortOrderReverse': {
|
|
220
|
+
'type': 'boolean',
|
|
221
|
+
'description': ( localize(
|
|
222
|
+
1756,
|
|
223
|
+
"Controls whether the file and folder sort order, should be reversed."
|
|
224
|
+
)),
|
|
225
|
+
'default': false,
|
|
226
|
+
},
|
|
219
227
|
'explorer.decorations.colors': {
|
|
220
228
|
type: 'boolean',
|
|
221
|
-
description: ( localize(
|
|
229
|
+
description: ( localize(1757, "Controls whether file decorations should use colors.")),
|
|
222
230
|
default: true
|
|
223
231
|
},
|
|
224
232
|
'explorer.decorations.badges': {
|
|
225
233
|
type: 'boolean',
|
|
226
|
-
description: ( localize(
|
|
234
|
+
description: ( localize(1758, "Controls whether file decorations should use badges.")),
|
|
227
235
|
default: true
|
|
228
236
|
},
|
|
229
237
|
'explorer.incrementalNaming': {
|
|
@@ -231,20 +239,20 @@ configurationRegistry.registerConfiguration({
|
|
|
231
239
|
enum: ['simple', 'smart', 'disabled'],
|
|
232
240
|
enumDescriptions: [
|
|
233
241
|
( localize(
|
|
234
|
-
|
|
242
|
+
1759,
|
|
235
243
|
"Appends the word \"copy\" at the end of the duplicated name potentially followed by a number."
|
|
236
244
|
)),
|
|
237
245
|
( localize(
|
|
238
|
-
|
|
246
|
+
1760,
|
|
239
247
|
"Adds a number at the end of the duplicated name. If some number is already part of the name, tries to increase that number."
|
|
240
248
|
)),
|
|
241
249
|
( localize(
|
|
242
|
-
|
|
250
|
+
1761,
|
|
243
251
|
"Disables incremental naming. If two files with the same name exist you will be prompted to overwrite the existing file."
|
|
244
252
|
))
|
|
245
253
|
],
|
|
246
254
|
description: ( localize(
|
|
247
|
-
|
|
255
|
+
1762,
|
|
248
256
|
"Controls which naming strategy to use when giving a new name to a duplicated Explorer item on paste."
|
|
249
257
|
)),
|
|
250
258
|
default: 'simple'
|
|
@@ -252,7 +260,7 @@ configurationRegistry.registerConfiguration({
|
|
|
252
260
|
'explorer.autoOpenDroppedFile': {
|
|
253
261
|
'type': 'boolean',
|
|
254
262
|
'description': ( localize(
|
|
255
|
-
|
|
263
|
+
1763,
|
|
256
264
|
"Controls whether the Explorer should automatically open a file when it is dropped into the explorer"
|
|
257
265
|
)),
|
|
258
266
|
'default': true
|
|
@@ -260,7 +268,7 @@ configurationRegistry.registerConfiguration({
|
|
|
260
268
|
'explorer.compactFolders': {
|
|
261
269
|
'type': 'boolean',
|
|
262
270
|
'description': ( localize(
|
|
263
|
-
|
|
271
|
+
1764,
|
|
264
272
|
"Controls whether the Explorer should render folders in a compact form. In such a form, single child folders will be compressed in a combined tree element. Useful for Java package structures, for example."
|
|
265
273
|
)),
|
|
266
274
|
'default': true
|
|
@@ -273,12 +281,12 @@ configurationRegistry.registerConfiguration({
|
|
|
273
281
|
'auto'
|
|
274
282
|
],
|
|
275
283
|
'enumDescriptions': [
|
|
276
|
-
( localize(
|
|
277
|
-
( localize(
|
|
278
|
-
( localize(
|
|
284
|
+
( localize(1765, "Use slash as path separation character.")),
|
|
285
|
+
( localize(1766, "Use backslash as path separation character.")),
|
|
286
|
+
( localize(1767, "Uses operating system specific path separation character.")),
|
|
279
287
|
],
|
|
280
288
|
'description': ( localize(
|
|
281
|
-
|
|
289
|
+
1768,
|
|
282
290
|
"The path separation character used when copying relative file paths."
|
|
283
291
|
)),
|
|
284
292
|
'default': 'auto'
|
|
@@ -286,7 +294,7 @@ configurationRegistry.registerConfiguration({
|
|
|
286
294
|
'explorer.excludeGitIgnore': {
|
|
287
295
|
type: 'boolean',
|
|
288
296
|
markdownDescription: ( localize(
|
|
289
|
-
|
|
297
|
+
1769,
|
|
290
298
|
"Controls whether entries in .gitignore should be parsed and excluded from the Explorer. Similar to {0}.",
|
|
291
299
|
'`#files.exclude#`'
|
|
292
300
|
)),
|
|
@@ -297,7 +305,7 @@ configurationRegistry.registerConfiguration({
|
|
|
297
305
|
'type': 'boolean',
|
|
298
306
|
scope: ConfigurationScope.RESOURCE,
|
|
299
307
|
'markdownDescription': ( localize(
|
|
300
|
-
|
|
308
|
+
1770,
|
|
301
309
|
"Controls whether file nesting is enabled in the Explorer. File nesting allows for related files in a directory to be visually grouped together under a single parent file."
|
|
302
310
|
)),
|
|
303
311
|
'default': false,
|
|
@@ -305,7 +313,7 @@ configurationRegistry.registerConfiguration({
|
|
|
305
313
|
'explorer.fileNesting.expand': {
|
|
306
314
|
'type': 'boolean',
|
|
307
315
|
'markdownDescription': ( localize(
|
|
308
|
-
|
|
316
|
+
1771,
|
|
309
317
|
"Controls whether file nests are automatically expanded. {0} must be set for this to take effect.",
|
|
310
318
|
'`#explorer.fileNesting.enabled#`'
|
|
311
319
|
)),
|
|
@@ -315,14 +323,14 @@ configurationRegistry.registerConfiguration({
|
|
|
315
323
|
'type': 'object',
|
|
316
324
|
scope: ConfigurationScope.RESOURCE,
|
|
317
325
|
'markdownDescription': ( localize(
|
|
318
|
-
|
|
326
|
+
1772,
|
|
319
327
|
"Controls nesting of files in the Explorer. {0} must be set for this to take effect. Each __Item__ represents a parent pattern and may contain a single `*` character that matches any string. Each __Value__ represents a comma separated list of the child patterns that should be shown nested under a given parent. Child patterns may contain several special tokens:\n- `${capture}`: Matches the resolved value of the `*` from the parent pattern\n- `${basename}`: Matches the parent file's basename, the `file` in `file.ts`\n- `${extname}`: Matches the parent file's extension, the `ts` in `file.ts`\n- `${dirname}`: Matches the parent file's directory name, the `src` in `src/file.ts`\n- `*`: Matches any string, may only be used once per child pattern",
|
|
320
328
|
'`#explorer.fileNesting.enabled#`'
|
|
321
329
|
)),
|
|
322
330
|
patternProperties: {
|
|
323
331
|
'^[^*]*\\*?[^*]*$': {
|
|
324
332
|
markdownDescription: ( localize(
|
|
325
|
-
|
|
333
|
+
1773,
|
|
326
334
|
"Each key pattern may contain a single `*` character which will match any string."
|
|
327
335
|
)),
|
|
328
336
|
type: 'string',
|