<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments for Sam&#039;s Blog</title>
	<atom:link href="http://blog.280z28.org/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.280z28.org</link>
	<description>Because it&#039;s easier than editing the HTML by hand.</description>
	<lastBuildDate>Wed, 05 Oct 2011 19:39:44 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>Comment on MEF support for the Output Window in Visual Studio 2010 by Robert</title>
		<link>http://blog.280z28.org/archives/2009/11/79/comment-page-1/#comment-29723</link>
		<dc:creator>Robert</dc:creator>
		<pubDate>Wed, 05 Oct 2011 19:39:44 +0000</pubDate>
		<guid isPermaLink="false">http://blog.280z28.org/?p=79#comment-29723</guid>
		<description>&lt;p&gt;Looks like you&#039;re building an ANTLR VS2010 plug-in that would be really useful; are you willing to share/sell it?&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Looks like you&#8217;re building an ANTLR VS2010 plug-in that would be really useful; are you willing to share/sell it?</p>]]></content:encoded>
	</item>
	<item>
		<title>Comment on ManagedMyC: Type and member dropdown bars by Sylwia</title>
		<link>http://blog.280z28.org/archives/2008/10/24/comment-page-1/#comment-29653</link>
		<dc:creator>Sylwia</dc:creator>
		<pubDate>Mon, 03 Oct 2011 15:05:35 +0000</pubDate>
		<guid isPermaLink="false">http://blog.280z28.org/archives/2008/10/24/#comment-29653</guid>
		<description>&lt;p&gt;I&#039;m implementing a language service and your articles really helped me to swith to ANTLR. Thank you for your efford!&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>I&#8217;m implementing a language service and your articles really helped me to swith to ANTLR. Thank you for your efford!</p>]]></content:encoded>
	</item>
	<item>
		<title>Comment on ManagedMyC: Code folding for functions by Julian</title>
		<link>http://blog.280z28.org/archives/2008/10/22/comment-page-1/#comment-27342</link>
		<dc:creator>Julian</dc:creator>
		<pubDate>Fri, 22 Jul 2011 20:26:47 +0000</pubDate>
		<guid isPermaLink="false">http://blog.280z28.org/archives/2008/10/22/#comment-27342</guid>
		<description>&lt;p&gt;Just want to leave a comment in case somebody uses this example and need to use the End-Of-Line (&quot;&#092;r&#092;n&quot;) to mark the end of a block.&lt;/p&gt;

&lt;p&gt;the function ToTextSpan needs to be modified as follows:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;    public static TextSpan ToTextSpan(IToken token)
    {
        if (token == null)
            return new TextSpan();

        string tokentext = token.Text ?? string.Empty;
        if (token.Text.Equals(&quot;\n&quot;) &#124;&#124; token.Text.Equals(&quot;\r\n&quot;))
            tokentext = string.Empty;

        return new TextSpan()
        {
            iStartLine = token.Line - 1,
            iStartIndex = token.CharPositionInLine,
            iEndLine = token.Line - 1,
            iEndIndex = token.CharPositionInLine + tokentext.Length
        };
    }
&lt;/code&gt;&lt;/pre&gt;
</description>
		<content:encoded><![CDATA[<p>Just want to leave a comment in case somebody uses this example and need to use the End-Of-Line (&#8220;&#092;r&#092;n&#8221;) to mark the end of a block.</p>

<p>the function ToTextSpan needs to be modified as follows:</p>

<pre><code>    public static TextSpan ToTextSpan(IToken token)
    {
        if (token == null)
            return new TextSpan();

        string tokentext = token.Text ?? string.Empty;
        if (token.Text.Equals("\n") || token.Text.Equals("\r\n"))
            tokentext = string.Empty;

        return new TextSpan()
        {
            iStartLine = token.Line - 1,
            iStartIndex = token.CharPositionInLine,
            iEndLine = token.Line - 1,
            iEndIndex = token.CharPositionInLine + tokentext.Length
        };
    }
</code></pre>]]></content:encoded>
	</item>
	<item>
		<title>Comment on Custom Visual Studio language services: ManagedMyC meets ANTLR by Manuel</title>
		<link>http://blog.280z28.org/archives/2008/10/21/comment-page-1/#comment-22941</link>
		<dc:creator>Manuel</dc:creator>
		<pubDate>Fri, 18 Mar 2011 13:05:40 +0000</pubDate>
		<guid isPermaLink="false">http://blog.280z28.org/archives/2008/10/21/#comment-22941</guid>
		<description>&lt;p&gt;Hi Sam. can you explain me how do i create the installer for this language service?&lt;/p&gt;

&lt;p&gt;Thaks!!&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Hi Sam. can you explain me how do i create the installer for this language service?</p>

<p>Thaks!!</p>]]></content:encoded>
	</item>
	<item>
		<title>Comment on Multi-processor building in Visual Studio 2005 by &#62;devblog_ &#187; Blog Archive &#187; Visual Studio 2005: Speeding up compiles</title>
		<link>http://blog.280z28.org/archives/2007/10/17/comment-page-1/#comment-18014</link>
		<dc:creator>&#62;devblog_ &#187; Blog Archive &#187; Visual Studio 2005: Speeding up compiles</dc:creator>
		<pubDate>Tue, 19 Oct 2010 22:02:35 +0000</pubDate>
		<guid isPermaLink="false">http://blog.280z28.org/archives/2007/10/17/#comment-18014</guid>
		<description>&lt;p&gt;[...] (Found it at 1 and 2) [...]&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>[...] (Found it at 1 and 2) [...]</p>]]></content:encoded>
	</item>
	<item>
		<title>Comment on MEF support for the Output Window in Visual Studio 2010 by Gaspar Nagy</title>
		<link>http://blog.280z28.org/archives/2009/11/79/comment-page-1/#comment-17084</link>
		<dc:creator>Gaspar Nagy</dc:creator>
		<pubDate>Tue, 21 Sep 2010 11:59:59 +0000</pubDate>
		<guid isPermaLink="false">http://blog.280z28.org/?p=79#comment-17084</guid>
		<description>&lt;p&gt;This was very useful, thanks!&lt;/p&gt;

