One task I still end up using an IDE for is project wide find-replace.
The steps are as follows.
- Select a directory to replace in
(this could default to the projects root). - Select the file extensions to match
(this could initialize from other extensions variables, egffip-patterns
,projectile-other-file-alist
). - Test the replacement, to see what it does.
- Show all replacements, giving the option to skip some.
- Execute or cancel the replacements for all files.
This is something I'm used to from an IDE, is there anything that gives similar functionality in Emacs.
Note that I've seen dired
can almost do this, it's not too far from what I'm after, but requires opening and accepting changes in every file, the proceeding steps are a little cumbersome too, although I suppose they could be streamlined.
Reference: https://www.gnu.org/software/emacs/manual/html_node/efaq/Replacing-text-across-multiple-files.html
ivy-occur
onlyivy-occur-mode
, this seems to put the current buffer into a non-code mode, which doesn't seem like what I'm after. – ideasman42 Dec 11 '20 at 03:49