Skip to content

Contributing to PowerShell Tools for Visual Studio

Adam Driscoll edited this page Jul 11, 2024 · 4 revisions

This guide will instruct you on how to build the PowerShell Tools for Visual Studio extension

Requirements

Build Process

Builds can be conducted entirely in Visual Studio. Build the PowerShellTools project to build the Visual Studio 2019 extension and the PowerShellTools.2022 to build the Visual Studio 2022 and later extension.

Debugging

Debugging can be accomplished through Visual Studio. Set the startup project to PowerShellTools.2022 and press F5 to launch the experimental instance and debug the extension.

Code Layout

./build

Contains MSBuild settings and targets files that are used in the PoshTools projects.

./Common

Common models, interfaces and helpers for PoshTools.

./HostInjection

Refactoring used in both the VS and VS Code extensions.

./PowerShellTools.Shared

Contains the bulk of the Visual Studio extension. Includes the Project system, IntelliSense, debugging system and more. Shared between the VS2019 and VS2022+ extensions.

./PowerShellTools

The base project for the VS2019 extension. Mainly references the Shared project.

./PowerShellTools.2022

The base project for the VS2022+ extension. Mainly references the Shared project.

./PowerShellTools.MSBuild

MSBuild targets for packaging.

./PowerShellTools.Templates.*

Project and file templates like modules, scripts and form projects.

./PowerShellTools.Packager

Packager library used to turn PowerShell scripts into executables.

./FormDesigner

Form designer parsing and generation logic.

Clone this wiki locally