I have no favorite IDE, every solution I have used is lacking somewhere.
For some time I had access to Intel’s compiler and used it in Visual Studio 2015. The VS Debugger is, simply put, unmatched, it just works, no matter what, full of features. Unfortunately, it is the only positive I can think of. No auto-complete, no IntelliSense, if I recall correctly the only thing that would do is when started calling a subroutine by typing
call name it would list possible intrinsic subroutines. Not to mention, that only works with Intel’$ compiler.
On the other edge, is CodeBlocks. I recently decided to use it for a big project of mine. It has everything I need from a modern IDE e.g. the way Pycharm works with Python or VS19 works with C# and C++, Edit:
but unfortunately, I couldn’t make the debugger work. It makes use of the default gdb but for whatever the reason as soon as I start debugging it starts normally but almost immediately stops by itself. Honestly, If I figure out how to make gdb work, CodeBlocks will be my goto IDE in the foreseeable future. Edit: Installing GNU Fortran (GCC) 10.1.0 seems to have solved the debugger problem and everything works as intended. Personal favorite? Maybe!!
My favorite text editor is SublimeText3, I use it in both Windows and Linux environments. It is lightweight and can handle everything with good Fortran support, syntax highlighting, autocomplete, and hovering the mouse over an intrinsic procedure it shows implementation details with brief info. However, it lacks IntelliSense.
In Windows, I also use Notepad++ just for reading.
VS code… the new hype. I tried it but not impressed. I just couldn’t justify the transition from Sublime to VS code. However I still have it installed, and use it for web-related stuff and markdown, the preview feature that opens automatically in a vertical layout that is live-updated is so neat. With better Fortran packages and better instructions on how to set up things for Fortran, it has the potential to be a full-fetched IDE and probably be the one to replace all other solutions.