&lt;p&gt;For me, VS2010/MEF was unable to resolve the OutputWindowService. I had to change the property type of the GlobalServiceProvider field from IServiceProvider to SVsServiceProvider (Microsoft.VisualStudio.Shell namespace).
        [Import]
        public SVsServiceProvider GlobalServiceProvider;&lt;/p&gt;

&lt;p&gt;(Also I had to comment out the code contracts part, because I did not wanted to enable contracts in my project.)&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>This was very useful, thanks!</p>

<p>For me, VS2010/MEF was unable to resolve the OutputWindowService. I had to change the property type of the GlobalServiceProvider field from IServiceProvider to SVsServiceProvider (Microsoft.VisualStudio.Shell namespace).
        [Import]
        public SVsServiceProvider GlobalServiceProvider;</p>

<p>(Also I had to comment out the code contracts part, because I did not wanted to enable contracts in my project.)</p>]]></content:encoded>
	</item>
	<item>
		<title>Comment on Commentary on Parsing Languages for IDEs by vincenth_net</title>
		<link>http://blog.280z28.org/archives/2010/01/92/comment-page-1/#comment-16570</link>
		<dc:creator>vincenth_net</dc:creator>
		<pubDate>Tue, 31 Aug 2010 08:44:27 +0000</pubDate>
		<guid isPermaLink="false">http://blog.280z28.org/archives/2010/01/92/#comment-16570</guid>
		<description>&lt;p&gt;Hi Sam, I&#039;m working on simple textual domain specific languages with intellisense in the VS2010 editor (via MEF) with Antlr (I switched from SQL Server Modeling services due to its CTP license). Could help me with some advice?&lt;/p&gt;

