<?xml version="1.0" encoding="UTF-8"?><!-- generator="WordPress/2.9.2" -->
<rss version="0.92">
<channel>
	<title>Sam&#039;s Blog</title>
	<link>http://blog.280z28.org</link>
	<description>Because it&#039;s easier than editing the HTML by hand.</description>
	<lastBuildDate>Tue, 26 Jan 2010 00:23:59 +0000</lastBuildDate>
	<docs>http://backend.userland.com/rss092</docs>
	<language>en</language>
	
	<item>
		<title>Creating a WPF Tool Window for Visual Studio 2010</title>
		<description><![CDATA[I’ve been working on Visual Studio 2010 extensibility for some time now, and I must say that creating a tool window was not the easiest task in the world.

First Attempt: Create an MEF-friendly IToolWindowService


  The original goal of this project was creating an MEF service that allowed exporting classes implementing IToolWindowProvider, and have the [...]]]></description>
		<link>http://blog.280z28.org/archives/2010/01/95/</link>
			</item>
	<item>
		<title>Commentary on Parsing Languages for IDEs</title>
		<description><![CDATA[I originally sent this to the ANTLR interest group, but figured it would make for a decent post here as well.

I&#8217;ll start with a couple fundamental concepts. First, there are three key things that get parsed in an IDE:

   The syntax highlighter lexes the current document.    Files that are not [...]]]></description>
		<link>http://blog.280z28.org/archives/2010/01/92/</link>
			</item>
	<item>
		<title>Root Folders v. Window 7 Support</title>
		<description><![CDATA[With the addition of Jump Lists to the taskbar in Windows 7, I couldn’t pass up creating a new root folders solution to leverage this organization on the Start Menu. By combining WPF and .NET 4’s new Windows Shell APIs, the result was remarkably simple. I’ve included the source code in the archive below if [...]]]></description>
		<link>http://blog.280z28.org/archives/2010/01/91/</link>
			</item>
	<item>
		<title>MEF support for the Output Window in Visual Studio 2010</title>
		<description><![CDATA[As some people have noticed, the Visual Studio 2010 SDK doesn&#8217;t have great support for the Output Window from MEF extensions. This post aims to change that. Like several other components I&#8217;m writing about, I hope to provide this one in a &#8220;general extensibility helper&#8221; that could be installed separately from extensions that use it [...]]]></description>
		<link>http://blog.280z28.org/archives/2009/11/79/</link>
			</item>
	<item>
		<title>A general brace matching tagger for Visual Studio 2010</title>
		<description><![CDATA[I haven&#8217;t perfected it yet, but here is a fairly general brace matching tagger that seems to work very well. It relies on the classifier for the content type properly tagging comments and literals with classification types derived from PredefinedClassificationTypeNames.Comment and PredefinedClassificationTypeNames.Literal, which any decent classifier will do.

This example really shows a big improvement in [...]]]></description>
		<link>http://blog.280z28.org/archives/2009/11/74/</link>
			</item>
	<item>
		<title>Tool tips for squiggles and URLs in Visual Studio 2010</title>
		<description><![CDATA[I&#8217;ve been experimenting with Visual Studio&#8217;s new extensibility model, and ran into a problem with squiggles. It seems that despite having an internal IQuickInfoSource for the SquiggleTag and IUrlTag, it&#8217;s not hooked up to a IIntellisenseController so it never appears. Here is a general implementation for an SquiggleQuickInfoIntellisenseController and UrlQuickInfoIntellisenseController that will provide QuickInfo for [...]]]></description>
		<link>http://blog.280z28.org/archives/2009/11/61/</link>
			</item>
	<item>
		<title>Visual Studio language services: Improved brace matching hooks</title>
		<description><![CDATA[By default, brace matching is performed in response to the left and right arrow keys. It should be done in response to several additional commands, as shown below.


Movement by clicking the mouse is handled in your override of ViewFilter.HandlePreExec:




1
2
3
4
5
6
7
8
9
10
public override bool HandlePreExec&#40; ref Guid guidCmdGroup, uint nCmdId, uint nCmdexecopt, IntPtr pvaIn, IntPtr pvaOut &#41; 
&#123; [...]]]></description>
		<link>http://blog.280z28.org/archives/2009/03/27/</link>
			</item>
	<item>
		<title>ANTLR integration in Visual Studio</title>
		<description><![CDATA[I put up a tech preview of the tool I wrote to help with my language services development. It’s a basic ANTLR v3 language service that integrates into Visual Studio 2005 and/or 2008. While it doesn’t have the feature set of, say, ANTLRworks, it’s still proven extremely useful for my development tasks. If you are [...]]]></description>
		<link>http://blog.280z28.org/archives/2008/10/25/</link>
			</item>
	<item>
		<title>ManagedMyC: Type and member dropdown bars</title>
		<description><![CDATA[This is part 4 of [many?] posts about creating an ANTLR-based language service for Visual Studio.

Now that we have an AST with information about the top-level members in our source files, we can use the tree parser to gather this information and make it available for the dropdown bars. For now, the MyC language doesn&#8217;t [...]]]></description>
		<link>http://blog.280z28.org/archives/2008/10/24/</link>
			</item>
	<item>
		<title>ManagedMyC: Intro to building an AST</title>
		<description><![CDATA[This is part 3 of [many?] posts about creating an ANTLR-based language service for Visual Studio.

Sure a scanner and parser are cool, and syntax highlighting is nice. But the real power in the Visual Studio language services comes in their IntelliSense abilities, and supporting those effectively requires building and processing an AST. In this section, [...]]]></description>
		<link>http://blog.280z28.org/archives/2008/10/23/</link>
			</item>
</channel>
</rss>
