What are your preferred text editors for each language?
Emacs for everything. If I start a using a new language I'll hand craft snippets, wire up with any linters or external completion engines and other tools.
If there is no good completion solution, then I'll cheat. Grep to the definition (or jump with tags), open it in a buffer and I can look at what is there. At that point the members are now available for "dumb" textual completion. I'll create helper function to do this.
Give me a few hours and I can match just about any IDE feature. The mechanical parts of the workflow are crazy fast and fluid.
I write a custom editor in the language that I need to edit in. But seriously, Emacs. I never have to work in languages that don't already have the leg work done in creating linters, syntax highlighting etc.
VisualStudio for any .net language, Jetbrains if they have an IDE for a specific language and for small projects or changes I'll use vim. The main impetus for switching editors/IDEs is when an editor has specific built-in support for a language that your text editor won't (ie support for solution files in .net). This extra functionality becomes much more important when you're less familiar with a language or when you have a large/complex codebase (1M+ LOC)
My procedure for selecting an editor starts by taking an online class and using whatever tool the expert is using. I figure their reasons for using said tool in a given stack is probably more reasonable than anything I can come up with in my comparatively limited experience. That said, it looks like this:
Visual Studio - C#
Notepad ++ - Any text file I need quick access to, cut/paste
Visual Studio Code - Trying it out to replace Notepad++
Android Studio - Native Android Apps
WebStorm - JavaScript and front end projects
IntelliJ IDEA - JAVA
You'd be surprised how opinionated people can get about editors. Just because an expert is using text editor X doesn't mean it's the best editor for you to use.
Is it really worth switching editors between languages?
I do think they it could make things harder/easier. For example if I want to switch from C# (in Visual Studio) to any other editor - it feels like a less familiar experience (and will be less productive at first)
This not only effects writing code, but debugging methods as well.
Do people actually switch between editors for languages? I use Notepad++ for everything and just configure the indent spacing and highlighting per language.
Jetbrains if they have a product for it. Otherwise sublime or nano without a real preference for either
Sublime for everything. With plenty of plugins.
I also use dedicated apps for databases (mostly Robomongo and DataGrip) and version control (Tower).
RAD Studio or Visual Studio on Windows (depending if Delphi or C#) and Visual Studio Code (and sometimes Lazarus when doing Free Pascal) on Linux.
VSCode for everything though I have been noticing bugs in the C# plugin and I am starting to consider trying Rider for that.
I use qtcreator on all platforms for c++
sublime text for others.
vim for ssh remote.
I used emacs for all coding, C, C++, Perl, Ruby, Go, etc.
I use vim for composing email(s).
vim for everything.
i add linters per language, and documentation lookup and autocompletion.
the only time i have a problem is with new projects where a file tree would be useful. there are vim file trees, but i dislike them.
Take a look at NERDTree.
Or https://github.com/tpope/vim-vinegar if you're looking for a non-drawer solution.
See http://vimcasts.org/blog/2013/01/oil-and-vinegar-split-windo...
vim
I keep Atom around, though; IntelliJ products are also nice if you're into IDEs.
Jetbrains ides are amazing.
vi FTW! ;)