-
-
Notifications
You must be signed in to change notification settings - Fork 280
/
package.json
1821 lines (1821 loc) · 64.7 KB
/
package.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
{
"__metadata": {
"id": "0ea05e3f-5a38-419d-8305-f6c3f6d409d2",
"publisherDisplayName": "Ionide",
"publisherId": "6841d314-11e9-4ec1-a088-08558c6effee"
},
"activationEvents": [
"onCommand:workbench.action.tasks.runTask",
"onDebugInitialConfigurations:coreclr",
"onDebugDynamicConfigurations:coreclr",
"onDebugResolve:coreclr",
"workspaceContains:**/*.fs",
"workspaceContains:**/*.fsproj",
"workspaceContains:**/*.fsx",
"workspaceContains:**/*.sln"
],
"badges": [
{
"description": "Open Collective Backers",
"href": "https://opencollective.com/ionide",
"url": "https://img.shields.io/opencollective/backers/ionide.svg?color=blue\u0026style=for-the-badge"
},
{
"description": "Open Collective Sponsors",
"href": "https://opencollective.com/ionide",
"url": "https://img.shields.io/opencollective/sponsors/ionide.svg?color=Blue\u0026style=for-the-badge"
}
],
"bugs": {
"url": "https://github.com/ionide/ionide-vscode-fsharp/issues"
},
"categories": [
"Linters",
"Programming Languages",
"Snippets"
],
"contributes": {
"breakpoints": [
{
"language": "fsharp"
}
],
"configurationDefaults": {
"explorer.fileNesting.patterns": {
"*.fs": "${basename}.fsi, ${basename}.fs.js, ${basename}.fs.js.map",
"*.fsl": "${basename}.fsi, ${basename}.fs",
"*.fsy": "${basename}.fsi, ${basename}.fs"
},
"files.associations": {
".fantomasignore": "ignore"
}
},
"colors": [
{
"defaults": {
"dark": "#696969",
"highContrast": "#A2E2A2",
"light": "#919191"
},
"description": "Foreground color for F# LineLenses",
"id": "fsharp.linelens"
},
{
"defaults": {
"dark": "#696969",
"highContrast": "#A2E2A2",
"light": "#919191"
},
"description": "Foreground color for F# Pipeline Hints",
"id": "fsharp.pipelineHints"
},
{
"defaults": {
"dark": "#FFCC00",
"highContrast": "#FFFF00",
"light": "#FFCC00"
},
"description": "Text colors for warnings shown in the status bar",
"id": "fsharp.statusBarWarnings"
}
],
"commands": [
{
"command": "fsi.Start",
"title": "FSI: Start"
},
{
"command": "fsi.SendLine",
"title": "FSI: Send Line"
},
{
"command": "fsi.SendSelection",
"title": "FSI: Send Selection"
},
{
"command": "fsi.SendLastSelection",
"title": "FSI: Send Last Selection"
},
{
"command": "fsi.SendFile",
"icon": {
"dark": "./images/send-dark.svg",
"light": "./images/send-light.svg"
},
"title": "FSI: Send File"
},
{
"command": "fsi.SendProjectReferences",
"title": "FSI: Send References from project"
},
{
"command": "fsi.GenerateProjectReferences",
"title": "FSI: Generate script file with references from project"
},
{
"command": "fsi.OpenWatcher",
"title": "FSI: Open Watcher"
},
{
"command": "fsharp.scriptrunner.run",
"icon": {
"dark": "./images/run-dark.svg",
"light": "./images/run-light.svg"
},
"title": "F#: Run script"
},
{
"command": "fsharp.NewProject",
"icon": {
"dark": "./images/add-dark.svg",
"light": "./images/add-light.svg"
},
"title": "F#: New Project"
},
{
"command": "fsharp.AddFileToProject",
"title": "F#: Add Current File To Project"
},
{
"command": "fsharp.getHelp",
"title": "F#: Get Help"
},
{
"command": "fsharp.generateDoc",
"title": "F#: Generate Documentation"
},
{
"command": "fsharp.clearCache",
"title": "F#: Clear Project Cache"
},
{
"command": "fsharp.changeWorkspace",
"title": "F#: Change Workspace or Solution"
},
{
"command": "fsharp.fsdn",
"title": "F#: Search by signatures on FSDN"
},
{
"command": "MSBuild.buildCurrent",
"title": "MSBuild: Build current project"
},
{
"command": "MSBuild.buildSelected",
"title": "MSBuild: Build project"
},
{
"command": "MSBuild.rebuildCurrent",
"title": "MSBuild: Rebuild current project"
},
{
"command": "MSBuild.rebuildSelected",
"title": "MSBuild: Rebuild project"
},
{
"command": "MSBuild.cleanCurrent",
"title": "MSBuild: Clean current project"
},
{
"command": "MSBuild.cleanSelected",
"title": "MSBuild: Clean project"
},
{
"command": "MSBuild.restoreSelected",
"title": "MSBuild: Restore project"
},
{
"command": "MSBuild.buildCurrentSolution",
"title": "MSBuild: Build current solution"
},
{
"command": "MSBuild.rebuildCurrentSolution",
"title": "MSBuild: Rebuild current solution"
},
{
"command": "MSBuild.cleanCurrentSolution",
"title": "MSBuild: Clean current solution"
},
{
"command": "fsharp.explorer.moveUp",
"icon": {
"dark": "./images/up-mono-dark.svg",
"light": "./images/up-mono-light.svg"
},
"title": "Move file up"
},
{
"command": "fsharp.explorer.moveDown",
"icon": {
"dark": "./images/down-mono-dark.svg",
"light": "./images/down-mono-light.svg"
},
"title": "Move file down"
},
{
"command": "fsharp.explorer.renameFile",
"title": "Rename file"
},
{
"command": "fsharp.explorer.removeFile",
"title": "Remove file"
},
{
"command": "fsharp.explorer.addAbove",
"title": "Add file above"
},
{
"command": "fsharp.explorer.addBelow",
"title": "Add file below"
},
{
"command": "fsharp.explorer.addFile",
"title": "Add file"
},
{
"command": "fsharp.explorer.addExistingFile",
"title": "Add existing file"
},
{
"command": "fsharp.explorer.showProjectLoadFailedInfo",
"icon": {
"dark": "./images/icon-status-dark.svg",
"light": "./images/icon-status-light.svg"
},
"title": "Show info about failed project loading"
},
{
"command": "fsharp.explorer.showProjectStatus",
"icon": {
"dark": "./images/icon-status-dark.svg",
"light": "./images/icon-status-light.svg"
},
"title": "Show project status"
},
{
"command": "fsharp.explorer.addProjecRef",
"title": "Add project reference"
},
{
"command": "fsharp.explorer.removeProjecRef",
"title": "Remove project reference"
},
{
"command": "fsharp.explorer.openProjectFile",
"icon": {
"dark": "images/open-file-mono-dark.svg",
"light": "images/open-file-mono-light.svg"
},
"title": "Open project file"
},
{
"command": "fsharp.explorer.refresh",
"title": "Refresh Explorer"
},
{
"command": "fsharp.explorer.clearCache",
"title": "Clear project cache"
},
{
"category": "F#",
"command": "fsharp.diagnostics.getInfos",
"title": "Get info for diagnostics"
},
{
"command": "fsharp.explorer.msbuild.build",
"title": "Build"
},
{
"command": "fsharp.explorer.msbuild.rebuild",
"title": "Rebuild"
},
{
"command": "fsharp.explorer.msbuild.clean",
"title": "Clean"
},
{
"command": "fsharp.explorer.msbuild.restore",
"title": "Restore"
},
{
"command": "fsharp.explorer.solution.build",
"title": "Build"
},
{
"command": "fsharp.explorer.solution.rebuild",
"title": "Rebuild"
},
{
"command": "fsharp.explorer.solution.clean",
"title": "Clean"
},
{
"command": "fsharp.explorer.solution.restore",
"title": "Restore"
},
{
"command": "fsharp.explorer.project.run",
"icon": {
"dark": "./images/run-mono-dark.svg",
"light": "./images/run-mono-light.svg"
},
"title": "Run"
},
{
"command": "fsharp.explorer.project.debug",
"icon": {
"dark": "./images/debug-mono-dark.svg",
"light": "./images/debug-mono-light.svg"
},
"title": "Debug"
},
{
"command": "fsharp.explorer.project.setDefault",
"title": "Set as startup project"
},
{
"command": "fsharp.explorer.project.sendFSI",
"title": "Send references for FSI"
},
{
"command": "fsharp.explorer.project.generateFSI",
"title": "Generate references for FSI"
},
{
"command": "fsharp.runDefaultProject",
"icon": "./images/run.png",
"title": "F#: Run Default Project"
},
{
"command": "fsharp.debugDefaultProject",
"icon": "./images/debug.png",
"title": "F#: Debug Default Project"
},
{
"command": "fsharp.chooseDefaultProject",
"title": "F#: Choose Default Project"
},
{
"command": "fsharp.explorer.solution.addProject",
"title": "Add project"
},
{
"category": "F#",
"command": "fsharp.htmlConverter.convert",
"description": "Converts your selection to Elmish by assuming that your selection is HTML code",
"title": "Convert html to Elmish"
},
{
"category": "F#",
"command": "fsharp.revealInSolutionExplorer",
"icon": {
"dark": "./images/auto-reveal-dark.svg",
"light": "./images/auto-reveal-light.svg"
},
"title": "Reveal in solution explorer"
},
{
"category": "F#",
"command": "fsharp.openInfoPanel",
"description": "Opens Info Panel displaying documentation",
"title": "Open Info Panel"
},
{
"category": "F#",
"command": "fsharp.updateInfoPanel",
"description": "Updates Info Panel with documentation of current symbol",
"title": "Update Info Panel"
},
{
"command": "fsharp.showDocumentation",
"title": "Show Documentation for given symbol"
},
{
"category": "F#",
"command": "fsharp.openInfoPanel.lock",
"icon": {
"dark": "./images/lock-solid.svg",
"light": "./images/lock-solid-light.svg"
},
"title": "Lock Info Panel"
},
{
"category": "F#",
"command": "fsharp.openInfoPanel.unlock",
"icon": {
"dark": "./images/lock-open-solid.svg",
"light": "./images/lock-open-solid-light.svg"
},
"title": "Unlock Info Panel"
},
{
"category": "F#",
"command": "fsharp.restartLanguageService",
"title": "Restart Language Service"
}
],
"configuration": {
"properties": {
"FSharp.abstractClassStubGeneration": {
"default": true,
"description": "Enables a codefix that generates missing members for an abstract class when in an type inheriting from that abstract class.",
"type": "boolean"
},
"FSharp.abstractClassStubGenerationMethodBody": {
"default": "failwith \u0022Not Implemented\u0022",
"description": "The expression to fill in the right-hand side of inherited members when generating missing members for an abstract base class",
"type": "string"
},
"FSharp.abstractClassStubGenerationObjectIdentifier": {
"default": "this",
"description": "The name of the \u0027self\u0027 identifier in an inherited member. For example, \u0060this\u0060 in the expression \u0060this.Member(x: int) = ()\u0060",
"type": "string"
},
"FSharp.addFsiWatcher": {
"default": false,
"description": "Enables a panel for FSI that shows the value of all existing bindings in the FSI session",
"type": "boolean"
},
"FSharp.analyzersPath": {
"default": [
"packages/Analyzers",
"analyzers"
],
"description": "Directories in the array are used as a source of custom analyzers. Requires restart.",
"scope": "machine-overridable",
"type": "array"
},
"FSharp.excludeAnalyzers": {
"default": [],
"description": "The names of custom analyzers that should not be executed.",
"scope": "machine-overridable",
"type": "array"
},
"FSharp.includeAnalyzers": {
"default": [],
"description": "The names of custom analyzers that should exclusively be executed, others should be ignored.",
"scope": "machine-overridable",
"type": "array"
},
"FSharp.autoRevealInExplorer": {
"default": "sameAsFileExplorer",
"description": "Controls whether the solution explorer should automatically reveal and select files when opening them. If \u0060sameAsFileExplorer\u0060 is set, then the value of the \u0060explorer.autoReveal\u0060 setting will be used instead.",
"enum": [
"sameAsFileExplorer",
"enabled",
"disabled"
],
"scope": "window",
"type": "string"
},
"FSharp.codeLenses.references.enabled": {
"description": "If enabled, code lenses for reference counts for methods and functions will be shown.",
"type": "boolean",
"default": true
},
"FSharp.codeLenses.signature.enabled": {
"description": "If enabled, code lenses for type signatures on methods and functions will be shown.",
"type": "boolean",
"default": true
},
"FSharp.disableFailedProjectNotifications": {
"default": false,
"description": "Disables popup notifications for failed project loading",
"type": "boolean"
},
"FSharp.dotnetRoot": {
"description": "Sets the root path for finding locating the dotnet CLI binary. Defaults to the \u0060dotnet\u0060 binary found on your system PATH.",
"type": "string"
},
"FSharp.enableAdaptiveLspServer": {
"default": true,
"description": "Enables Enable LSP Server based on FSharp.Data.Adaptive. This can improve stability. Requires restart.",
"markdownDeprecationMessage": "This setting has been deprecated because it is now the only behavior of the LSP Server.",
"type": "boolean"
},
"FSharp.enableAnalyzers": {
"default": false,
"description": "EXPERIMENTAL. Enables F# analyzers for custom code diagnostics. Requires restart.",
"type": "boolean"
},
"FSharp.enableMSBuildProjectGraph": {
"default": false,
"description": "EXPERIMENTAL. Enables support for loading workspaces with MsBuild\u0027s ProjectGraph. This can improve load times. Requires restart.",
"type": "boolean"
},
"FSharp.enableReferenceCodeLens": {
"default": true,
"description": "Enables additional code lenses showing number of references of a function or value. Requires background services to be enabled.",
"type": "boolean",
"deprecationMessage": "This setting is deprecated. Use FSharp.codeLenses.references.enabled instead.",
"markdownDeprecationMessage": "This setting is **deprecated**. Use \u0060#FSharp.codeLenses.references.enabled#\u0060 instead."
},
"FSharp.enableTouchBar": {
"default": true,
"description": "Enables TouchBar integration of build/run/debug buttons",
"type": "boolean"
},
"FSharp.enableTreeView": {
"default": true,
"description": "Enables the solution explorer view of the current workspace, which shows the workspace as MSBuild sees it",
"type": "boolean"
},
"FSharp.excludeProjectDirectories": {
"default": [
".git",
"paket-files",
".fable",
"packages",
"node_modules"
],
"description": "Directories in the array are excluded from project file search. Requires restart.",
"type": "array"
},
"FSharp.externalAutocomplete": {
"default": false,
"description": "Includes external (from unopened modules and namespaces) symbols in autocomplete",
"type": "boolean"
},
"FSharp.fullNameExternalAutocomplete": {
"default": false,
"description": "When selecting an external symbols in autocomplete, insert the full name to the editor rather than open its module/namespace. Also allow filtering suggestions by typing its full name. \n\n Requires \u0060FSharp.externalAutocomplete\u0060 enabled.",
"type": "boolean"
},
"FSharp.fcs.transparentCompiler.enabled": {
"default": false,
"markdownDescription": "EXPERIMENTAL: Enables the FSharp Compiler Service\u0027s [transparent compiler](https://github.com/dotnet/fsharp/pull/15179) feature. Requires restart.",
"type": "boolean"
},
"FSharp.fsac.attachDebugger": {
"default": false,
"markdownDescription": "Appends the \u0060--attachdebugger\u0060 argument to fsac, this will allow you to attach a debugger.",
"type": "boolean"
},
"FSharp.fsac.cachedTypeCheckCount": {
"default": 200,
"description": "The MemoryCacheOptions.SizeLimit for caching typechecks.",
"type": "integer"
},
"FSharp.fsac.conserveMemory": {
"default": false,
"description": "Configures FsAutoComplete with settings intended to reduce memory consumption. Requires restart.",
"type": "boolean",
"deprecationMessage": "This setting is deprecated. Use FSharp.fsac.gc.conserveMemory instead."
},
"FSharp.fsac.dotnetArgs": {
"default": [],
"description": "additional CLI arguments to be provided to the dotnet runner for FSAC",
"items": {
"type": "string"
},
"type": "array"
},
"FSharp.fsac.fsacArgs": {
"default": [],
"description": "additional CLI arguments to be provided to FSAC itself. Useful for flags that aren\u0027t exposed in the settings or CLI arguments that only exist in custom built versions of FSAC. Requires restart.",
"items": {
"type": "string"
},
"type": "array"
},
"FSharp.fsac.gc.conserveMemory": {
"markdownDescription": "Configures the garbage collector to [conserve memory](https://learn.microsoft.com/en-us/dotnet/core/runtime-config/garbage-collector#conserve-memory) at the expense of more frequent garbage collections and possibly longer pause times. Acceptable values are 0-9. Any non-zero value will allow the [Large Object Heap](https://learn.microsoft.com/en-us/dotnet/standard/garbage-collection/large-object-heap) to be compacted automatically if it has too much fragmentation. Requires restart.",
"type": "integer",
"minimum": 0,
"maximum": 9
},
"FSharp.fsac.gc.heapCount": {
"markdownDescription": "Limits the number of [heaps](https://learn.microsoft.com/en-us/dotnet/standard/garbage-collection/fundamentals#the-managed-heap) created by the garbage collector. Applies to server garbage collection only. See [Middle Ground between Server and Workstation GC](https://devblogs.microsoft.com/dotnet/middle-ground-between-server-and-workstation-gc/) for more details. This can allow FSAC to still benefit from Server garbage collection while still limiting the number of heaps. [Only available on .NET 7 or higher](https://github.com/ionide/ionide-vscode-fsharp/issues/1899#issuecomment-1649009462). Requires restart. If FSAC is run on .NET 8 runtimes, this will be set to 2 by default to prevent inflated memory use. On .NET 9 with DATAS enabled, this will not be set. ",
"type": "integer",
"required": [
"FSharp.fsac.gc.server"
]
},
"Fsharp.fsac.gc.noAffinitize": {
"type": "boolean",
"markdownDescription": "Specifies whether to [affinitize](https://learn.microsoft.com/en-us/dotnet/core/runtime-config/garbage-collector#affinitize) garbage collection threads with processors. To affinitize a GC thread means that it can only run on its specific CPU.. Applies to server garbage collection only. See [GCNoAffinitize](https://learn.microsoft.com/en-us/dotnet/framework/configure-apps/file-schema/runtime/gcnoaffinitize-element#remarks) for more details. [Only available on .NET 7 or higher](https://github.com/ionide/ionide-vscode-fsharp/issues/1899#issuecomment-1649009462). Requires restart. If FSAC is run on .NET 8 runtimes, this will be set by default. On .NET 9 with DATAS enabled, this will not be set.",
"required": [
"FSharp.fsac.gc.server"
]
},
"FSharp.fsac.gc.server": {
"default": true,
"markdownDescription": "Configures whether the application uses workstation garbage collection or server garbage collection. See [Workstation vs Server Garbage Collection](https://devblogs.microsoft.com/premier-developer/understanding-different-gc-modes-with-concurrency-visualizer/#workstation-gc-vs-server-gc) for more details. Workstation will use less memory but Server will have more throughput. Requires restart.",
"type": "boolean"
},
"FSharp.fsac.gc.useDatas": {
"markdownDescription": "Configures whether the application uses the DATAS(dynamic adaptation to application sizes) server garbage collection mode. See [DATAS](https://learn.microsoft.com/dotnet/core/runtime-config/garbage-collector#dynamic-adaptation-to-application-sizes-datas) for more details. Requires restart. When FSAC is run on .NET 8 runtimes, this will be set to false by default. On .NET 9 runtimes, this will be set to true by default.",
"type": "boolean",
"required": [
"FSharp.fsac.gc.server"
]
},
"FSharp.fsac.netCoreDllPath": {
"default": "",
"description": "The path to the \u0027fsautocomplete.dll\u0027, a directory containing TFM-specific versions of fsautocomplete.dll, or a directory containing fsautocomplete.dll. Useful for debugging a self-built FSAC. If a DLL is specified, uses it directly. If a directory is specified and it contains TFM-specific folders (net6.0, net7.0, etc) then that directory will be probed for the best TFM to use for the current runtime. This is useful when working with a local copy of FSAC, you can point directly to the bin/Debug or bin/Release folder and it\u0027ll Just Work. Finally, if a directory is specified and there are no TFM paths, then fsautocomplete.dll from that directory is used. Requires restart.",
"scope": "machine-overridable",
"type": "string"
},
"FSharp.fsac.sourceTextImplementation": {
"default": "RoslynSourceText",
"description": "Enables the use of a new source text implementation. This may have better memory characteristics. Requires restart.",
"markdownDeprecationMessage": "This setting is deprecated because the RoslynSourceText SourceText implementation has been adopted as the only implementation in the LSP Server.",
"enum": [
"NamedText",
"RoslynSourceText"
]
},
"FSharp.fsac.parallelReferenceResolution": {
"default": false,
"description": "EXPERIMENTAL: Speed up analyzing of projects in parallel. Requires restart.",
"type": "boolean"
},
"FSharp.fsac.silencedLogs": {
"default": [],
"description": "An array of log categories for FSAC to filter out. These can be found by viewing your log output and noting the text in between the brackets in the log line. For example, in the log line \u0060[16:07:14.626 INF] [Compiler] done compiling foo.fsx\u0060, the category is \u0027Compiler\u0027. ",
"items": {
"type": "string"
},
"type": "array"
},
"FSharp.fsiExtraParameters": {
"markdownDescription": "An array of additional command line parameters to pass to FSI when it is started. See [the Microsoft documentation](https://docs.microsoft.com/en-us/dotnet/fsharp/language-reference/fsharp-interactive-options) for an exhaustive list.",
"type": "array",
"markdownDeprecationMessage": "This setting can lead to errors when providing both FSI-CLI-only and script-typechecking-related parameters. Please use \u0060#FSharp.FSIExtraInteractiveParameters#\u0060 for FSI-CLI-specific parameters, and \u0060#FSharp.FSIExtraSharedParameters#\u0060 for typechecking-related parameters."
},
"FSharp.FSIExtraSharedParameters": {
"markdownDescription": "An array of additional command line parameters to pass to the compiler to use when checking FSI scripts. See [the Microsoft documentation](https://docs.microsoft.com/en-us/dotnet/fsharp/language-reference/fsharp-interactive-options) for an exhaustive list. If both this and \u0060#FSharp.fsiExtraParameters#\u0060 are used, only \u0060#FSharp.fsiExtraParameters#\u0060 will be used.",
"type": "array"
},
"FSharp.FSIExtraInteractiveParameters": {
"markdownDescription": "An array of additional command line parameters to pass to FSI when it is launched. See [the Microsoft documentation](https://docs.microsoft.com/en-us/dotnet/fsharp/language-reference/fsharp-interactive-options) for an exhaustive list. If both this and \u0060#FSharp.fsiExtraParameters#\u0060 are used, both sets of arguments will be passed to the launched FSI.",
"type": "array"
},
"FSharp.fsiSdkFilePath": {
"default": "",
"description": "The path to the F# Interactive tool used by Ionide-FSharp (When using .NET SDK scripts)",
"scope": "machine-overridable",
"type": "string"
},
"FSharp.generateBinlog": {
"default": false,
"markdownDescription": "Enables generation of \u0060msbuild.binlog\u0060 files for project loading. It works only for fresh, non-cached project loading. Run \u0060F#: Clear Project Cache\u0060 and \u0060Developer: Reload Window\u0060 to force fresh loading of all projects. These files can be loaded and inspected using the [MSBuild Structured Logger](https://github.com/KirillOsenkov/MSBuildStructuredLog)",
"type": "boolean"
},
"FSharp.indentationSize": {
"default": 4,
"minimum": 1,
"description": "The number of spaces used for indentation when generating code, e.g. for interface stubs",
"type": "number"
},
"FSharp.infoPanelReplaceHover": {
"default": false,
"description": "Controls whether the info panel replaces tooltips",
"type": "boolean"
},
"FSharp.infoPanelShowOnStartup": {
"default": false,
"description": "Controls whether the info panel should be displayed at startup",
"type": "boolean"
},
"FSharp.infoPanelStartLocked": {
"default": false,
"description": "Controls whether the info panel should be locked at startup",
"type": "boolean"
},
"FSharp.infoPanelUpdate": {
"default": "onCursorMove",
"description": "Controls when the info panel is updated",
"enum": [
"onCursorMove",
"onHover",
"both",
"none"
],
"type": "string"
},
"FSharp.inlayHints.disableLongTooltip": {
"default": false,
"description": "Hides the explanatory tooltip that appears on InlayHints to describe the different configuration toggles.",
"type": "boolean"
},
"FSharp.inlayHints.enabled": {
"default": true,
"markdownDeprecationMessage": "This can be controlled by \u0060editor.inlayHints.enabled\u0060 instead.",
"description": "Controls if the inlay hints feature is enabled",
"type": "boolean"
},
"FSharp.inlayHints.parameterNames": {
"default": true,
"description": "Controls if parameter-name inlay hints will be displayed for functions and methods",
"type": "boolean"
},
"FSharp.inlayHints.typeAnnotations": {
"default": true,
"description": "Controls if type-annotation inlay hints will be displayed for bindings.",
"type": "boolean"
},
"FSharp.inlineValues.enabled": {
"default": false,
"description": "Enables rendering all kinds of hints inline with your code. Currently supports pipelineHints, which are like LineLenses that appear along each step of a chain of piped expressions",
"type": "boolean"
},
"FSharp.inlineValues.prefix": {
"default": " // ",
"description": "The prefix used when rendering inline values.",
"type": "string"
},
"FSharp.interfaceStubGeneration": {
"default": true,
"description": "Enables a codefix that generates missing interface members when inside of an interface implementation expression",
"type": "boolean"
},
"FSharp.interfaceStubGenerationMethodBody": {
"default": "failwith \u0022Not Implemented\u0022",
"description": "The expression to fill in the right-hand side of interface members when generating missing members for an interface implementation expression",
"type": "string"
},
"FSharp.interfaceStubGenerationObjectIdentifier": {
"default": "this",
"description": "The name of the \u0027self\u0027 identifier in an interface member. For example, \u0060this\u0060 in the expression \u0060this.Member(x: int) = ()\u0060",
"type": "string"
},
"FSharp.keywordsAutocomplete": {
"default": true,
"description": "Includes keywords in autocomplete",
"type": "boolean"
},
"FSharp.lineLens.enabled": {
"default": "replaceCodeLens",
"description": "Usage mode for LineLens. If \u0060never\u0060, LineLens will never be shown. If \u0060replaceCodeLens\u0060, LineLens will be placed in a decoration on top of the current line.",
"enum": [
"never",
"replaceCodeLens",
"always"
],
"type": "string"
},
"FSharp.lineLens.prefix": {
"default": " // ",
"description": "The prefix displayed before the signature in a LineLens",
"type": "string"
},
"FSharp.linter": {
"default": true,
"markdownDescription": "Enables integration with [FSharpLint](https://fsprojects.github.io/FSharpLint/) for additional (user-defined) warnings",
"type": "boolean"
},
"FSharp.msbuildAutoshow": {
"default": false,
"description": "Automatically shows the MSBuild output panel when MSBuild functionality is invoked",
"type": "boolean"
},
"FSharp.notifications.trace": {
"default": false,
"description": "Enables more verbose notifications using System.Diagnostics.Activity to view traces from FSharp.Compiler.Service.",
"type": "boolean"
},
"FSharp.notifications.traceNamespaces": {
"default": [
"BoundModel.TypeCheck",
"BackgroundCompiler."
],
"description": "The set of System.Diagnostics.Activity names to watch.",
"type": "array",
"items": {
"type": "string"
},
"required": [
"FSharp.notifications.trace"
]
},
"FSharp.openTelemetry.enabled": {
"default": false,
"markdownDescription": "Enables OpenTelemetry exporter. See [OpenTelemetry Protocol Exporter](https://opentelemetry.io/docs/reference/specification/protocol/exporter/) for environment variables to configure for the exporter. Requires Restart.",
"type": "boolean"
},
"FSharp.pipelineHints.enabled": {
"default": true,
"description": "Enables PipeLine hints, which are like LineLenses that appear along each step of a chain of piped expressions",
"type": "boolean"
},
"FSharp.pipelineHints.prefix": {
"default": " // ",
"description": "The prefix displayed before the signature",
"type": "string"
},
"FSharp.recordStubGeneration": {
"default": true,
"description": "Enables a codefix that will generate missing record fields when inside a record construction expression",
"type": "boolean"
},
"FSharp.recordStubGenerationBody": {
"default": "failwith \u0022Not Implemented\u0022",
"description": "The expression to fill in the right-hand side of record fields when generating missing fields for a record construction expression",
"type": "string"
},
"FSharp.resolveNamespaces": {
"default": true,
"description": "Enables a codefix that will suggest namespaces or module to open when a name is not recognized",
"type": "boolean"
},
"FSharp.saveOnSendLastSelection": {
"default": false,
"description": "If enabled, the current file will be saved before sending the last selection to FSI for evaluation",
"type": "boolean"
},
"FSharp.showExplorerOnStartup": {
"default": true,
"description": "Automatically shows solution explorer on plugin startup",
"type": "boolean"
},
"FSharp.showProjectExplorerIn": {
"default": "fsharp",
"description": "Set the activity (left bar) where the project explorer view will be displayed. If \u0060explorer\u0060, then the project explorer will be a collapsible tab in the main explorer view, a sibling to the file system explorer. If \u0060fsharp\u0060, a new activity with the F# logo will be added and the project explorer will be rendered in this activity.Requires restart.",
"enum": [
"explorer",
"fsharp"
],
"scope": "application",
"type": "string"
},
"FSharp.simplifyNameAnalyzer": {
"default": true,
"description": "Enables detection of cases when names of functions and values can be simplified",
"type": "boolean"
},
"FSharp.simplifyNameAnalyzerExclusions": {
"default": [
".*\\.g\\.fs",
".*\\.cg\\.fs"
],
"description": "A set of regex patterns to exclude from the simplify name analyzer",
"type": "array",
"items": {
"type": "string"
},
"required": [
"FSharp.simplifyNameAnalyzer"
]
},
"FSharp.unnecessaryParenthesesAnalyzer": {
"default": false,
"description": "Enables detection of unnecessary parentheses",
"type": "boolean"
},
"FSharp.smartIndent": {
"default": false,
"description": "Enables smart indent feature",
"type": "boolean"
},
"FSharp.suggestGitignore": {
"default": true,
"description": "Allow Ionide to prompt whenever internal data files aren\u0027t included in your project\u0027s .gitignore",
"type": "boolean"
},
"FSharp.suggestSdkScripts": {
"default": true,
"description": "Allow Ionide to prompt to use SdkScripts",
"type": "boolean"
},
"FSharp.TestExplorer.AutoDiscoverTestsOnLoad": {
"default": true,
"description": "Decides if the test explorer will automatically try discover tests when the workspace loads. You can still manually refresh the explorer to discover tests at any time",
"type": "boolean"
},
"FSharp.trace.server": {
"default": "off",
"description": "Trace server messages at the LSP protocol level for diagnostics.",
"enum": [
"off",
"messages",
"verbose"
],
"scope": "window",
"type": "string"
},
"FSharp.unionCaseStubGeneration": {
"default": true,
"description": "Enables a codefix that generates missing union cases when in a match expression",
"type": "boolean"
},
"FSharp.unionCaseStubGenerationBody": {
"default": "failwith \u0022Not Implemented\u0022",
"description": "The expression to fill in the right-hand side of match cases when generating missing cases for a match on a discriminated union",
"type": "string"
},
"FSharp.unusedDeclarationsAnalyzer": {
"default": true,
"description": "Enables detection of unused declarations",
"type": "boolean"
},
"FSharp.unusedDeclarationsAnalyzerExclusions": {
"default": [
".*\\.g\\.fs",
".*\\.cg\\.fs"
],
"description": "A set of regex patterns to exclude from the unused declarations analyzer",
"type": "array",
"items": {
"type": "string"
},
"required": [
"FSharp.unusedDeclarationsAnalyzer"
]
},
"FSharp.addPrivateAccessModifier": {
"default": false,
"description": "Enables a codefix that adds a private access modifier",
"type": "boolean"
},
"FSharp.unusedOpensAnalyzer": {
"default": true,
"description": "Enables detection of unused opens",
"type": "boolean"
},
"FSharp.unusedOpensAnalyzerExclusions": {
"default": [
".*\\.g\\.fs",
".*\\.cg\\.fs"
],
"description": "A set of regex patterns to exclude from the unused opens analyzer",
"type": "array",
"items": {
"type": "string"
},
"required": [
"FSharp.unusedOpensAnalyzer"
]
},
"FSharp.verboseLogging": {
"default": false,
"description": "Logs additional information to F# output channel. This is equivalent to passing the \u0060--verbose\u0060 flag to FSAC. Requires restart.",
"type": "boolean"
},
"FSharp.workspaceModePeekDeepLevel": {
"default": 4,
"description": "The deep level of directory hierarchy when searching for sln/projects",
"type": "integer"
},
"FSharp.workspacePath": {
"description": "Path to the directory or solution file that should be loaded as a workspace. If set, no workspace probing or discovery is done by Ionide at all.",
"scope": "window",
"type": "string"
}
},
"title": "F#",
"type": "object"
},
"grammars": [
{
"language": "fsharp",
"path": "./syntaxes/fsharp.json",
"scopeName": "source.fsharp"
},
{
"language": "fsharp",
"path": "./syntaxes/fsharp.fsx.json",
"scopeName": "source.fsharp.fsx"
},
{
"language": "fsharp",
"path": "./syntaxes/fsharp.fsi.json",
"scopeName": "source.fsharp.fsi"
},
{
"language": "fsharp",
"path": "./syntaxes/fsharp.fsl.json",
"scopeName": "source.fsharp.fsl"
}
],
"jsonValidation": [
{
"fileMatch": "fableconfig.json",
"url": "./schemas/fableconfig.json"
},
{
"fileMatch": "wsconfig.json",
"url": "./schemas/wsconfig.json"
},
{