I recently encountered an infinite looping problem with zeus when I regexp replace end-of-line ($) with some string "x".
When I do this in zeus 3.97r, I experience an infinite loop where zeus is replacing the end of the first line with "x" repeatedly until I cancel it. And it consumes 100% of one CPU core while it is busy replacing.
To reproduce:
1. Open a new untitled document (I was using an Untitled.py file)
2. Enter 3 lines of text in the file such as:
Code: Select all
a
b
c
4. Press CTRL-R to open the Replace Dialog and enter/click the following:
Find what: $
Replace with: x
[x] Use regular expression
(o) Search down
Click "Replace All" button
5. After a few seconds click the "Cancel" button.
I noticed that the first line of the file has several thousand "x" characters at the end after a couple of seconds, and the 2nd and 3rd line are unchanged. Instead I expected my file to contain 3 lines: ax, bx, and cx. During the replace operation the Status bar flashes & updates frequently with "Replacement Completed with NNNN occurences changed" where NNNN keeps increasing continually.
Thought I would bring it up so you could possibly look into this issue next time you are looking at the code to see if it can be fixed. This is not urgent in other words, as I can always do this in vim or emacs when needed.
I use this approach all the time to paste a list of things into a quickie python or ruby script, and then regex replace the BOL with " and the EOL with ", to make a list of string items for lookup tables & dictionaries/hashes and such.
Thanks for your support! Troy