3 ms·
>It's a different way to interact with text >On the point of manual renaming, Vim is perfectly capable of project based search and replace. I think that is my
by tomjen3 5y ago
>It's a different way to interact with text
>On the point of manual renaming, Vim is perfectly capable of project based search and replace.
I think that is my point, stated better than I could, code is not just text.
I have no issue whatever accepting that Emacs/Vim is much much better at dealing with text - I use Emacs for text in preference to just about everything else.
My preference is IntelliJ, but essentially all the IDEs treat the code as a representation of the abstract syntax tree it is. Put your cursor over an identifier and IntelliJ will highlight all the other instances of that identifier. It will not highlight the same word when used in a comment, because it is not the same.
When you treat code like text, you are limited to search and replace. When you treat it as an AST, your editor can rename your private backing field without renaming your property, because it knows they are two different things. In Java it can push methods up and create a new parent class, all while updating all the code that uses it and give you the confidence that it does so without screwing up your code base.