{"id":2419,"date":"2019-12-07T09:55:46","date_gmt":"2019-12-07T14:55:46","guid":{"rendered":"http:\/\/codinggorilla.com\/?p=2419"},"modified":"2020-01-11T05:28:06","modified_gmt":"2020-01-11T10:28:06","slug":"new-antlr4buildtasks-templates","status":"publish","type":"post","link":"http:\/\/165.227.223.229\/index.php\/2019\/12\/07\/new-antlr4buildtasks-templates\/","title":{"rendered":"New &#8212; Antlr4BuildTasks.Templates"},"content":{"rendered":"\n<p>For those interested in creating an Antlr4 program using C#, I wrote a <a href=\"https:\/\/github.com\/kaby76\/Antlr4BuildTasks\/tree\/master\/Templates\">dotnet package<\/a> and uploaded it to <a href=\"https:\/\/www.nuget.org\/packages\/Antlr4BuildTasks.Templates\/\">Nuget<\/a>. There is similar functionality in the VS2019 extension <a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=KenDomino.AntlrVSIX\">AntlrVSIX<\/a>, but I am starting to move towards a Language Server Protocol client\/server implementation for Antlr. This package capitalizes on the work I did with <a href=\"https:\/\/github.com\/kaby76\/Antlr4BuildTasks\">Antlr4BuildTasks<\/a> supporting MSBUILD builds using the Java Antlr tool v4.7.2.<\/p>\n\n\n\n<p><!--more--><\/p>\n\n\n\n<p>It&#8217;s finally pretty apparent that VS IDE will eventually go away once &#8220;complex workflows&#8221; are implemented in VS Code (e.g., attach to process). This is rather sad because VS Code&#8217;s UI is actually kind of lousy, just my opinion.<sup>*<\/sup> But, it is faster than VS IDE, which isn&#8217;t saying much because just about everything is faster than VS IDE. However, MS can&#8217;t put many resources into a product that&#8217;s <a href=\"https:\/\/visualstudio.microsoft.com\/free-developer-offers\/\">free<\/a>, isn&#8217;t open-source, and which isn&#8217;t being extended much by third parties anymore. Why should third parties write extensions for a tool in which the fundamental infrastructure is stagnant? After 20 or 30 years, it&#8217;s still a 32-bit app, still uses COM interfaces that are nearly impossible to figure out, and has only a few extensions for supporting any other languages beyond C#, Javascript, C++, VB, and F#. As of this post, there are 2955 extensions for VS2019, yet 14993 for VS Code, which only first released in 2015. Contrary to what <a href=\"https:\/\/blog.ndepend.com\/4-predictions-for-the-future-of-net\/\">others may try to convince themselves<\/a>, the future of VS IDE isn&#8217;t so bright.<\/p>\n\n\n\n<p>&#8212; Ken<\/p>\n\n\n\n<p>* <em>(The default colors for VSCode are optimized for &#8220;dark&#8221; mode. When viewing in &#8220;Light (Visual Studio)&#8221;, the text in &#8220;DEBUG CONSOLE&#8221; is a light yellow over white, which is basically impossible to read; When debugging in VSCode C# using the standard MS extension, right-click on a variable gives a pop-up menu that spontaneously disappears, requiring a second right-click before sticking around; Unlike in Visual Studio IDE, I can&#8217;t drag and move the &#8220;DEBUG AND RUN&#8221; panel to another position in the window to dock; Sometimes when I start VSCode, the top bar containing &#8220;File|Edit|Selection|&#8230;&#8221; is placed above the screen, and I cannot move, minimize, nor close the VSCode window; When debugging, a toolbox is placed in the source code window, or in the tab bar. I cannot remove the toolbox at all; There is no &#8220;Quick Watch box that I can move out of the way to display variables, or expressions that I type in. There just is no notion of a single-document interface!; The formatting of the value of a struct or object is JSON, not a nice grid box, so I can&#8217;t sort by column. The list goes on and on.)<\/em>  <\/p>\n","protected":false},"excerpt":{"rendered":"<p>For those interested in creating an Antlr4 program using C#, I wrote a dotnet package and uploaded it to Nuget. There is similar functionality in the VS2019 extension AntlrVSIX, but I am starting to move towards a Language Server Protocol client\/server implementation for Antlr. This package capitalizes on the work I did with Antlr4BuildTasks supporting &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/165.227.223.229\/index.php\/2019\/12\/07\/new-antlr4buildtasks-templates\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;New &#8212; Antlr4BuildTasks.Templates&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[],"tags":[],"_links":{"self":[{"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/posts\/2419"}],"collection":[{"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/comments?post=2419"}],"version-history":[{"count":0,"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/posts\/2419\/revisions"}],"wp:attachment":[{"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/media?parent=2419"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/categories?post=2419"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/165.227.223.229\/index.php\/wp-json\/wp\/v2\/tags?post=2419"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}