Spelling is hard; let's go parsing. [Simple command-line utilities to extract strings and comments from C# and JavaScript code]
Maybe it's old fashioned, but I try to spell things correctly. I don't always succeed, so I rely on tools to help.
Integrated spell-checking for documents and email is ubiquitous, but there's not much support for source code. I've previously written about a code analysis rule I implemented for .NET/FxCop, but that doesn't help with JavaScript (which I've been using more and more).
Sometimes I'll copy+paste source code into Microsoft Word, but that's an act of true desperation because there are so many false positives for keywords, variables, syntax, and the like. So I wrote a simple tool to reduce the noise:
JavaScriptStringExtractor Runs on Node.js. Dependencies via npm. Esprima for parsing and glob for globbing. Wildcard matching includes subdirectories when
**
is used.
It's a simple command-line utility to extract strings and comments from a JavaScript file and write the results to standard output. Redirect that output to a file and open it in Word for a much improved spell-checking experience!
Granted, it's still not ideal, but it is quick and painless and filters out most of the noise. I scan for red squiggles, update the code, and get on with life, feeling better about myself for the effort. :)
JavaScript was so easy, I wrote a version for C#, too:
CSharpStringExtractor Runs on .NET. Dependencies via NuGet. Roslyn for parsing. Wildcard matching includes subdirectories.
It's pretty much the same tool, just for a different language.
With JavaScript and C# taken care of, my needs are satisfied - but there are lots more languages out there and maybe other people want to try.
So I created a GitHub repository with the complete code for both tools: StringExtractors
Enjoy!
PS - Pull requests for other languages are welcome. :)