Your official information source from the .NET Web Development and Tools group at Microsoft.
Download: VSSpellChecker.msi:
What's new in version 2.2:
Note: There is no v2.2 for VS 2005 or VS 2008 RTM. From now on updates will be provided for VS 2008 SP1 only. Version 2.1 will remain available for VS 2008 RTM and VS 2005 SP1.
Spell checker supports text verification in:
Spell checking is supported in style and script blocks as well as in JS, CS, VB, CSS, CPP and H files
Requirements:Microsoft Visual Studio 2008 SP1, any edition except Express.Microsoft Word 2003 or 2007
Installation
The add-in is now installed in your user folder under Documents\Visual Studio 2008\Add-Ins. More details on VS AddIn XML registration can be found here. Spell checking engine remains native C++ dll, but I added a managed wrapper which can be registered using simple XML file and hence COM registration is no longer needed. This should solve issues with setup under Vista and UAC.
How to use the Spell Checker
Important note: Add-in does not work with Visual Web Developer Express as Express editions are not extensible.
Open a Web Form, HTML, ASP, JS, VBS, CS, VB, CPP or CSS file and click Tools | Spell Checker. 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. <Cancel> 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't break builds.
Switching off spelling errors:
Ignore command
Ignore command adds word to SpellChecker.ignore file. The file it located in Documents\Visual Studio 2008\AddIns\Spell Checker. It is an Unicode text file.
Add to Dictionary command
Add to Dictionary command modifies Microsoft Office custom dictionary file. Typically it is an Unicode text file that is stored in the roaming profile in the Microsoft\UProof folder
You can edit list of words in the Office custom dictionary using Microsoft Word facilities:
Since using custom dictionary and ignore list introduces certain perfomance hit (which depends on the dictionary size), you can turn it off in rules.xml file located in the Spell Checker installation folder and change useOfficeCustomDictionary and/or useIgnoreList to 0.
<options> <useOfficeCustomDictionary>0</useOfficeCustomDictionary> <useIgnoreList>0</useIgnoreList> </options>
Multilanguage spell checking
Spell checker is able to detects lang attribute specified on elements, extract ISO language and use it to specify appropriate dictionary for the Office spell checking engine.
In order to be able to spell check pages in multiple languages you may need to install Microsoft Office 2003 Proofing Tools or an appropriate Office 2007 Language Pack. If you never used particular language dictionary in Word, you have to try using it at least once 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 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:
If you want to spell check multiple pages at one, look at this post: Running Spell checker on all files in the solution Limitations:
<?xml version="1.0" encoding="utf-8"?><rules> <!-- Exclude content of script and style elements from spell check --> <exclude name="script" /> <exclude name="style" /> <!-- Check 'value' attribute on all elements without a namespace --> <element name="*"> <attribute name="value" /> </element> <!-- Rules in ASP namespace --> <namespace name="asp"> <!-- Check all attributes ending in 'text' as well as tooltip attribute in all ASP.NET elements --> <element name="*"> <attribute name="*text" /> <attribute name="tooltip" /> </element> <!-- Special rule for asp:Calendar --> <element name="calendar"> <attribute name="caption" /> </element> <!-- Add more rules for ASP.NET elements here if needed --> </namespace> <!-- Add rules for custom controls here if needed --> </rules>
PingBack from http://www.alvinashcraft.com/2008/12/01/dew-drop-december-1-2008/
Thanks for the tool! I have a problem though. While I often use the Word (2003) spell check to check English, the VSSpellCheck tool doesn't recognize English words, only Dutch (Dutch is the OS and Word language).
How can I make sure VSSpellCheck also checks English text?
Steven, spell checker uses default Word dictionary. Perhaps Word is set up for Dutch only. There should be a way to specify additional languages. In O2007 there is a separate app http://blogs.msdn.com/mikhailarkhipov/archive/2007/12/18/how-to-select-language-for-spell-checking-in-code-comments.aspx. In O2003, I think the setting is somewhere in Tools | Spelling/Grammar...
Thanks for the tool, I've just installed it into my computer and it works well. I guess I'll need it very soon :)
Is there any way to plug the spell-checking into the design view? The design view should support on the fly spell-checking because it is available in expression web, which I understand uses the same technology.
Thanks for the update! I uninstalled the previous and installed the new version, now I have two "Spell Check" menu items in my Tools menu. Of course when I clicked the Bad one it recognized that it's add-in was no longer there and offered to remove the menu item, but I just wanted to post and let you know that the uninstallation of the previous version did not remove the menu item from Tools.
Again, thanks!
Old version used COM registration and unfortunately during uninstall sometime old registry keys didn't get removed.
Stefan, designer is indeed the same as in xWeb, but Expression Web is an Office product so it is using Office spell checker engine directly, same way other Office apps do. Visual Studio is not Office product so there are licensing limitations. Office spell checker and dicitonaries are not always Microsoft products (you can see it in Office Help | About information). This add-in uses separately installed Word via public interfaces which is different from direct usage of Office engine.
Fair enough. Is there a way that I can plug my own spellchecker into the WYSIWYG designer?
Hi,
The spell checker is not working for me,i'm running vs 2008 SP1 with Vista SP1 on 64bit laptop.
any ideas why it didn't work with me ?
Stefan: yes you can. Designer exposes DHTML model equivalent to IE4 (IHtmlDocument2) which you can obtain from VS extensibility interfaces:
http://msdn.microsoft.com/en-us/library/aa301592(VS.71).aspx
http://msdn.microsoft.com/en-us/library/aa301471(VS.71).aspx
Basically you get current tab object and then QI (C++) or cast (VB/C#) it for IHtmlDocument2
http://msdn.microsoft.com/en-us/library/aa752574.aspx
You can then walk designer element tree, extract text from elements and attributes and use Word spell checker
http://blogs.msdn.com/mikhailarkhipov/archive/2006/04/17/577852.aspx
I have been posting in our team blog primarily. Maybe I should have cross posted, but I didn't. I will
This article is obsolete. Please look here for newer version http://blogs.msdn.com/webdevtools/archive/2008/11/29/spell-checker-update-2-2-full-support-for-vs-2008-sp1-simpler-setup-and-a-few-bug-fixes.aspx
This article is obsoltete. Please look here for newer version http://blogs.msdn.com/webdevtools/archive/2008/11/29/spell-checker-update-2-2-full-support-for-vs-2008-sp1-simpler-setup-and-a-few-bug-fixes.aspx
Some folks asked why VS 2008 and VWD Express 2008 do not have "live" spell checking like Expression Web