Navigation - Find All / Replace All - Beta

I like the new advanced features of the new editor, but I think that there should be a toggle to auto-expand all the scripts by default. I usually want to see every individual result at once, and the new editor now requires that you click every single script with a result to do so.

An example of the use case I’m talking about: I often am searching for every time a certain ValueObject is set to see what scripts are in control of it. When doing that, I want to be able to look through every single result line as quickly as possible, so that I can see only the lines that are setting the ValueObject and ignore the ones that are just referencing it. Each result matters much more to me than what script the result is in.

In the old version, it’s easy to skim through the results quickly, such as when I search for “SomeIntValue” here and am only looking for assignments:

1 Path.To.Script(49): if game.ReplicatedStorage.SomeIntValue.Value >= 92 then
2 Path.To.Another.Script(4): game.ReplicatedStorage:WaitForChild("SomeIntValue").Value = 17
3 Yet.Another.Script(192): while game.ReplicatedStorage.SomeIntValue.Value < previousValue do
4 Scripts.Are.All.The.Same(34): game.ReplicatedStorage.SomeIntValue.Value = -1
5 So.Many.Scripts.There.Be(324): local importantInt = game.ReplicatedStorage:WaitForChild("SomeIntValue")

Within ~10 seconds I can see that only scripts #2 and #4 are assignments and ignore the rest. (And ofc #5 as well in case I do a "importantInt.Value =" later on.)

However, with the new Find/Replace window, I have to first open up the fold for each script listed just to see what’s in it, instead of being able to immediately skim through every result. If it’s an instnace referenced in many different scripts, than that speed bump becomes a tedious process of clicking tens of little arrows. For me this is really annoying since this kind of searching is my primary use of Find/Replace All.

Overall, I like the features added in the new window and I like how it visually matches the single script Find/Replace, but it needs some kind of quick toggle to auto-expand all of the results at once so that it isn’t slower to use than the old version.

1 Like

Better, but there are still some UX issues

This is confusing, I want to see the lines of code not just the word I search for
image

When I open the window it should automatically focus on the searchbox so I can instantly start typing instead of having to move my mouse and click the textbox

1 Like

I cant really find this feature in roblox studio how can i activate it?

I have a suggestion, right clicking on the script should have options to delete or view the script in explorer instead of clicking the result, opening it and then clicking on view in explorer in the script tab.

One issue im running into when using this feature is that, when i had to remove some malicious code (which was added by a plugin one of my teammates had) which had tons of what i assume are tabs and then malicious code added to each script, when i tried using the find all/ replace all tool, after typing the thing to search, it would show up the list of times it found a match (which was really large [was a nasty thing to remove, but thats not the important thing here]) and then would basically freeze studio leaving me no option other than having to forceclose it. This was in a tc with drafts enabled.

I assume it was crashing due to the huge amount of characters (tabs) a line where the code was hidden. It made it really annoying to use though, since it would crash 3/5 times.

P.D: Also I think it would be nice to be able to select multiple scripts you want to do the replacement in, since filtering it by name can be a bit slow sometimes.

The new functionality is very helpful and appreciated, thank you for working on the widget. Some remarks (disclosure: I have the “Show CoreGui in explorer” and “Show CorePackages in explorer” settings on):

  • +1 for autofocusing on the search box when the widget is shown. This is by far the most important thing that’s missing from the previous widget, which did this automatically. It makes me able to search for what I am looking for without taking my hands out of my keyboard. This being removed makes it much more clunky to use. Script-level Ctrl-F does this, so why can’t this do it either?
  • Scripts from CorePackages and CoreGui show in the results. While this can be useful in certain occasions, the previous version did not do this and this currently only pollutes the search results. I see there is a filter feature but I don’t know how to use it to limit my results to only the services which I use (ReplicatedStorage, ServerScriptService, StarterPlayerScripts, Players, Workspace and others). It seems it is only able to filter one location at once and is not able to filter by script type either. If there actually is a way to do that, it is very unclear.
  • Searching for a common term such as script in an empty baseplate freezes Studio. A few results are displayed and then Studio freezes. After freezing, Studio’s CPU usage in the task manager drops to near 0, so I cannot tell if it is busy or not. It just looks like it stops working entirely.
1 Like

Hey Everyone,
We’ve been hard at work reading your replies and working on fixes to address them.
We wanted to let you know that the current Studio release has code that causes difficulty with clicking the find search bar and the button to show the replace text input bar. We are aware of this, and it will be fixed next release. In the meantime, we found that aiming for the very bottom of the button to show the replace bar yields the best results, and clicking anywhere outside of the placeholder text for the find search bar works best.
Thanks for your patience and for your help in tracking down issues with the Find All/ Replace All Beta.

4 Likes

I love this, it’ll drastically speed up my workflow.

I have a question about this, is there a way I can write in blocks of code and replace them?

Like instead of

print("GREAT UPDATE")

something like

if updateIsGood then
  print("GREAT UPDATE")
end

And also is there a way to have it so if it recognizes one part of the thing you are looking for, it can delete the whole line?

4 Likes

Pressing Ctrl + Shift + F focuses the search text textbox, however it does not highlight the existing text in that box. This is extremely frustrating because it means that you can’t just immediately start typing your search terms after pressing Ctrl + Shift + F, you have to use Ctrl + Backspace to clear the existing contents first.

This is pretty clearly a bug, given that other Find All widgets in other editors do highlight the text in that scenario.

2 Likes

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.