This project has moved and is read-only. For the latest updates, please go here.

Creating Python Extension Packages

May 7, 2015 at 3:25 AM
Couple of questions for PTVS and Visual Studio extensions.

Are there any plug-ins to create VSIX projects for Python similar to C#/VB? Example of clicking New Project > Python > Extensibility > VISX Project. If so, how do you get the extension?

(Not completely related to PTVS) How do you add new file types and categories to the New File Window. Example clicking File > New > File... I would like to create a new category/file type to create/edit/save on demand instead of creating a solution/project.

Any examples will be appreciated. Thx.
May 7, 2015 at 5:47 AM
(Answering here, but note that we have moved the project to GitHub, so please open a new issue there to continue the conversation:

Can you clarity what you mean by "VSIX projects for Python"? Using Python as a language to author your own VS extensions? That would be pretty ugly, since VS extensibility APIs are all either .NET or COM, and neither of those is particularly convenient to access from Python. Or if you rather mean extending PTVS (we have some extensibility points of our own, such as interpreter handling or launchers), then you can start with any C# VSIX template and just add the relevant bits there.

Regarding file (and project) templates, have a look at this:
May 7, 2015 at 12:40 PM
Edited May 7, 2015 at 12:56 PM
NOTE: I created a new issue at new sight here...

@pminaev Thanks for the response.

I am able to create an extension with C# pretty easily. File > New > Project > C# Extensibility > VSIX Project > and add the project/item templates. So let's say I added the basic C# project template that included one class file. If you notice, the project has the C# icon (and other language related stuff) and when I right-click > Add New Item > there is only C# related items to add.

I would like my extension to be able to show the Python icon and only be able to select Python items (similar to the PTVS type projects). Would this type of extension need to be created still using a C# VSIX? Any examples/docs would be helpful.

In addition, I will review the link for creating the templates to see about adding the New File extension.

Thanks again.