&lt;p&gt;I may implement this in http://solutionsfactory.macaw.nl/ , and I&#039;m looking for good strategies to implement intellisense autocomplete, syntax highlighting and error squiggles.&lt;/p&gt;

&lt;p&gt;I&#039;m focusing on designing simple, small languages that require only a simple (combined) antlr grammar for the purpose of generating output (PowerShell statements). These are not C like languages but very simple, only containing a handful of statements, identifiers, literals, and lists and tables of values.&lt;/p&gt;

&lt;p&gt;After reading your posts, the Antlr books, and playing around with Antlr and VS2010 Editor extensibility, I have these questions:&lt;/p&gt;

&lt;p&gt;1) How would you implement syntax coloring and autocomplete from a simple, combined grammar (output=template) instead of a tree grammar? Is using an AST grammar only needed for performance or is it also the simplest way to get both intellisense and translation? My languages are very simple and do not require an AST for translation to output. I would rather have one grammar than two grammars for a language, as long as that will not make the combined grammar too hard to read.&lt;/p&gt;

&lt;p&gt;2) How do you structure your grammar for incomplete/invalid input? Do you create two grammars, one for syntax coloring and autcomplete that handles incomplete, invalid input, and one for validation &amp; translation that requires complete, valid input? Or would you introduce some sort of &#039;mode&#039; parameter for the parser rules to indicate how strict they should be? I want to keep my grammars as uncomplicated as possible.&lt;/p&gt;

&lt;p&gt;PS You have not been posting here for a long time, have you been working on VS2010 - Antlr integration after Jan 2010? I&#039;d really like to see more posts on this, working code for Antlr - VS2010 MEF integration with intellisense &#039;done right&#039; would be great.&lt;/p&gt;

&lt;p&gt;Thx for any help you may be able to offer.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Hi Sam, I&#8217;m working on simple textual domain specific languages with intellisense in the VS2010 editor (via MEF) with Antlr (I switched from SQL Server Modeling services due to its CTP license). Could help me with some advice?</p>

<p>I may implement this in <a href="http://solutionsfactory.macaw.nl/" rel="nofollow">http://solutionsfactory.macaw.nl/</a> , and I&#8217;m looking for good strategies to implement intellisense autocomplete, syntax highlighting and error squiggles.</p>

<p>I&#8217;m focusing on designing simple, small languages that require only a simple (combined) antlr grammar for the purpose of generating output (PowerShell statements). These are not C like languages but very simple, only containing a handful of statements, identifiers, literals, and lists and tables of values.</p>

<p>After reading your posts, the Antlr books, and playing around with Antlr and VS2010 Editor extensibility, I have these questions:</p>

<p>1) How would you implement syntax coloring and autocomplete from a simple, combined grammar (output=template) instead of a tree grammar? Is using an AST grammar only needed for performance or is it also the simplest way to get both intellisense and translation? My languages are very simple and do not require an AST for translation to output. I would rather have one grammar than two grammars for a language, as long as that will not make the combined grammar too hard to read.</p>

<p>2) How do you structure your grammar for incomplete/invalid input? Do you create two grammars, one for syntax coloring and autcomplete that handles incomplete, invalid input, and one for validation &amp; translation that requires complete, valid input? Or would you introduce some sort of &#8216;mode&#8217; parameter for the parser rules to indicate how strict they should be? I want to keep my grammars as uncomplicated as possible.</p>

<p>PS You have not been posting here for a long time, have you been working on VS2010 &#8211; Antlr integration after Jan 2010? I&#8217;d really like to see more posts on this, working code for Antlr &#8211; VS2010 MEF integration with intellisense &#8216;done right&#8217; would be great.</p>

