Visual Studio 2015 Extensions You Might Find Useful
hamidmosalla.com
hamidmosalla.com
EditorConfig - Reads your .editorconfig files and applies their settings.
Markdown Editor - Edit Markdown with live preview.
Smooth Scrolling - Use smooth scrolling instead of jumpy scrolling, nice for two-finger touchpad scrolling. There are also two different extensions named "Smooth Scroll" (no "ing") that do similar things. I've had one or another of these work better depending on the machine.
Strip'em - Force consistent newlines when files are saved. (Note this is not in the extension gallery, you have to get it from the developer's site.)
TabSanity - For projects that insist on spaces for indentation, makes the left and right arrow keys jump a full indent level instead of one space.
Text Macros for Visual Studio 2012/2013/2015 - Adds some of the keyboard macro support that went AWOL some years ago.
And of course things like ReSharper or Visual Assist, plus language specific extensions like HLSL Tools, PowerShell Tools, Python Tools, etc.
Free ones I also use:
Trailing Whitespace Visualiser -- marks trailing whitespace in red and can automatically strip it on save.
Editor Guidelines -- Fixed vertical column guides
ArrayPlotter -- plot data in arrays on a x/y graph
cppcheck add-in -- run cppcheck from within MSVC
And Visual Assist of course.
Hold your control key down while hitting right/left arrow. This will jump to the beginning or end of the next word (effectively skipping the tab/spaces).
Now you can remove an extension! :)
I still like TabSanity, though. Perhaps it's because I use tabs in all my own projects and I like the way the left-right keys move one indent at a time. So having those keys work the same way with space indentation has a certain comfort to it.
New and Noteworthy Extensions for Visual Studio – April 2016: https://blogs.msdn.microsoft.com/visualstudio/2016/05/02/new...
You can find the other posts and related ones using this tag filter on our official Visual Studio team blog: https://blogs.msdn.microsoft.com/visualstudio/tag/extensions...
- https://github.com/tom-seddon/VSScripts (disclaimer: written by me - however I didn't write it because I think it's useless!) - insert text by printing from command line tools, and alter text by piping selection through a command line tool
- http://www.usysware.com/dpack/ - addons that improve the code browsing experience a bit (I particularly like the methods and file browsers)
- https://visualstudiogallery.msdn.microsoft.com/1290e058-33da... - word-wraps comments for you. An absolute godsend if you want to write meaningful comments without going nuts
- https://visualstudiogallery.msdn.microsoft.com/a1141bff-463f... - makes the debugger auto-attach to child processes when launched by your main process. Highly recommended if you work with multi-process stuff - the out-of-the-box UX for debugging that sort of thing isn't great, but in my view this pretty much fixes it
This is on Windows 10, with a solution of about 15-25 projects. At one point it was close to 100K LOC, but that was before we went in with fire and sword to remove some terrible, terrible amounts of redundancy, so it's considerably less now.
It's painfully slow without any extensions installed, even with a relatively small 200 kloc C++ project.
Just switching between source code tabs takes about 2 seconds.
Try to add scan exceptions for devenv.exe and your development folders.
Your mileage may vary.
I feel that there has to be...
(Requires Enterprise to create and make edits, Professional can open and make minimal edits)
(actually this is the better link for mapping dependencies: https://msdn.microsoft.com/en-us/library/dd409453.aspx)
I'd love to have some scope highlighter when inside a nested if-else.(Java)
In any case, I don't want to learn a new environment every time I change languages.
Also as an Emacs user working on Windows I have to tell you that Emacs experience and performance is sadly subpar compared to OSX or Linux.
As for emacs, have you tried Cygwin? I've heard it improves things.
I don't see anyone advocating that you be forced to do so. Hell, as a vi(m) user, Nature's perfect enemy of an Emacs user, I don't actually give a damn as long as you get the line-endings right.
If you were looking for a list of extensions for Emacs (or macros or whatever), then feel free to contribute a list.
Things like C++ that's specific to Win32 API, C# and ASP.NET, and Windows Phone apps (but that device isn't so popular).
>, but I don't want to switch editors every time I switch languages,
I regularly switch around from MS VS for C++ Win32 API & C#, to Qt Creator for C++ on Linux, to Jetbrains IntelliJ/Webstorm for Java/Android/Javascript, and to Apple Xcode for iOS/Swift.
It doesn't seem that hard to do that. Yes, every vendor-specific editor has its own non-standard keyboard mapping for things like build, debug, run, etc but my brain has no problem mentally remapping on-the-fly to each editor. Press F5 to Run the project in MSVS and then press shift+F10 to Run in IntelliJ. I'm no genius and yet my brain has no problem switching in quick succession. What's really hard is switching from an American physical keyboard to a German one -- e.g. my muscle memory wants to press the key for 'Z' but I always end up with the letter 'Y'.
I can see the advantages of trying to create a universal editor environment in vi/emacs that works on every language but I've tried it and it's not worth it. The customization capabilities (and effort required) in Emacs doesn't match the advanced integrated tools of the vendor-specific code editors.
>The only thing it's missing is refactoring tools, which aren't as important when you're not writing Java.
I also use refactoring for a bunch of other languages like C++, C#, Javascript, and Swift.
> In fact, looking over the feature list for Emacs C# editing (https://www.emacswiki.org/emacs/CSharpMode), I can't find anything obviously missing from VS.
MSVS has the GUI dialog editors for Winforms, WPF, ASP.NET. It also has tight integration with SQL Server. It also has slick integration with Azure if you're doing cloud deployment. And if I'm inside a main.cpp file with the cursor is hovering over CreateWindow(), pressing F1 will bring up the exact MSDN documentation for that Win32 function. Last time I looked, Emacs didn't have all that without a lot of customization work.
Conceivably, you can customize Emacs to do anything. However, with MSVS, all the integration of helpful tools (the stuff beyond just syntax highlighting of code) works right out the box.
We don't have Dialog editors built in, we don't have SQL Server or Azure integration. But we do have doc intgration, courtesy of OmniSharp for C#, and courtesy of various packages for other languages.
Sure, it's a good bit of work, but you get a better environment out of it.
That's subjective, though. For some people, it's use the same tool for as much as possible; for others, it's use the right tool for the job.
There's pretty much no objective way to compare Emacs to Visual Studio (or any other IDE, for that matter) since they all perform the same general functions, some more generally than others. When you get down to specifics, it's usually a case of apples and oranges.
But at the end of the day, I still think my apple is better. :-D