acheronfail / repgrep

An interactive replacer for ripgrep that makes it easy to find and replace across files on the command line.
Apache License 2.0
257 stars 4 forks source link

Improve performance with large result sets #33

Closed acheronfail closed 3 years ago

acheronfail commented 3 years ago

At the present moment we go through the entire list of Items and render them all, even though comparatively few are actually rendered.

We can improve performance of rendering by simply creating empty list items for those items that won't be visible on the screen.

acheronfail commented 3 years ago

While this did improve performance a little, after inspecting the project with https://github.com/flamegraph-rs/flamegraph the biggest performance hit is the Printable trait. So we'll look there first.