<p>Thx for any help you may be able to offer.</p>]]></content:encoded>
	</item>
	<item>
		<title>Comment on ANTLR integration in Visual Studio by Christopher Pohl</title>
		<link>http://blog.280z28.org/archives/2008/10/25/comment-page-1/#comment-16285</link>
		<dc:creator>Christopher Pohl</dc:creator>
		<pubDate>Tue, 17 Aug 2010 06:27:39 +0000</pubDate>
		<guid isPermaLink="false">http://blog.280z28.org/archives/2008/10/25/#comment-16285</guid>
		<description>&lt;p&gt;Hi Sam,&lt;/p&gt;

&lt;p&gt;wonderful work, very helpful, indeed. I was wondering whether you could agree to open up some of the source code. I have been using your previous posts on integrating language services in VS quite a lot, but I still don&#039;t get the hang of the MS way of things. Is it possible to get your ANTLR integration sources, or parts of them?&lt;/p&gt;

&lt;p&gt;Regardsm
chris&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Hi Sam,</p>

<p>wonderful work, very helpful, indeed. I was wondering whether you could agree to open up some of the source code. I have been using your previous posts on integrating language services in VS quite a lot, but I still don&#8217;t get the hang of the MS way of things. Is it possible to get your ANTLR integration sources, or parts of them?</p>

<p>Regardsm
chris</p>]]></content:encoded>
	</item>
	<item>
		<title>Comment on A general brace matching tagger for Visual Studio 2010 by Frederic Torres</title>
		<link>http://blog.280z28.org/archives/2009/11/74/comment-page-1/#comment-15588</link>
		<dc:creator>Frederic Torres</dc:creator>
		<pubDate>Tue, 06 Jul 2010 02:35:02 +0000</pubDate>
		<guid isPermaLink="false">http://blog.280z28.org/?p=74#comment-15588</guid>
		<description>&lt;p&gt;Thanks for this post. It helped me figure out how to parse information on multiple line.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Thanks for this post. It helped me figure out how to parse information on multiple line.</p>]]></content:encoded>
	</item>
	<item>
		<title>Comment on Building a simple Launchy clone in WPF (Part 2/3: Visual Studio) by James Ma</title>
		<link>http://blog.280z28.org/archives/2007/03/14/comment-page-1/#comment-14008</link>
		<dc:creator>James Ma</dc:creator>
		<pubDate>Mon, 05 Apr 2010 20:45:47 +0000</pubDate>
		<guid isPermaLink="false">http://blog.280z28.org/archives/2007/03/14/#comment-14008</guid>
		<description>&lt;p&gt;Hi Sam,&lt;/p&gt;

&lt;p&gt;I&#039;m working through the tutorial now on a Windows 7 machine, and I just wanted to let you know that section 1, line 24 of Cache.cs has to be replaced with:  &lt;code&gt;LoadStartMenu( System.Environment.GetEnvironmentVariable( &quot;PROGRAMDATA&quot; ) + @&quot;&#092;Microsoft&#092;Windows&#092;Start Menu&quot; );&lt;/code&gt; if you want it to work on Vista or 7&lt;/p&gt;

&lt;p&gt;The reference documentation can be found here: http://support.microsoft.com/kb/886549 at step 12&lt;/p&gt;

&lt;p&gt;Thanks for the writeup!&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Hi Sam,</p>

<p>I&#8217;m working through the tutorial now on a Windows 7 machine, and I just wanted to let you know that section 1, line 24 of Cache.cs has to be replaced with:  <code>LoadStartMenu( System.Environment.GetEnvironmentVariable( "PROGRAMDATA" ) + @"&#92;Microsoft&#92;Windows&#92;Start Menu" );</code> if you want it to work on Vista or 7</p>

<p>The reference documentation can be found here: <a href="http://support.microsoft.com/kb/886549" rel="nofollow">http://support.microsoft.com/kb/886549</a> at step 12</p>

<p>Thanks for the writeup!</p>]]></content:encoded>
	</item>
</channel>
</rss>

