Quantcast
Channel: Coding4Fun Blog - Channel 9
Viewing all articles
Browse latest Browse all 453

VS Extensibility Samples, Extension Extension and more...

$
0
0

This week is going to be a Visual Studio Extension Theme Week and what better way to kick if off then to highlight a number of great resources for creating them!

First a shout-out to Carlos Quintero of http://www.visualstudioextensibility.com for pointing out these resources (and we're going to give him a second one on Wednesday ;)

We start with a must have repo for any VS Extension dev...

Visual Studio Extensibility Samples

image

These samples demonstrate how to customize the appearance and behavior of the Visual Studio IDE and editor using the Visual Studio SDK. The following are some of the ways in which you can extend Visual Studio:

  • Add commands, buttons, menus, and other UI elements to the IDE
  • Add tool windows for new functionality
  • Add support in Visual Studio for new programming languages
  • Add refactoring or language analyzers to fix and improve code
  • Add a custom project type or new project or item templates
  • Enable high-DPI/high resolution, theme-aware, and high contrast images and icons in your UI
    • For Visual Studio 2013, only high-DPI images/icons are supported; use the below sample High-DPI_Images_Icons
    • For Visual Studio 2015, samples that demonstrate using the Image Service/Catalog (for high-DPI, theme-aware, and high contrast support) are denoted below with * and docs can be found here
  • Reach millions of developers via the Visual Studio Gallery

...

Samples Overview

For more details see the readme included with each sample.

Sample Name
Description

Basic_Source_Control_Provider*
Shows how to add hooks for a simple source code provider

Build_Progress_Bar*
Displays a tool window written in WPF showing build progress

Caret_Fish_Eye
Uses line transformation API to zoom lines in proportion to cursor distance

Code_Sweep
Searches for words matching terms in an XML schema across a solution

Combo_Box
Place combo boxes in a Visual Studio toolbar

CommandTargetRGB
Shows how to create a multi-instance tool window

Completion_Tooltip_Customization
Replaces the completion tooltip UI

Diff_Classifier
Classifier with color highlighting

Editor_With_Toolbox
Creates a custom toolbox associated with a specific file extension

High-DPI_Images_Icons
Use these helpers to make your images/icons in VS 2013 only scale on high dense displays

Highlight_Word
Highlight any words that match the word currently under the text cursor

Intra-text_Adornment
Text adornment that replaces hexadecimal color values with color swatches

LightBulb*
Creates a custom lightbulb to set text case in text files

MSDNSearch
Implements MSDN search functionality directly into Quick Search

Menu_And_Commands*
Demonstrates how to add commands to various places in the IDE

Ook_Language_Integration
Implements language support for a simple programming language

Options_Page*
Shows how to add custom pages to the Tools / Options dialog

Reference_Package
Boilerplate containing minimum requirements for a functional extension

Reference_Services
Shows how to create and consume services as a service provider

RunningDocumentTable(RDT)_Event_Explorer
Creates an explorer grid to log events in a tool window

Single_File_Generator
Creates a file generator that uses XML as basis for creating a new C# file

Source_Code_Control_Provider*
More complex example of a source code provider

Todo_Classification
Classifier that highlights TODO comments and displays a matching glyph

Typing_Speed_Meter
Displays an adornment with a typing speed indicator in the Text Editor

WPFDesigner_XML
WPF-based visual designer for editing .vstemplate XML files

WPF_Toolwindow*
Provides a sample toolwindow that can host a WPF or WinForms control

Windows_Forms_Controls_Installer
Loads custom Windows Forms controls inside the toolbox

... [Visual Studio Extensibility Samples]

Second we want to re-highlight Mads Kristensen's awesome Extension extension...

Extensibility Tools 2015

An extension built for and by Visual Studio extension authors.

See the changelog for changes and roadmap.

Features

  • VSCT files
    • Intellisense for custom GUIDs
    • Intellisense for custom IDs
    • Intellisense for built-in groups and menus
    • ImageMoniker Intellisense
    • Snippets
    • Auto-sync VSCT commands to C# class
  • Editor margin
    • Shows document encoding
    • Shows content type of the ITextBuffer under caret
    • Shows active classifications under caret
    • Shows caret position and selection range
  • Dialog for digitally signing VSIXs
  • Pkgdef/pkgundef files
    • Syntax highlighting
    • Intellisense
    • Snippets
    • Brace matching
    • Validation
    • Formatting
  • VsixManifest files
    • Auto-sync to Resx file
    • Automatically create .ico file based on icon file
  • Support for VsixGallery.com
  • Show Project information (for debug purposes)
  • Export KnownMonikers to PNG file
  • VS Theme color swatch window
  • View Activity Log
  • Enable VSIP Logging
  • Item templates
    • Snippet file
    • Browser Link Provider class
    • Editor drop handler

... [Extensibility Tools 2015]

Lastly a few MSDN doc's for anyone getting started build VS Extensions...

Starting to Develop Visual Studio Extensions

If you’ve never written a Visual Studio extension before, you probably have some questions. We’ve listed some of the most common ones here. If you don’t see the information you’re looking for, use the feedback buttons (Was this page helpful? at the bottom of the screen) to ask for what you want.

What software do I need to develop Visual Studio extensions?

 


You need to install the Visual Studio 2015 SDK in addition to Visual Studio 2015 in order to develop Visual Studio extensions. You can install the Visual Studio 2015 SDK as part of regular setup, or you can install it later on. For more information about installing the Visual Studio SDK, see Visual Studio SDK.

What kinds of things can I do with Visual Studio extensions?

 


The sky’s the limit when it comes to imagining different Visual Studio extensions. Of course, most extensions have something to do with writing code, but that doesn’t have to be the case. Here are some examples of the kinds of extensions you can build:

  • Support for languages that aren’t included in Visual Studio, with syntax coloring, IntelliSense, and compiler and debug support

  • Productivity tools that extend the core IDE experience with additional templates, code refactoring, new dialogs or tool windows

  • Domain-specific designers for scenarios like data design or cloud support

For examples of extensions, check out the Visual Studio Gallery. You can also take a look at Visual Studio Open Source Extensions.

Which Visual Studio features can I extend?

... [Starting to Develop Visual Studio Extensions]

Visual Studio User Experience Guidelines

The Visual Studio User Experience Guidelines are intended for those who design new features for Visual Studio. These guidelines contain information about common user models and interaction patterns so that designers of new user interfaces (UI) can create user experiences that are seamless and consistent within the development environment.

Developing software for Microsoft products means understanding the guidance provided by Windows. There are three important resources to be aware of:

These guidelines give you information about what to do when designing for Visual Studio, and in some cases information regarding how to do it is also included. For more detailed implementation information and to learn about specific application programming interfaces (APIs) that allow you to write code for solutions that integrate into the Visual Studio integrated development environment (IDE), use the Visual Studio Software Development Kit (SDK).

Visual Studio SDK Reference

This section contains information about Visual Studio namespaces, related namespaces, and other areas of interest for developers who use the Visual Studio SDK.

SNAGHTML63e5c9a

That should be enough to get you started... :)

Here’s a few more links you might find interesting:




Viewing all articles
Browse latest Browse all 453

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>