I'm really struggling to figure out how to find all occurrences of a semicolon not preceded by a backslash. I'm hoping to find a quick vim command to clean up long bash commands that I've opened with fc -e vim. Usually I can just do a regular find semicolon and replace with semicolon then new line to split my commands onto separate lines to make my script more readable. In this case I have a find -exec command in there which ends with \; but is then piped into another command. I want this to all be on one line. I know it would be quick to do by hand but I'm trying to learn vim better. I've tried all kinds of things but from my understanding the following should work:
:%s/\(\\;\)\@<!;/;^M/g
But it catches the \; in my find command as well. I would appreciate one of you pros pointing out what I'm missing here. Thank you.