Interesting, I will have a look at it. On Thu, May 21, 2020 at 11:52 AM Thierry Goubier <thierry.goub...@gmail.com> wrote:
> Hi Vitor, > > as a matter of fact, the infrastructure for doing what you're looking > for is already there. > > The algorithm is the following: > > - create a scope (something based on RBBrowserEnvironment, such as > RBClassEnvironment or based on regexes and AND / OR operations: > RBAndEnvironment, RBNotEnvironment, which allows for virtually > anything, such as all #printString methods in the package X that do > not belong to class Y) > > - create a refactoring command: if it is not a pre-existing command > such as rename class, etc..., then writing a pattern matcher is > possible with RBTreeRewriter. > > - execute the refactoring command on the environment, changing only > for the subset of code visible in the environment. > > Normally, the system browser or the search tools should automatically > setup the environment for you, and scope accordingly most of the > refactoring commands. As far as I know, there isn't yet a shell giving > you the full pattern matching rewrite power, but some work was > underway (GUI tools). > > Going with the source files as you did also work... > > Regards, > > Thierry > > Le jeu. 21 mai 2020 à 15:30, Vitor Medina Cruz <vitormc...@gmail.com> a > écrit : > > > > Well, as it seems, there is no way of find/replacing other than inside a > single method. > > > > As a workaround, I did the following: > > > > 1- Committed all my image work in progress; > > 2- Opened the project structure in an external tool (notepad++ in this > case) and did the find/replace there; > > 3- Committed it using git command line; > > 4- Back to the image, I did a repair repository from iceberg checking > out and ignoring changes to the image (safe because I did commit everything > before) > > > > If there are many places to change, it is worth. > > > > Regards, > > Vitor > > > > On Tue, May 19, 2020 at 12:56 PM Vitor Medina Cruz <vitormc...@gmail.com> > wrote: > >> > >> Hello, > >> > >> Is there a way to make find replace in a class scoped way? I can do > that with finder, but I figured only with package scoping. I wanna to > change the name of a variable in multiple methods, and also I would like to > regex replace an expression also in multiple methods. > >> > >> Regards, > >> Vitor > >