I've switched to using -i instead of -v as a default flag. Because: it says exactly why something is being updated, is mostly parseable[1], and I don't have to guess if '^deleting <blah>' was a newly created filename with a space in it or was a deleted file...because with -i, every line has the itemization prefix. [1] - mostly parseable except for the following inconsistency... >f.st...... db/locate.database .d..t...... log/ *deleting log/slip.log *deleting log/ppp.log *deleting log/maillog.0.gz *deleting log/log-all >f+++++++++ log/all.log >f.st...... log/auth.log It would be very cool if all the itemization prefixes had the same field width. That is eleven (11) code characters followed by one (1) space then the file path. The use of '^*deleting' breaks that model, requires extra code to parse and makes the output hard to read as you can see above due to poor column alignment. I would suggest replacing '*deleting' with one of the following: '^..--------- <path>' similar to creating 'all.log' above. '^..deleted-- <path>' same char length as cstpogz. This also allows the first two chars to still indicate update and file type. The update type might always be 'c' or '>'. Thanks!
I have gone ahead and padded the deleting message with spaces to make the names line up. (I had originally thought to leave the message shorter, but I'm changing my mind.) I don't plan to change the format of the message. The rule is that an item that starts with a '*' contains a message, and I like "*delete" as the output.