|
|
|
|
|
by qwertyuiop924
3551 days ago
|
|
But what IS the VS domain? Is it just plain text editing? Because Emacs can smash it at that. Is is programming? Because Emacs beats it in the general case at that, too. Is it programming in a very specific language? This is where it starts to win out, but I don't want to switch editors every time I switch languages, and Emacs does all of that Good Enough. It even has semantic autocomplete in some languages at this point. The only thing it's missing is refactoring tools, which aren't as important when you're not writing Java. |
|
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.