@codingame/monaco-vscode-walkthrough-service-override 4.4.1 → 4.5.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.
@@ -0,0 +1,936 @@
1
+ import 'vscode/vscode/vs/base/common/strings';
2
+ import { localizeWithPath } from 'vscode/vscode/vs/nls';
3
+ import 'vscode/vscode/vs/workbench/services/themes/common/workbenchThemeService';
4
+ import { Codicon } from 'vscode/vscode/vs/base/common/codicons';
5
+ import { registerIcon } from 'vscode/vscode/vs/platform/theme/common/iconRegistry';
6
+ import { NotebookSetting } from 'vscode/vscode/vs/workbench/contrib/notebook/common/notebookCommon';
7
+
8
+ const setupIcon = registerIcon('getting-started-setup', Codicon.zap, ( localizeWithPath(
9
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
10
+ 'getting-started-setup-icon',
11
+ "Icon used for the setup category of welcome page"
12
+ )));
13
+ const beginnerIcon = registerIcon('getting-started-beginner', Codicon.lightbulb, ( localizeWithPath(
14
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
15
+ 'getting-started-beginner-icon',
16
+ "Icon used for the beginner category of welcome page"
17
+ )));
18
+ const startEntries = [
19
+ {
20
+ id: 'welcome.showNewFileEntries',
21
+ title: ( localizeWithPath(
22
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
23
+ 'gettingStarted.newFile.title',
24
+ "New File..."
25
+ )),
26
+ description: ( localizeWithPath(
27
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
28
+ 'gettingStarted.newFile.description',
29
+ "Open a new untitled text file, notebook, or custom editor."
30
+ )),
31
+ icon: Codicon.newFile,
32
+ content: {
33
+ type: 'startEntry',
34
+ command: 'command:welcome.showNewFileEntries',
35
+ }
36
+ },
37
+ {
38
+ id: 'topLevelOpenMac',
39
+ title: ( localizeWithPath(
40
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
41
+ 'gettingStarted.openMac.title',
42
+ "Open..."
43
+ )),
44
+ description: ( localizeWithPath(
45
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
46
+ 'gettingStarted.openMac.description',
47
+ "Open a file or folder to start working"
48
+ )),
49
+ icon: Codicon.folderOpened,
50
+ when: '!isWeb && isMac',
51
+ content: {
52
+ type: 'startEntry',
53
+ command: 'command:workbench.action.files.openFileFolder',
54
+ }
55
+ },
56
+ {
57
+ id: 'topLevelOpenFile',
58
+ title: ( localizeWithPath(
59
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
60
+ 'gettingStarted.openFile.title',
61
+ "Open File..."
62
+ )),
63
+ description: ( localizeWithPath(
64
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
65
+ 'gettingStarted.openFile.description',
66
+ "Open a file to start working"
67
+ )),
68
+ icon: Codicon.goToFile,
69
+ when: 'isWeb || !isMac',
70
+ content: {
71
+ type: 'startEntry',
72
+ command: 'command:workbench.action.files.openFile',
73
+ }
74
+ },
75
+ {
76
+ id: 'topLevelOpenFolder',
77
+ title: ( localizeWithPath(
78
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
79
+ 'gettingStarted.openFolder.title',
80
+ "Open Folder..."
81
+ )),
82
+ description: ( localizeWithPath(
83
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
84
+ 'gettingStarted.openFolder.description',
85
+ "Open a folder to start working"
86
+ )),
87
+ icon: Codicon.folderOpened,
88
+ when: '!isWeb && !isMac',
89
+ content: {
90
+ type: 'startEntry',
91
+ command: 'command:workbench.action.files.openFolder',
92
+ }
93
+ },
94
+ {
95
+ id: 'topLevelOpenFolderWeb',
96
+ title: ( localizeWithPath(
97
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
98
+ 'gettingStarted.openFolder.title',
99
+ "Open Folder..."
100
+ )),
101
+ description: ( localizeWithPath(
102
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
103
+ 'gettingStarted.openFolder.description',
104
+ "Open a folder to start working"
105
+ )),
106
+ icon: Codicon.folderOpened,
107
+ when: '!openFolderWorkspaceSupport && workbenchState == \'workspace\'',
108
+ content: {
109
+ type: 'startEntry',
110
+ command: 'command:workbench.action.files.openFolderViaWorkspace',
111
+ }
112
+ },
113
+ {
114
+ id: 'topLevelGitClone',
115
+ title: ( localizeWithPath(
116
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
117
+ 'gettingStarted.topLevelGitClone.title',
118
+ "Clone Git Repository..."
119
+ )),
120
+ description: ( localizeWithPath(
121
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
122
+ 'gettingStarted.topLevelGitClone.description',
123
+ "Clone a remote repository to a local folder"
124
+ )),
125
+ when: 'config.git.enabled && !git.missing',
126
+ icon: Codicon.sourceControl,
127
+ content: {
128
+ type: 'startEntry',
129
+ command: 'command:git.clone',
130
+ }
131
+ },
132
+ {
133
+ id: 'topLevelGitOpen',
134
+ title: ( localizeWithPath(
135
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
136
+ 'gettingStarted.topLevelGitOpen.title',
137
+ "Open Repository..."
138
+ )),
139
+ description: ( localizeWithPath(
140
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
141
+ 'gettingStarted.topLevelGitOpen.description',
142
+ "Connect to a remote repository or pull request to browse, search, edit, and commit"
143
+ )),
144
+ when: 'workspacePlatform == \'webworker\'',
145
+ icon: Codicon.sourceControl,
146
+ content: {
147
+ type: 'startEntry',
148
+ command: 'command:remoteHub.openRepository',
149
+ }
150
+ },
151
+ {
152
+ id: 'topLevelShowWalkthroughs',
153
+ title: ( localizeWithPath(
154
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
155
+ 'gettingStarted.topLevelShowWalkthroughs.title',
156
+ "Open a Walkthrough..."
157
+ )),
158
+ description: ( localizeWithPath(
159
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
160
+ 'gettingStarted.topLevelShowWalkthroughs.description',
161
+ "View a walkthrough on the editor or an extension"
162
+ )),
163
+ icon: Codicon.checklist,
164
+ when: 'allWalkthroughsHidden',
165
+ content: {
166
+ type: 'startEntry',
167
+ command: 'command:welcome.showAllWalkthroughs',
168
+ }
169
+ },
170
+ {
171
+ id: 'topLevelRemoteOpen',
172
+ title: ( localizeWithPath(
173
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
174
+ 'gettingStarted.topLevelRemoteOpen.title',
175
+ "Connect to..."
176
+ )),
177
+ description: ( localizeWithPath(
178
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
179
+ 'gettingStarted.topLevelRemoteOpen.description',
180
+ "Connect to remote development workspaces."
181
+ )),
182
+ when: '!isWeb',
183
+ icon: Codicon.remote,
184
+ content: {
185
+ type: 'startEntry',
186
+ command: 'command:workbench.action.remote.showMenu',
187
+ }
188
+ },
189
+ {
190
+ id: 'topLevelOpenTunnel',
191
+ title: ( localizeWithPath(
192
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
193
+ 'gettingStarted.topLevelOpenTunnel.title',
194
+ "Open Tunnel..."
195
+ )),
196
+ description: ( localizeWithPath(
197
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
198
+ 'gettingStarted.topLevelOpenTunnel.description',
199
+ "Connect to a remote machine through a Tunnel"
200
+ )),
201
+ when: 'isWeb && showRemoteStartEntryInWeb',
202
+ icon: Codicon.remote,
203
+ content: {
204
+ type: 'startEntry',
205
+ command: 'command:workbench.action.remote.showWebStartEntryActions',
206
+ }
207
+ },
208
+ ];
209
+ const Button = (title, href) => `[${title}](${href})`;
210
+ const walkthroughs = [
211
+ {
212
+ id: 'Setup',
213
+ title: ( localizeWithPath(
214
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
215
+ 'gettingStarted.setup.title',
216
+ "Get Started with VS Code"
217
+ )),
218
+ description: ( localizeWithPath(
219
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
220
+ 'gettingStarted.setup.description',
221
+ "Customize your editor, learn the basics, and start coding"
222
+ )),
223
+ isFeatured: true,
224
+ icon: setupIcon,
225
+ when: '!isWeb',
226
+ next: 'Beginner',
227
+ content: {
228
+ type: 'steps',
229
+ steps: [
230
+ {
231
+ id: 'pickColorTheme',
232
+ title: ( localizeWithPath(
233
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
234
+ 'gettingStarted.pickColor.title',
235
+ "Choose your theme"
236
+ )),
237
+ description: ( localizeWithPath(
238
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
239
+ 'gettingStarted.pickColor.description.interpolated',
240
+ "The right theme helps you focus on your code, is easy on your eyes, and is simply more fun to use.\n{0}",
241
+ Button(( localizeWithPath(
242
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
243
+ 'titleID',
244
+ "Browse Color Themes"
245
+ )), 'command:workbench.action.selectTheme')
246
+ )),
247
+ completionEvents: [
248
+ 'onSettingChanged:workbench.colorTheme',
249
+ 'onCommand:workbench.action.selectTheme'
250
+ ],
251
+ media: { type: 'markdown', path: 'theme_picker', }
252
+ },
253
+ {
254
+ id: 'extensionsWeb',
255
+ title: ( localizeWithPath(
256
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
257
+ 'gettingStarted.extensions.title',
258
+ "Code with extensions"
259
+ )),
260
+ description: ( localizeWithPath(
261
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
262
+ 'gettingStarted.extensionsWeb.description.interpolated',
263
+ "Extensions are VS Code's power-ups. A growing number are becoming available in the web.\n{0}",
264
+ Button(( localizeWithPath(
265
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
266
+ 'browsePopular',
267
+ "Browse Popular Web Extensions"
268
+ )), 'command:workbench.extensions.action.showPopularExtensions')
269
+ )),
270
+ when: 'workspacePlatform == \'webworker\'',
271
+ media: {
272
+ type: 'svg', altText: 'VS Code extension marketplace with featured language extensions', path: 'extensions-web.svg'
273
+ },
274
+ },
275
+ {
276
+ id: 'findLanguageExtensions',
277
+ title: ( localizeWithPath(
278
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
279
+ 'gettingStarted.findLanguageExts.title',
280
+ "Rich support for all your languages"
281
+ )),
282
+ description: ( localizeWithPath(
283
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
284
+ 'gettingStarted.findLanguageExts.description.interpolated',
285
+ "Code smarter with syntax highlighting, code completion, linting and debugging. While many languages are built-in, many more can be added as extensions.\n{0}",
286
+ Button(( localizeWithPath(
287
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
288
+ 'browseLangExts',
289
+ "Browse Language Extensions"
290
+ )), 'command:workbench.extensions.action.showLanguageExtensions')
291
+ )),
292
+ when: 'workspacePlatform != \'webworker\'',
293
+ media: {
294
+ type: 'svg', altText: 'Language extensions', path: 'languages.svg'
295
+ },
296
+ },
297
+ {
298
+ id: 'settings',
299
+ title: ( localizeWithPath(
300
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
301
+ 'gettingStarted.settings.title',
302
+ "Tune your settings"
303
+ )),
304
+ description: ( localizeWithPath(
305
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
306
+ 'gettingStarted.settings.description.interpolated',
307
+ "Customize every aspect of VS Code and your extensions to your liking. Commonly used settings are listed first to get you started.\n{0}",
308
+ Button(( localizeWithPath(
309
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
310
+ 'tweakSettings',
311
+ "Open Settings"
312
+ )), 'command:toSide:workbench.action.openSettings')
313
+ )),
314
+ media: {
315
+ type: 'svg', altText: 'VS Code Settings', path: 'settings.svg'
316
+ },
317
+ },
318
+ {
319
+ id: 'settingsSync',
320
+ title: ( localizeWithPath(
321
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
322
+ 'gettingStarted.settingsSync.title',
323
+ "Sync settings across devices"
324
+ )),
325
+ description: ( localizeWithPath(
326
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
327
+ 'gettingStarted.settingsSync.description.interpolated',
328
+ "Keep your essential customizations backed up and updated across all your devices.\n{0}",
329
+ Button(( localizeWithPath(
330
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
331
+ 'enableSync',
332
+ "Backup and Sync Settings"
333
+ )), 'command:workbench.userDataSync.actions.turnOn')
334
+ )),
335
+ when: 'syncStatus != uninitialized',
336
+ completionEvents: ['onEvent:sync-enabled'],
337
+ media: {
338
+ type: 'svg', altText: 'The "Turn on Sync" entry in the settings gear menu.', path: 'settingsSync.svg'
339
+ },
340
+ },
341
+ {
342
+ id: 'commandPaletteTask',
343
+ title: ( localizeWithPath(
344
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
345
+ 'gettingStarted.commandPalette.title',
346
+ "Unlock productivity with the Command Palette "
347
+ )),
348
+ description: ( localizeWithPath(
349
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
350
+ 'gettingStarted.commandPalette.description.interpolated',
351
+ "Run commands without reaching for your mouse to accomplish any task in VS Code.\n{0}",
352
+ Button(( localizeWithPath(
353
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
354
+ 'commandPalette',
355
+ "Open Command Palette"
356
+ )), 'command:workbench.action.showCommands')
357
+ )),
358
+ media: { type: 'svg', altText: 'Command Palette overlay for searching and executing commands.', path: 'commandPalette.svg' },
359
+ },
360
+ {
361
+ id: 'pickAFolderTask-Mac',
362
+ title: ( localizeWithPath(
363
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
364
+ 'gettingStarted.setup.OpenFolder.title',
365
+ "Open up your code"
366
+ )),
367
+ description: ( localizeWithPath(
368
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
369
+ 'gettingStarted.setup.OpenFolder.description.interpolated',
370
+ "You're all set to start coding. Open a project folder to get your files into VS Code.\n{0}",
371
+ Button(( localizeWithPath(
372
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
373
+ 'pickFolder',
374
+ "Pick a Folder"
375
+ )), 'command:workbench.action.files.openFileFolder')
376
+ )),
377
+ when: 'isMac && workspaceFolderCount == 0',
378
+ media: {
379
+ type: 'svg', altText: 'Explorer view showing buttons for opening folder and cloning repository.', path: 'openFolder.svg'
380
+ }
381
+ },
382
+ {
383
+ id: 'pickAFolderTask-Other',
384
+ title: ( localizeWithPath(
385
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
386
+ 'gettingStarted.setup.OpenFolder.title',
387
+ "Open up your code"
388
+ )),
389
+ description: ( localizeWithPath(
390
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
391
+ 'gettingStarted.setup.OpenFolder.description.interpolated',
392
+ "You're all set to start coding. Open a project folder to get your files into VS Code.\n{0}",
393
+ Button(( localizeWithPath(
394
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
395
+ 'pickFolder',
396
+ "Pick a Folder"
397
+ )), 'command:workbench.action.files.openFolder')
398
+ )),
399
+ when: '!isMac && workspaceFolderCount == 0',
400
+ media: {
401
+ type: 'svg', altText: 'Explorer view showing buttons for opening folder and cloning repository.', path: 'openFolder.svg'
402
+ }
403
+ },
404
+ {
405
+ id: 'quickOpen',
406
+ title: ( localizeWithPath(
407
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
408
+ 'gettingStarted.quickOpen.title',
409
+ "Quickly navigate between your files"
410
+ )),
411
+ description: ( localizeWithPath(
412
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
413
+ 'gettingStarted.quickOpen.description.interpolated',
414
+ "Navigate between files in an instant with one keystroke. Tip: Open multiple files by pressing the right arrow key.\n{0}",
415
+ Button(( localizeWithPath(
416
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
417
+ 'quickOpen',
418
+ "Quick Open a File"
419
+ )), 'command:toSide:workbench.action.quickOpen')
420
+ )),
421
+ when: 'workspaceFolderCount != 0',
422
+ media: {
423
+ type: 'svg', altText: 'Go to file in quick search.', path: 'search.svg'
424
+ }
425
+ },
426
+ {
427
+ id: 'videoTutorial',
428
+ title: ( localizeWithPath(
429
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
430
+ 'gettingStarted.videoTutorial.title',
431
+ "Watch video tutorials"
432
+ )),
433
+ description: ( localizeWithPath(
434
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
435
+ 'gettingStarted.videoTutorial.description.interpolated',
436
+ "Watch the first in a series of short & practical video tutorials for VS Code's key features.\n{0}",
437
+ Button(( localizeWithPath(
438
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
439
+ 'watch',
440
+ "Watch Tutorial"
441
+ )), 'https://aka.ms/vscode-getting-started-video')
442
+ )),
443
+ media: { type: 'svg', altText: 'VS Code Settings', path: 'learn.svg' },
444
+ }
445
+ ]
446
+ }
447
+ },
448
+ {
449
+ id: 'SetupWeb',
450
+ title: ( localizeWithPath(
451
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
452
+ 'gettingStarted.setupWeb.title',
453
+ "Get Started with VS Code for the Web"
454
+ )),
455
+ description: ( localizeWithPath(
456
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
457
+ 'gettingStarted.setupWeb.description',
458
+ "Customize your editor, learn the basics, and start coding"
459
+ )),
460
+ isFeatured: true,
461
+ icon: setupIcon,
462
+ when: 'isWeb',
463
+ next: 'Beginner',
464
+ content: {
465
+ type: 'steps',
466
+ steps: [
467
+ {
468
+ id: 'pickColorThemeWeb',
469
+ title: ( localizeWithPath(
470
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
471
+ 'gettingStarted.pickColor.title',
472
+ "Choose your theme"
473
+ )),
474
+ description: ( localizeWithPath(
475
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
476
+ 'gettingStarted.pickColor.description.interpolated',
477
+ "The right theme helps you focus on your code, is easy on your eyes, and is simply more fun to use.\n{0}",
478
+ Button(( localizeWithPath(
479
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
480
+ 'titleID',
481
+ "Browse Color Themes"
482
+ )), 'command:workbench.action.selectTheme')
483
+ )),
484
+ completionEvents: [
485
+ 'onSettingChanged:workbench.colorTheme',
486
+ 'onCommand:workbench.action.selectTheme'
487
+ ],
488
+ media: { type: 'markdown', path: 'theme_picker', }
489
+ },
490
+ {
491
+ id: 'menuBarWeb',
492
+ title: ( localizeWithPath(
493
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
494
+ 'gettingStarted.menuBar.title',
495
+ "Just the right amount of UI"
496
+ )),
497
+ description: ( localizeWithPath(
498
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
499
+ 'gettingStarted.menuBar.description.interpolated',
500
+ "The full menu bar is available in the dropdown menu to make room for your code. Toggle its appearance for faster access. \n{0}",
501
+ Button(( localizeWithPath(
502
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
503
+ 'toggleMenuBar',
504
+ "Toggle Menu Bar"
505
+ )), 'command:workbench.action.toggleMenuBar')
506
+ )),
507
+ when: 'isWeb',
508
+ media: {
509
+ type: 'svg', altText: 'Comparing menu dropdown with the visible menu bar.', path: 'menuBar.svg'
510
+ },
511
+ },
512
+ {
513
+ id: 'extensionsWebWeb',
514
+ title: ( localizeWithPath(
515
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
516
+ 'gettingStarted.extensions.title',
517
+ "Code with extensions"
518
+ )),
519
+ description: ( localizeWithPath(
520
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
521
+ 'gettingStarted.extensionsWeb.description.interpolated',
522
+ "Extensions are VS Code's power-ups. A growing number are becoming available in the web.\n{0}",
523
+ Button(( localizeWithPath(
524
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
525
+ 'browsePopular',
526
+ "Browse Popular Web Extensions"
527
+ )), 'command:workbench.extensions.action.showPopularExtensions')
528
+ )),
529
+ when: 'workspacePlatform == \'webworker\'',
530
+ media: {
531
+ type: 'svg', altText: 'VS Code extension marketplace with featured language extensions', path: 'extensions-web.svg'
532
+ },
533
+ },
534
+ {
535
+ id: 'findLanguageExtensionsWeb',
536
+ title: ( localizeWithPath(
537
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
538
+ 'gettingStarted.findLanguageExts.title',
539
+ "Rich support for all your languages"
540
+ )),
541
+ description: ( localizeWithPath(
542
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
543
+ 'gettingStarted.findLanguageExts.description.interpolated',
544
+ "Code smarter with syntax highlighting, code completion, linting and debugging. While many languages are built-in, many more can be added as extensions.\n{0}",
545
+ Button(( localizeWithPath(
546
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
547
+ 'browseLangExts',
548
+ "Browse Language Extensions"
549
+ )), 'command:workbench.extensions.action.showLanguageExtensions')
550
+ )),
551
+ when: 'workspacePlatform != \'webworker\'',
552
+ media: {
553
+ type: 'svg', altText: 'Language extensions', path: 'languages.svg'
554
+ },
555
+ },
556
+ {
557
+ id: 'settingsSyncWeb',
558
+ title: ( localizeWithPath(
559
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
560
+ 'gettingStarted.settingsSync.title',
561
+ "Sync settings across devices"
562
+ )),
563
+ description: ( localizeWithPath(
564
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
565
+ 'gettingStarted.settingsSync.description.interpolated',
566
+ "Keep your essential customizations backed up and updated across all your devices.\n{0}",
567
+ Button(( localizeWithPath(
568
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
569
+ 'enableSync',
570
+ "Backup and Sync Settings"
571
+ )), 'command:workbench.userDataSync.actions.turnOn')
572
+ )),
573
+ when: 'syncStatus != uninitialized',
574
+ completionEvents: ['onEvent:sync-enabled'],
575
+ media: {
576
+ type: 'svg', altText: 'The "Turn on Sync" entry in the settings gear menu.', path: 'settingsSync.svg'
577
+ },
578
+ },
579
+ {
580
+ id: 'commandPaletteTaskWeb',
581
+ title: ( localizeWithPath(
582
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
583
+ 'gettingStarted.commandPalette.title',
584
+ "Unlock productivity with the Command Palette "
585
+ )),
586
+ description: ( localizeWithPath(
587
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
588
+ 'gettingStarted.commandPalette.description.interpolated',
589
+ "Run commands without reaching for your mouse to accomplish any task in VS Code.\n{0}",
590
+ Button(( localizeWithPath(
591
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
592
+ 'commandPalette',
593
+ "Open Command Palette"
594
+ )), 'command:workbench.action.showCommands')
595
+ )),
596
+ media: { type: 'svg', altText: 'Command Palette overlay for searching and executing commands.', path: 'commandPalette.svg' },
597
+ },
598
+ {
599
+ id: 'pickAFolderTask-WebWeb',
600
+ title: ( localizeWithPath(
601
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
602
+ 'gettingStarted.setup.OpenFolder.title',
603
+ "Open up your code"
604
+ )),
605
+ description: ( localizeWithPath(
606
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
607
+ 'gettingStarted.setup.OpenFolderWeb.description.interpolated',
608
+ "You're all set to start coding. You can open a local project or a remote repository to get your files into VS Code.\n{0}\n{1}",
609
+ Button(( localizeWithPath(
610
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
611
+ 'openFolder',
612
+ "Open Folder"
613
+ )), 'command:workbench.action.addRootFolder'),
614
+ Button(( localizeWithPath(
615
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
616
+ 'openRepository',
617
+ "Open Repository"
618
+ )), 'command:remoteHub.openRepository')
619
+ )),
620
+ when: 'workspaceFolderCount == 0',
621
+ media: {
622
+ type: 'svg', altText: 'Explorer view showing buttons for opening folder and cloning repository.', path: 'openFolder.svg'
623
+ }
624
+ },
625
+ {
626
+ id: 'quickOpenWeb',
627
+ title: ( localizeWithPath(
628
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
629
+ 'gettingStarted.quickOpen.title',
630
+ "Quickly navigate between your files"
631
+ )),
632
+ description: ( localizeWithPath(
633
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
634
+ 'gettingStarted.quickOpen.description.interpolated',
635
+ "Navigate between files in an instant with one keystroke. Tip: Open multiple files by pressing the right arrow key.\n{0}",
636
+ Button(( localizeWithPath(
637
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
638
+ 'quickOpen',
639
+ "Quick Open a File"
640
+ )), 'command:toSide:workbench.action.quickOpen')
641
+ )),
642
+ when: 'workspaceFolderCount != 0',
643
+ media: {
644
+ type: 'svg', altText: 'Go to file in quick search.', path: 'search.svg'
645
+ }
646
+ }
647
+ ]
648
+ }
649
+ },
650
+ {
651
+ id: 'Beginner',
652
+ isFeatured: false,
653
+ title: ( localizeWithPath(
654
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
655
+ 'gettingStarted.beginner.title',
656
+ "Learn the Fundamentals"
657
+ )),
658
+ icon: beginnerIcon,
659
+ description: ( localizeWithPath(
660
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
661
+ 'gettingStarted.beginner.description',
662
+ "Get an overview of the most essential features"
663
+ )),
664
+ content: {
665
+ type: 'steps',
666
+ steps: [
667
+ {
668
+ id: 'extensions',
669
+ title: ( localizeWithPath(
670
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
671
+ 'gettingStarted.extensions.title',
672
+ "Code with extensions"
673
+ )),
674
+ description: ( localizeWithPath(
675
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
676
+ 'gettingStarted.extensions.description.interpolated',
677
+ "Extensions are VS Code's power-ups. They range from handy productivity hacks, expanding out-of-the-box features, to adding completely new capabilities.\n{0}",
678
+ Button(( localizeWithPath(
679
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
680
+ 'browseRecommended',
681
+ "Browse Recommended Extensions"
682
+ )), 'command:workbench.extensions.action.showRecommendedExtensions')
683
+ )),
684
+ when: 'workspacePlatform != \'webworker\'',
685
+ media: {
686
+ type: 'svg', altText: 'VS Code extension marketplace with featured language extensions', path: 'extensions.svg'
687
+ },
688
+ },
689
+ {
690
+ id: 'terminal',
691
+ title: ( localizeWithPath(
692
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
693
+ 'gettingStarted.terminal.title',
694
+ "Built-in terminal"
695
+ )),
696
+ description: ( localizeWithPath(
697
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
698
+ 'gettingStarted.terminal.description.interpolated',
699
+ "Quickly run shell commands and monitor build output, right next to your code.\n{0}",
700
+ Button(( localizeWithPath(
701
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
702
+ 'showTerminal',
703
+ "Open Terminal"
704
+ )), 'command:workbench.action.terminal.toggleTerminal')
705
+ )),
706
+ when: 'workspacePlatform != \'webworker\' && remoteName != codespaces && !terminalIsOpen',
707
+ media: {
708
+ type: 'svg', altText: 'Integrated terminal running a few npm commands', path: 'terminal.svg'
709
+ },
710
+ },
711
+ {
712
+ id: 'debugging',
713
+ title: ( localizeWithPath(
714
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
715
+ 'gettingStarted.debug.title',
716
+ "Watch your code in action"
717
+ )),
718
+ description: ( localizeWithPath(
719
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
720
+ 'gettingStarted.debug.description.interpolated',
721
+ "Accelerate your edit, build, test, and debug loop by setting up a launch configuration.\n{0}",
722
+ Button(( localizeWithPath(
723
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
724
+ 'runProject',
725
+ "Run your Project"
726
+ )), 'command:workbench.action.debug.selectandstart')
727
+ )),
728
+ when: 'workspacePlatform != \'webworker\' && workspaceFolderCount != 0',
729
+ media: {
730
+ type: 'svg', altText: 'Run and debug view.', path: 'debug.svg',
731
+ },
732
+ },
733
+ {
734
+ id: 'scmClone',
735
+ title: ( localizeWithPath(
736
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
737
+ 'gettingStarted.scm.title',
738
+ "Track your code with Git"
739
+ )),
740
+ description: ( localizeWithPath(
741
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
742
+ 'gettingStarted.scmClone.description.interpolated',
743
+ "Set up the built-in version control for your project to track your changes and collaborate with others.\n{0}",
744
+ Button(( localizeWithPath(
745
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
746
+ 'cloneRepo',
747
+ "Clone Repository"
748
+ )), 'command:git.clone')
749
+ )),
750
+ when: 'config.git.enabled && !git.missing && workspaceFolderCount == 0',
751
+ media: {
752
+ type: 'svg', altText: 'Source Control view.', path: 'git.svg',
753
+ },
754
+ },
755
+ {
756
+ id: 'scmSetup',
757
+ title: ( localizeWithPath(
758
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
759
+ 'gettingStarted.scm.title',
760
+ "Track your code with Git"
761
+ )),
762
+ description: ( localizeWithPath(
763
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
764
+ 'gettingStarted.scmSetup.description.interpolated',
765
+ "Set up the built-in version control for your project to track your changes and collaborate with others.\n{0}",
766
+ Button(( localizeWithPath(
767
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
768
+ 'initRepo',
769
+ "Initialize Git Repository"
770
+ )), 'command:git.init')
771
+ )),
772
+ when: 'config.git.enabled && !git.missing && workspaceFolderCount != 0 && gitOpenRepositoryCount == 0',
773
+ media: {
774
+ type: 'svg', altText: 'Source Control view.', path: 'git.svg',
775
+ },
776
+ },
777
+ {
778
+ id: 'scm',
779
+ title: ( localizeWithPath(
780
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
781
+ 'gettingStarted.scm.title',
782
+ "Track your code with Git"
783
+ )),
784
+ description: ( localizeWithPath(
785
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
786
+ 'gettingStarted.scm.description.interpolated',
787
+ "No more looking up Git commands! Git and GitHub workflows are seamlessly integrated.\n{0}",
788
+ Button(( localizeWithPath(
789
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
790
+ 'openSCM',
791
+ "Open Source Control"
792
+ )), 'command:workbench.view.scm')
793
+ )),
794
+ when: 'config.git.enabled && !git.missing && workspaceFolderCount != 0 && gitOpenRepositoryCount != 0 && activeViewlet != \'workbench.view.scm\'',
795
+ media: {
796
+ type: 'svg', altText: 'Source Control view.', path: 'git.svg',
797
+ },
798
+ },
799
+ {
800
+ id: 'installGit',
801
+ title: ( localizeWithPath(
802
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
803
+ 'gettingStarted.installGit.title',
804
+ "Install Git"
805
+ )),
806
+ description: ( localizeWithPath(
807
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
808
+ { key: 'gettingStarted.installGit.description.interpolated', comment: ['The placeholders are command link items should not be translated'] },
809
+ "Install Git to track changes in your projects.\n{0}\n{1}Reload window{2} after installation to complete Git setup.",
810
+ Button(( localizeWithPath(
811
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
812
+ 'installGit',
813
+ "Install Git"
814
+ )), 'https://aka.ms/vscode-install-git'),
815
+ '[',
816
+ '](command:workbench.action.reloadWindow)'
817
+ )),
818
+ when: 'git.missing',
819
+ media: {
820
+ type: 'svg', altText: 'Install Git.', path: 'git.svg',
821
+ },
822
+ completionEvents: [
823
+ 'onContext:git.state == initialized'
824
+ ]
825
+ },
826
+ {
827
+ id: 'tasks',
828
+ title: ( localizeWithPath(
829
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
830
+ 'gettingStarted.tasks.title',
831
+ "Automate your project tasks"
832
+ )),
833
+ when: 'workspaceFolderCount != 0 && workspacePlatform != \'webworker\'',
834
+ description: ( localizeWithPath(
835
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
836
+ 'gettingStarted.tasks.description.interpolated',
837
+ "Create tasks for your common workflows and enjoy the integrated experience of running scripts and automatically checking results.\n{0}",
838
+ Button(( localizeWithPath(
839
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
840
+ 'runTasks',
841
+ "Run Auto-detected Tasks"
842
+ )), 'command:workbench.action.tasks.runTask')
843
+ )),
844
+ media: {
845
+ type: 'svg', altText: 'Task runner.', path: 'runTask.svg',
846
+ },
847
+ },
848
+ {
849
+ id: 'shortcuts',
850
+ title: ( localizeWithPath(
851
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
852
+ 'gettingStarted.shortcuts.title',
853
+ "Customize your shortcuts"
854
+ )),
855
+ description: ( localizeWithPath(
856
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
857
+ 'gettingStarted.shortcuts.description.interpolated',
858
+ "Once you have discovered your favorite commands, create custom keyboard shortcuts for instant access.\n{0}",
859
+ Button(( localizeWithPath(
860
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
861
+ 'keyboardShortcuts',
862
+ "Keyboard Shortcuts"
863
+ )), 'command:toSide:workbench.action.openGlobalKeybindings')
864
+ )),
865
+ media: {
866
+ type: 'svg', altText: 'Interactive shortcuts.', path: 'shortcuts.svg',
867
+ }
868
+ },
869
+ {
870
+ id: 'workspaceTrust',
871
+ title: ( localizeWithPath(
872
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
873
+ 'gettingStarted.workspaceTrust.title',
874
+ "Safely browse and edit code"
875
+ )),
876
+ description: ( localizeWithPath(
877
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
878
+ 'gettingStarted.workspaceTrust.description.interpolated',
879
+ "{0} lets you decide whether your project folders should **allow or restrict** automatic code execution __(required for extensions, debugging, etc)__.\nOpening a file/folder will prompt to grant trust. You can always {1} later.",
880
+ Button(( localizeWithPath(
881
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
882
+ 'workspaceTrust',
883
+ "Workspace Trust"
884
+ )), 'https://github.com/microsoft/vscode-docs/blob/workspaceTrust/docs/editor/workspace-trust.md'),
885
+ Button(( localizeWithPath(
886
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
887
+ 'enableTrust',
888
+ "enable trust"
889
+ )), 'command:toSide:workbench.action.manageTrustedDomain')
890
+ )),
891
+ when: 'workspacePlatform != \'webworker\' && !isWorkspaceTrusted && workspaceFolderCount == 0',
892
+ media: {
893
+ type: 'svg', altText: 'Workspace Trust editor in Restricted mode and a primary button for switching to Trusted mode.', path: 'workspaceTrust.svg'
894
+ },
895
+ },
896
+ ]
897
+ }
898
+ },
899
+ {
900
+ id: 'notebooks',
901
+ title: ( localizeWithPath(
902
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
903
+ 'gettingStarted.notebook.title',
904
+ "Customize Notebooks"
905
+ )),
906
+ description: '',
907
+ icon: setupIcon,
908
+ isFeatured: false,
909
+ when: `config.${NotebookSetting.openGettingStarted} && userHasOpenedNotebook`,
910
+ content: {
911
+ type: 'steps',
912
+ steps: [
913
+ {
914
+ completionEvents: ['onCommand:notebook.setProfile'],
915
+ id: 'notebookProfile',
916
+ title: ( localizeWithPath(
917
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
918
+ 'gettingStarted.notebookProfile.title',
919
+ "Select the layout for your notebooks"
920
+ )),
921
+ description: ( localizeWithPath(
922
+ 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent',
923
+ 'gettingStarted.notebookProfile.description',
924
+ "Get notebooks to feel just the way you prefer"
925
+ )),
926
+ when: 'userHasOpenedNotebook',
927
+ media: {
928
+ type: 'markdown', path: 'notebookProfile'
929
+ }
930
+ },
931
+ ]
932
+ }
933
+ }
934
+ ];
935
+
936
+ export { startEntries, walkthroughs };