-
Notifications
You must be signed in to change notification settings - Fork 197
Replacing in the project uses the captured groups of the first match in all cases #1136
Comments
Moving this over to the find-and-replace package, as this sounds more relevant there 📬 |
This is a really annoying bug, can you please fix this? It worked at some point in time. |
How is it going? Will this be fixed soon? It's quite a showstopper for me. |
+1 - my symptoms are pretty much the same as those shown in the video from @msoutopico. |
I was about to file the same issue. This looks like a duplicate of #625 that has a nice video embedded, but this issue has the better description. Notes:
Simple example
Find: VariantThis is my real-world issue, but with data stripped. I am not able to reproduce it with this simplified version, but if it is of actual interest, I am willing to help bisecting.
Find:
|
Prerequisites
Description
When batch-replacing parts of the text matched by a regular expression which captures some groups, the captured groups of the first instance are used in all occurrences, instead the groups captured in each occurrence. The issue only happens when finding in the project.
Steps to Reproduce
(.+)000(.+)
, where the non-captured part is to be removed.$1$2
so as to replace the whole matched string with the captured groups (thus removing the common non-captured part).Expected behavior:
In every occurrence, the text matched is replaced with the groups captured in that occurrence.
Actual behavior:
In every occurrence, the text matched is replaced with the groups captured in the first occurrence. https://youtu.be/d7I5Y4-jaOs
Reproduces how often:
Every time.
Versions
Atom : 1.51.0
Electron: 5.0.13
Chrome : 73.0.3683.121
Node : 12.0.0
apm 2.5.0
npm 6.14.5
node 10.20.1 x64
atom 1.51.0
python 2.7.16
git 2.11.0
Mac OS X: 10.13.6 (17G14019)
The text was updated successfully, but these errors were encountered: