{"id":4754,"date":"2007-12-13T11:57:00","date_gmt":"2007-12-13T11:57:00","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/webdev\/2007\/12\/13\/spell-checker-for-html-asp-net-jscript-vb-c-css-and-c-for-visual-studio-2005-and-2008\/"},"modified":"2007-12-13T11:57:00","modified_gmt":"2007-12-13T11:57:00","slug":"spell-checker-for-html-asp-net-jscript-vb-c-css-and-c-for-visual-studio-2005-and-2008","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/dotnet\/spell-checker-for-html-asp-net-jscript-vb-c-css-and-c-for-visual-studio-2005-and-2008\/","title":{"rendered":"Spell checker for HTML, ASP.NET, JScript, VB, C#, CSS and C++ for Visual Studio 2005 and 2008"},"content":{"rendered":"<p>Following Visual Studio 2008 release I updated my Spell Checker add-in for VS 2008 as well as added some new useful functionality. <\/p>\n<p><strong><span>What&#8217;s new in version 2.0:<br><\/span><br><\/strong>Spell checker now supports text verification in: <\/p>\n<ul>\n<li>HTML style comments <span><strong>&lt;&#8211; HTML &#8211;&gt;<\/strong><\/span> \n<\/li>\n<li>ASP.NET server side comments:<strong><span> &lt;%&#8211; ASP.NET &#8211;%&gt;<\/span><\/strong> \n<\/li>\n<li>JScript, C# and C++ comments: <strong><span>\/\/ C++ style comments<\/span><\/strong> \n<\/li>\n<li>CSS and C style comments: <strong><span>\/* C style comments *\/ <\/span><\/strong>\n<\/li>\n<li>VB and VBScript style comments: <strong><span>&#8216;This is VB comment <\/span><\/strong><\/li>\n<\/ul>\n<p><br>Spell checking is supported in style and script blocks as well as in JS, CS, VB, CSS, CPP ahd H files.&nbsp;There are two separate binaries for VS 2005 and VS 2008. The can be installed side by side if you have both VS 2005 and VS 2008 installed on the machine.<br><\/p>\n<p><strong><span>Requirements:<br><\/span><br><\/strong>Microsoft Visual Studio 2008 or 2005, any edition except Express.<br>Microsoft Word 2003 or 2007 <br><\/p>\n<p><strong><span>Installation<\/span><\/p>\n<p><\/strong>Close Visual Studio<br>Download and run VSSpellChecker2005.msi or VSSpellChecker2008.msi. <br>Run Visual Studio<br>Open a Web site or&nbsp;standalone HTML, ASP, VB, C#, JS, VBS, CSS or CPP&nbsp;file.<br>You should see Spell Checker entry in the Tools menu.<\/p>\n<p><br><strong><span>Uninstall<\/span><\/strong><\/p>\n<p>Close Visual Studio<br>Open Control Panel<br>Go to Add\/Remove Programs<br>Locate <strong>Spell Checker Add-in for Visual Studio 2005<\/strong> or <strong>2008<\/strong> and click <em>Remove<\/em>.<\/p>\n<p><br><strong><span>How to use the Spell Checker<\/span><\/strong><\/p>\n<p>Open a Web Form, HTML, ASP, JS, VBS, CS, VB, CPP or CSS file and click <strong>Tools<\/strong> | <strong>Spell Checker<\/strong>. Spell check may take 10-15 seconds on decently sized files. There is no immediate progress indication, but you can see that squiggles appear one by one under misspelled words. Double click on the misspelled word brings list of suggestions. &lt;Cancel&gt; closes the suggestion list. Spell checker messages also show up in the Error List as informational messages. They are not entered as errors or warnings so they don&#8217;t break builds.<br><\/p>\n<p>VS 2005 screenshot:<\/p>\n<div><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2007\/12\/SpellCheck2005.png\"> <\/div>\n<p>VS 2008 screenshot:<\/p>\n<div><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2007\/12\/SpellCheck2008.png\"> <\/div>\n<p>As before, Spell Checker support mutiple languages in HTML markup, it detects <strong>lang<\/strong> attribute specified on elements,&nbsp;extracts ISO language and uses it to specify appropriate dictionary for the Office spell checking engine.It uses default Office spell checking language&nbsp;in code&nbsp;comments:<\/p>\n<div><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/dotnet\/wp-content\/uploads\/sites\/10\/2007\/12\/SpellCheckerAddin2.png\"> <\/div>\n<p>In order to be able to spell check multiple languages you may need to install <a class=\"\" href=\"http:\/\/www.microsoft.com\/products\/info\/product.aspx?view=22&amp;pcid=071b9ced-ed82-47ef-b5fa-a42ecbdec9b7&amp;type=ovr\" target=\"_blank\" rel=\"noopener\"><strong><font color=\"#006bad\">Microsoft Office 2003 Proofing Tools<\/font><\/strong><\/a>&nbsp;or an appropriate <a class=\"\" href=\"http:\/\/office.microsoft.com\/en-us\/suites\/HA102113681033.aspx\" target=\"_blank\" rel=\"noopener\"><strong><font color=\"#006bad\">Office 2007 Language Pack<\/font><\/strong><\/a>. If you never used particular language dictionary in Word, you have to try it before it becomes available in the Spell Checker add-in. Many dictionaries are installed on demand and if particular language was never activated in Word, the dictionary may be still missing. Open Word, type something in the desired language and run Word spell checker at least once to make sure it works and dictionary is installed.<\/p>\n<p><strong>Customization<\/strong> <\/p>\n<p>You can customize spell checker behavior by editing <b>rules.xml<\/b> file located in <strong>Program FilesVS 2005 Spell Checker Add-In<\/strong> or <strong>VS 2008 Spell Checker Add-In<\/strong>. You can exclude certain elements and add more rules for attribute checking. You probably want to do that if you are using custom controls and want spell checker to verify spelling in custom control attribute values. All element and attribute names much be in <i>lowercase<\/i>. You don&#8217;t have to close the HTML document or Visual Studio after editing the file, the file is loaded every time spell checking is performed. <\/p>\n<p><font face=\"Courier New\">&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;utf-8&#8243;?&gt;<br>&lt;rules&gt;<br>&nbsp; &lt;!&#8211; Exclude content of script and style elements from spell check &#8211;&gt;<br>&nbsp; &lt;exclude name=&#8221;script&#8221; \/&gt;<br>&nbsp; &lt;exclude name=&#8221;style&#8221; \/&gt;<\/p>\n<p>&nbsp; &lt;!&#8211; Check &#8216;value&#8217; attribute on all elements without a namespace &#8211;&gt;<br>&nbsp; &lt;element name=&#8221;*&#8221;&gt;<br>&nbsp;&nbsp;&nbsp; &lt;attribute name=&#8221;value&#8221; \/&gt;<br>&nbsp; &lt;\/element&gt;<\/p>\n<p>&nbsp; &lt;!&#8211; Rules in ASP namespace &#8211;&gt;<br>&nbsp; &lt;namespace name=&#8221;asp&#8221;&gt;<\/p>\n<p>&nbsp;&nbsp;&nbsp; &lt;!&#8211; Check all attributes ending in &#8216;text&#8217; as well as tooltip attribute in all ASP.NET elements &#8211;&gt;<br>&nbsp;&nbsp;&nbsp; &lt;element name=&#8221;*&#8221;&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;attribute name=&#8221;*text&#8221; \/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;attribute name=&#8221;tooltip&#8221; \/&gt;<br>&nbsp;&nbsp;&nbsp; &lt;\/element&gt;<\/p>\n<p>&nbsp;&nbsp;&nbsp; &lt;!&#8211; Special rule for asp:Calendar &#8211;&gt;<br>&nbsp;&nbsp;&nbsp; &lt;element name=&#8221;calendar&#8221;&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;attribute name=&#8221;caption&#8221; \/&gt;<br>&nbsp;&nbsp;&nbsp; &lt;\/element&gt;<\/p>\n<p>&nbsp;&nbsp;&nbsp; &lt;!&#8211; Add more rules for ASP.NET elements here if needed &#8211;&gt;<br>&nbsp; &lt;\/namespace&gt;<\/p>\n<p>&nbsp; &lt;!&#8211; Add rules for custom controls here if needed &#8211;&gt;<br>&nbsp; <br>&lt;\/rules&gt;<\/font><br><\/p>\n<h5>\n<\/h5>\n<p><strong>Important note<\/strong>: Add-in does not work with Visual Web Developer Express as Express editions are not extensible.<\/p>\n<h3>\n<\/h3>\n<p><a class=\"\" href=\"http:\/\/www.arkhipov.com\/Software\/SpellChecker2005.msi\"><font color=\"#006bad\">Visual Studio&nbsp;2005 Add-in download<\/font><\/a><\/p>\n<p><a class=\"\" href=\"http:\/\/www.arkhipov.com\/Software\/SpellChecker2008.msi\"><font color=\"#006bad\">Visual Studio&nbsp;2008 Add-in download<\/font><\/a><\/p>\n<h4>\n<\/h4>\n<p><strong>Troubleshooting: <\/strong><\/p>\n<p>You may have to run as admin&nbsp;during the setup since add-in needs to register COM components. If, for some reason, add-in does not appear in Visual Studio, try running <strong>regsvr32 vsspellchecker.dll<\/strong> from command line in the add in installation folder in Program Files. Look for more details here: <a href=\"http:\/\/blogs.msdn.com\/mikhailarkhipov\/archive\/2007\/12\/13\/troubleshooting-spell-checker-setup.aspx\">http:\/\/blogs.msdn.com\/mikhailarkhipov\/archive\/2007\/12\/13\/troubleshooting-spell-checker-setup.aspx<\/a>.<\/p>\n<p>&#8211; Mikhail Arkhipov<\/p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Following Visual Studio 2008 release I updated my Spell Checker add-in for VS 2008 as well as added some new useful functionality. What&#8217;s new in version 2.0:Spell checker now supports text verification in: HTML style comments &lt;&#8211; HTML &#8211;&gt; ASP.NET server side comments: &lt;%&#8211; ASP.NET &#8211;%&gt; JScript, C# and C++ comments: \/\/ C++ style comments [&hellip;]<\/p>\n","protected":false},"author":404,"featured_media":58792,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[197],"tags":[4,7265,31,7261,147,7267,7268,7269],"class_list":["post-4754","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-aspnet","tag-net","tag-announcements","tag-asp-net","tag-css-and-html","tag-visual-studio","tag-vwd","tag-web","tag-web-2-0"],"acf":[],"blog_post_summary":"<p>Following Visual Studio 2008 release I updated my Spell Checker add-in for VS 2008 as well as added some new useful functionality. What&#8217;s new in version 2.0:Spell checker now supports text verification in: HTML style comments &lt;&#8211; HTML &#8211;&gt; ASP.NET server side comments: &lt;%&#8211; ASP.NET &#8211;%&gt; JScript, C# and C++ comments: \/\/ C++ style comments [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts\/4754","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/users\/404"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/comments?post=4754"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts\/4754\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/media\/58792"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/media?parent=4754"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/categories?post=4754"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/tags?post=4754"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}