You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: update README and CHANGELOG for recent SDK features (#44)
- Add VS Project and Item Templates section with auto-discovery docs
- Document cross-project template references via VsixTemplateReference
- Add NuGet Central Package Management (CPM) compatibility section
- Update Auto-Inclusion section with imagemanifest and ContentManifest.json
- Add new properties to Configuration table (template-related)
- Update Disabling Auto-Inclusion with new disable options
- Add Unreleased section to CHANGELOG with all recent changes
Copy file name to clipboardExpand all lines: README.md
+88Lines changed: 88 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -296,6 +296,8 @@ The SDK automatically includes common VSIX files:
296
296
- 📄 `*.vsct` files as `VSCTCompile` items
297
297
- 📄 `VSPackage.resx` files with proper metadata
298
298
- 📄 `source.extension.vsixmanifest` as an `AdditionalFile` for source generators
299
+
- 📄 `*.imagemanifest` files as `ImageManifest` items (for VS Image Service)
300
+
- 📄 `ContentManifest.json` files as `Content` items (for VS content registration)
299
301
300
302
### 🐛 F5 Debugging
301
303
@@ -307,6 +309,59 @@ Press F5 to launch the Visual Studio Experimental Instance with your extension l
307
309
308
310
Extensions are only deployed to the Experimental Instance when building inside Visual Studio. This prevents errors when building from the command line.
309
311
312
+
### 📦 VS Project and Item Templates
313
+
314
+
The SDK provides comprehensive support for including Visual Studio project and item templates in your VSIX package.
315
+
316
+
#### Auto-Discovery
317
+
318
+
Place templates in `ProjectTemplates/` or `ItemTemplates/` folders and they'll be automatically discovered and packaged:
319
+
320
+
```
321
+
MyExtension/
322
+
├── ProjectTemplates/
323
+
│ └── MyProjectTemplate/
324
+
│ ├── MyProject.csproj
325
+
│ ├── Class1.cs
326
+
│ └── MyTemplate.vstemplate
327
+
├── ItemTemplates/
328
+
│ └── MyItemTemplate/
329
+
│ ├── MyItem.cs
330
+
│ └── MyItem.vstemplate
331
+
└── source.extension.vsixmanifest
332
+
```
333
+
334
+
The SDK automatically:
335
+
1. Discovers `.vstemplate` files in these folders
336
+
2. Injects the required `<Content>` entries into the manifest (via intermediate file)
337
+
3. Includes all template files in the VSIX
338
+
339
+
#### Cross-Project Template References
340
+
341
+
Reference templates from other SDK-style projects using `VsixTemplateReference`:
When disabled, build warnings (VSIXSDK011, VSIXSDK012) will alert you if templates are discovered but the manifest lacks the corresponding `<Content>` entries.
364
+
310
365
## ⚙️ Configuration
311
366
312
367
### Properties
@@ -318,6 +373,10 @@ Extensions are only deployed to the Experimental Instance when building inside V
@@ -355,6 +417,32 @@ Or disable specific categories:
355
417
- Visual Studio 2022 or later
356
418
- .NET Framework 4.7.2+ target framework
357
419
420
+
### NuGet Central Package Management (CPM)
421
+
422
+
The SDK is fully compatible with [NuGet Central Package Management](https://learn.microsoft.com/nuget/consume-packages/central-package-management). When using CPM, define your package versions in `Directory.Packages.props`:
0 commit comments