1 TextEditors


1.1 Text editors

I strongly suggest learning to use a command-line modal text editor intended for writing code.
For those of you new to command line text editors, I recommend the following, in order:

Helix (Vim/Vis/Kakoune inspired modal editing, with reversed verb-object order):
Helix is very discoverable, easy to learn, powerful, interactive, multi-cursor.
hx has an object-verb grammar, which is better than the primary verb-object in nvim/vim/vis.
https://helix-editor.com/
This one is probably best for newcomers to start modal editing.

Kakoune (Vim-like modal editing, but with reversed verb-object order, and simplified normal/visual mode):
Kakoune is very discoverable, easy to learn, powerful, interactive, multi-cursor.
kak has an object-verb grammar, which is better than the primary verb-object in nvim/vim/vis.
https://kakoune.org/
If you are comfortable with Linux/Unix, this is an easy place to start.

Vis (Vim-like modal editing, but with multiple cursors, and better structural regular expressions):
Vis is vim-like, with multi-cursor, interactivitiy, and structural regular experissions.
vis can do verb-object and object-verb actions.
https://sr.ht/~martanne/vis/
https://github.com/martanne/vis
I mostly use vis, though sometimes use nvim -d for differences.

NeoVim and Vim are powerful, but less so than Helix, Kakoune, or Vis.
nvim and vim can do verb-object and object-verb actions.
https://neovim.io/
https://www.vim.org/
http://www.viemu.com/a-why-vi-vim.html
https://danielmiessler.com/study/vim/
https://thevaluable.dev/vim-commands-beginner/
https://www.reddit.com/r/WatchPeopleVim
http://vimcasts.org/
https://devhints.io/vim
https://learnxinyminutes.com/docs/vim/
https://openvim.com/
https://www.vim.so/
https://vimmer.io/
https://vimtricks.com/p/category/tips-and-tricks/
https://www.youtube.com/watch?v=GqoJQft5R2E

1.2 Integrated Development Environments

For most editing, dedicated modal text editors are more efficient than a full IDE.
However, there are a number of scenarios where full IDEs with debuggers and data display are better:
Data exploratation
Stubborn bugs
Really big projets
etc.

The boundary between text editor and IDE is not binary.
For example, you may like https://vscodium.com/

In general, language-specific IDEs will be more powerful for specialized purposes.
For example, for python, nothing beats: https://www.spyder-ide.org/
or for C/C++, this one is best: https://www.qt.io/product/development-tools

1.3 Summary

Helix, kakoune, and vis have powerful interactive features.
These can be approximated by nvim/vim macros, and other advanced nvim/vim features.
However, in nvim/vim, such features are vastly less usuable, and less useful than the equivalent interactive actions.
vis is formally more powerful than all three, though not quite as newcomer friendly as hx and kak.
My suggestion for newbies is to start with hx!

Pseudo-IDEs like VSCode are accessible, though my recommendation to use the following instead:
1. Use a real modal command line text editor for the bulk of your editing.
2. When you must, fall back on a special-purpose, language-specific dedicated IDE.